diff --git a/data/magic-m15-emblem-cajun.mse-style/style b/data/magic-m15-emblem-cajun.mse-style/style index 918acb9e74..54afa5b770 100644 --- a/data/magic-m15-emblem-cajun.mse-style/style +++ b/data/magic-m15-emblem-cajun.mse-style/style @@ -6,7 +6,7 @@ installer group: magic/m15 style/emblems icon: card-sample.png position hint: 090 -version: 2024-06-06 +version: 2026-05-13 depends on: package: magic.mse-game version: 2020-04-25 @@ -23,6 +23,48 @@ depends on: card width: 375 card height: 523 card dpi: 150 +############################################################## Convert to magic-m15-emblem +update cards script: + before version: 2026-05-14 + script: + reqs := [["magic-m15-emblem.mse-style", "2026-02-28"]] + #if true then [] else + if not has_required_stylesheets(reqs) + then [] + else ( + styling_data := [ + frame_type: "M15", + compatibility: "yes", + center_text: styling.center_text, + overlay: styling.overlay, + remove_from_autocount: styling.remove_from_autocount, + #text_box_mana_symbols: styling.text_box_mana_symbols, + use_guild_mana_symbols: styling.use_guild_mana_symbols, + tap_symbol: styling.tap_symbol + ] + if styling.popout_image_style != "" then ( + old_popout_numbers := split_text(styling.popout_image_style, match:", ?") + new_popout_numbers := for each n in old_popout_numbers do if n == "" then "" else 2*n + "," + styling_data := styling_data + [popout_art_coordinates:new_popout_numbers] + ) + font_size := to_int(styling.font_size or else 0) + if font_size != 0 then ( + styling_data := styling_data + [ + apply_custom_fonts: "yes", + custom_body_font: ";{2*font_size};" + ] + ) + [ + new_card( + [ + stylesheet: "magic-m15-emblem.mse-style", + styling_data: styling_data + ], + copy_from:card + ) + ] + ) + ##### Flavor Bar image by SirnightNano ############################################################## Extra scripts init script: diff --git a/data/magic-m15-emblem.mse-style/acorntail/card.png b/data/magic-m15-emblem.mse-style/acorntail/card.png new file mode 100644 index 0000000000..5fc3b28bb6 Binary files /dev/null and b/data/magic-m15-emblem.mse-style/acorntail/card.png differ diff --git a/data/magic-m15-emblem.mse-style/acorntail/image_mask.png b/data/magic-m15-emblem.mse-style/acorntail/image_mask.png new file mode 100644 index 0000000000..61f341d409 Binary files /dev/null and b/data/magic-m15-emblem.mse-style/acorntail/image_mask.png differ diff --git a/data/magic-m15-emblem.mse-style/artist_arrow.png b/data/magic-m15-emblem.mse-style/artist_arrow.png deleted file mode 100644 index 5d30c72a79..0000000000 Binary files a/data/magic-m15-emblem.mse-style/artist_arrow.png and /dev/null differ diff --git a/data/magic-m15-emblem.mse-style/build.bat b/data/magic-m15-emblem.mse-style/build.bat deleted file mode 100644 index 48262f96db..0000000000 --- a/data/magic-m15-emblem.mse-style/build.bat +++ /dev/null @@ -1,7 +0,0 @@ -cd .. - -cd .. - -mse --create-installer magic-m15-emblem.mse-style magic-blends.mse-include magic-mana-small.mse-symbol-font magic-future-common.mse-include magic-embossedletters.mse-symbol-font - -ren "magic-m15-emblem.mse-installer" "Magic - M15 Emblem.mse-installer" \ No newline at end of file diff --git a/data/magic-m15-emblem.mse-style/card-sample.png b/data/magic-m15-emblem.mse-style/card-sample.png deleted file mode 100644 index 7e1d05c690..0000000000 Binary files a/data/magic-m15-emblem.mse-style/card-sample.png and /dev/null differ diff --git a/data/magic-m15-emblem.mse-style/card_sample.png b/data/magic-m15-emblem.mse-style/card_sample.png new file mode 100644 index 0000000000..33be3a8927 Binary files /dev/null and b/data/magic-m15-emblem.mse-style/card_sample.png differ diff --git a/data/magic-m15-emblem.mse-style/frame.png b/data/magic-m15-emblem.mse-style/frame.png deleted file mode 100644 index e20023e5b7..0000000000 Binary files a/data/magic-m15-emblem.mse-style/frame.png and /dev/null differ diff --git a/data/magic-m15-emblem.mse-style/frame_mask.png b/data/magic-m15-emblem.mse-style/frame_mask.png deleted file mode 100644 index 9c2ad58942..0000000000 Binary files a/data/magic-m15-emblem.mse-style/frame_mask.png and /dev/null differ diff --git a/data/magic-m15-emblem.mse-style/image_mask.png b/data/magic-m15-emblem.mse-style/image_mask.png deleted file mode 100644 index a283e2b384..0000000000 Binary files a/data/magic-m15-emblem.mse-style/image_mask.png and /dev/null differ diff --git a/data/magic-m15-emblem.mse-style/m15/card.png b/data/magic-m15-emblem.mse-style/m15/card.png new file mode 100644 index 0000000000..cd3b5f1196 Binary files /dev/null and b/data/magic-m15-emblem.mse-style/m15/card.png differ diff --git a/data/magic-m15-emblem.mse-style/m15/image_mask.png b/data/magic-m15-emblem.mse-style/m15/image_mask.png new file mode 100644 index 0000000000..cbca0f74e5 Binary files /dev/null and b/data/magic-m15-emblem.mse-style/m15/image_mask.png differ diff --git a/data/magic-m15-emblem.mse-style/m20/card.png b/data/magic-m15-emblem.mse-style/m20/card.png new file mode 100644 index 0000000000..287436d44d Binary files /dev/null and b/data/magic-m15-emblem.mse-style/m20/card.png differ diff --git a/data/magic-m15-emblem.mse-style/m20/image_mask.png b/data/magic-m15-emblem.mse-style/m20/image_mask.png new file mode 100644 index 0000000000..cb03135cf6 Binary files /dev/null and b/data/magic-m15-emblem.mse-style/m20/image_mask.png differ diff --git a/data/magic-m15-emblem.mse-style/pt.png b/data/magic-m15-emblem.mse-style/pt.png new file mode 100644 index 0000000000..d8c62a1af2 Binary files /dev/null and b/data/magic-m15-emblem.mse-style/pt.png differ diff --git a/data/magic-m15-emblem.mse-style/style b/data/magic-m15-emblem.mse-style/style index b9ccc4c7f8..f662ba7a07 100644 --- a/data/magic-m15-emblem.mse-style/style +++ b/data/magic-m15-emblem.mse-style/style @@ -1,246 +1,359 @@ -mse version: 2.0.0 -game: magic -short name: Emblems -full name: M15 style -installer group: magic/m15 style/emblems -icon: card-sample.png -position hint: 090 - -version: 2024-06-06 +mse version: 2.6.0 +game: magic +short name: M15 Emblem +full name: also M20, Acorntail +icon: card_sample.png +position hint: 000071 +installer group: magic/M15 Frames/Standard/M15 Emblem + + +version: 2026-02-28 depends on: - package: magic.mse-game - version: 2014-06-25 + package: magic.mse-game + version: 2014-06-25 depends on: - package: magic-future-common.mse-include - version: 2007-09-23 + package: magic-mana-large.mse-symbol-font + version: 2007-09-23 depends on: - package: magic-mana-small.mse-symbol-font - version: 2007-09-23 + package: magic-mana-small.mse-symbol-font + version: 2007-09-23 depends on: - package: magic-modules.mse-include - version: 2024-10-01 + package: magic-modules.mse-include + version: 2024-10-01 +depends on: + package: magic-mainframe-extras.mse-include + version: 2007-09-23 + +card width: 744 +card height: 1039 +card dpi: 297.6 + +### blanks by Acorntail and GenevensiS +### code by GenevensiS -card width: 375 -card height: 523 -card dpi: 150 -# By Acorntail ############################################################## Extra scripts + init script: - # Use the normal tap symbol - mana_t := { - if styling.tap_symbol == "old" then "old" - else if styling.tap_symbol == "diagonal T" then "older" - else "new" + card_shape := { "emblem" } + + swap_fonts_pt_default := + [ + name: {"Beleren Bold"}, + size: {30.0}, + color: {"black"}, + vertical: {0}, + italic: {"Beleren Bold"} + ] + + swap_fonts_body_default := + [ + name: {"MPlantin"}, + size: {28.0}, + color: {"black"}, + vertical: {0}, + italic: {"MPlantin-Italic"} + ] + + typeline_offset_top_1 := + { + if styling.frame_type == "m20" then 121 + else if styling.frame_type == "m15" then 129 + else 128 } + typeline_offset_left_1 := { 5 } + typeline_offset_width_1 := { -4 } + rarity_offset_top_1 := + { + if styling.frame_type == "m20" then 1 + else if styling.frame_type == "m15" then 1 + else 1 + } + swap_fonts_type_default := + [ + name: {"Beleren Bold"}, + size: {26.0}, + color: {"black"}, + vertical: {0}, + italic: {""} + ] - # Use guild mana symbols? - guild_mana := { styling.use_guild_mana_symbols } + swap_fonts_name_default := + [ + name: { "Beleren Small Caps Bold" }, + size: {30.0}, + color: {"white"}, + vertical: {0}, + italic: {""} + ] - card_shape := { "emblem" } + invert_watermark_1 := { false } + + information_offset_top_1 := + { + if styling.frame_type == "acorntail" then 6 + else if styling.frame_type == "m20" then 1 + else 0 + } + + is_promo := { styling.promo } + + is_unsorted := { styling.remove_from_autocount } + + chop_top := { split := split_comma(styling.chop_text_box); if length(split) > 0 and split.0 != "" then clamp(split.0, maximum: 1500, minimum: -1500) else 0 } + chop_bot := { split := split_comma(styling.chop_text_box); if length(split) > 1 and split.1 != "" then clamp(split.1, maximum: 1500, minimum: -1500) else 0 } + + popout_left := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.0 != "" then clamp(split.0, maximum: 1500, minimum: -500) else 0 } + popout_top := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.1 != "" then clamp(split.1, maximum: 2000, minimum: -500) else 0 } + popout_width := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.2 != "" then clamp(split.2, maximum: 1500, minimum: 0) else 0 } + popout_height := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.3 != "" then clamp(split.3, maximum: 2000, minimum: 0) else 0 } + + art_left := + { + if styling.stretch_art_to_whole_card then 0 + else if styling.compatibility then 0 + else 104 + } + art_top := + { + if styling.stretch_art_to_whole_card then 0 + else if styling.frame_type == "m20" then 50 + else if styling.compatibility then 120 + else if styling.frame_type == "m15" then 121 + else 116 + } + art_width := + { + if styling.stretch_art_to_whole_card then stylesheet.card_width + else if styling.compatibility then stylesheet.card_width + else 541 + } + art_bottom := + { + if styling.stretch_art_to_whole_card then stylesheet.card_height + else if styling.frame_type == "m20" then 945 + else if styling.compatibility then 1046 + else 956 + } + art_mask := { crop(styling.frame_type + "/image_mask.png", offset_x: art_left(), offset_y: art_top(), width: art_width(), height: art_bottom() - art_top()) } + + +############################################################## Extra style options -############################################################## Set info fields -set info style: - symbol: - variation: - name: invertedcommon - border radius: 0.10 - fill type: solid - fill color: rgb(255,255,255) - border color: rgb(0,0,0) -############################################################## Extra style -styling field: - type: boolean - name: use guild mana symbols - description: Use the Ravnica guild symbols instead of the official half/half circles for hybrid mana. - initial: no styling field: - type: package choice - name: text box mana symbols - match: magic-mana-*.mse-symbol-font - initial: magic-mana-small.mse-symbol-font + type: choice + name: frame type + description: Which version of the frame should be used? + choice: m20 + choice: m15 + choice: acorntail styling field: - type: choice - name: tap symbol - description: What tap and untap symbols should be used on cards? - initial: modern - choice: modern - choice: old - choice: diagonal T + type: text + name: popout art coordinates + description: The coordinates for the popout image field, formatted as "left,top,width,height". Used to make the illustration jump in front of the frame. styling field: - type: choice - name: center text - description: When to center text (short text only means only on one-line cards with no flavor text) - choice: always - choice: short text only - choice: never - initial: short text only + type: boolean + name: stretch art to whole card + description: Make the image span the whole card instead of just the visible part. Use this to help make popout effects. + initial: no + +include file: /magic-modules.mse-include/texts/styling_fields + +include file: /magic-modules.mse-include/rarities/styling_fields + +include file: /magic-modules.mse-include/watermarks/styling_fields + styling field: - type: boolean - name: inverted common symbol - description: Should the common rarity symbol be inverted, like in Coldsnap? - initial: no + type: package choice + name: overlay + description: Should there be an overlay applied, such as foil? + match: magic-overlay-*.mse-include + required: false + +include file: /magic-modules.mse-include/information/styling_fields + +include file: /magic-modules.mse-include/symbol-fonts/styling_fields + +include file: /magic-modules.mse-include/fonts/styling_fields + styling field: - type: package choice - name: overlay - description: Should there be an overlay applied, such as foil? - match: magic-overlay-*.mse-include - required: false -styling style: - use guild mana symbols: - choice images: - yes: /magic-mana-small.mse-symbol-font/mana_guild_rg.png - no: /magic-mana-small.mse-symbol-font/mana_rg.png - tap symbol: - render style: both - choice images: - modern: /magic-mana-small.mse-symbol-font/mana_t.png - old: /magic-mana-small.mse-symbol-font/mana_t_old.png - diagonal T: /magic-mana-small.mse-symbol-font/mana_t_older.png - center text: - render style: both - choice images: - always: /magic.mse-game/icons/center-all-text.png - short text only: /magic.mse-game/icons/center-short-text.png - never: /magic.mse-game/icons/center-no-text.png - inverted common symbol: - choice images: - no: { symbol_variation(symbol: set.symbol, variation: "common") } - yes: { symbol_variation(symbol: set.symbol, variation: "invertedcommon") } + type: boolean + name: compatibility + default: "no" ############################################################## Card fields + include file: /magic-modules.mse-include/corners/card_fields + +include file: /magic-modules.mse-include/watermarks/card_fields + +include file: /magic-modules.mse-include/separators/card_fields + +include file: /magic-modules.mse-include/typelines/card_fields + include file: /magic-modules.mse-include/information/card_fields + card style: - ###################C######### Name line + ############################# Nameline name: - left: 30 - top: 26 - width: 315 - height: 28 - alignment: bottom center shrink-overflow - padding bottom: -2 - padding top: 2 - z index: 3 + left: + script: + if styling.frame_type == "m20" then 59 + else if styling.frame_type == "m15" then 59 + else 62 + right: + script: + if styling.frame_type == "m20" then 685 - card_style.casting_cost.content_width + else if styling.frame_type == "m15" then 685 - card_style.casting_cost.content_width + else 682 - card_style.casting_cost.content_width + top: 56 + height: 49 + alignment: { if card.casting_cost == "" then "middle center shrink-overflow" else "middle left shrink-overflow" } + font: + name: { name_font() } + italic name: { name_font_italic() } + size: { name_font_size() } + color: { name_font_color() } + z index: 900 + casting cost: + right: + script: + if styling.frame_type == "m20" then 685 + else if styling.frame_type == "m15" then 685 + else 682 + top: 56 + width: { max(card_style.casting_cost.content_width, 30) } + height: 49 + alignment: middle right shrink-overflow + always symbol: true font: - name: Beleren Small Caps Bold - size: 19 - color: rgb(228,236,239) - always symbol: true + name: { casting_cost_font() } + italic name: { casting_cost_font_italic() } + size: { casting_cost_font_size() } + color: { casting_cost_font_color() } + symbol font: + name: { styling.casting_cost_mana_symbols or else "magic-mana-large" } + size: { casting_cost_font_size() } + z index: 920 ############################# Image image: - left: 0 - top: 10 - height: 523 - width: 376 - mask: image_mask.png - z index: 1 - ################H############ Card type - type: - left: 32 - top: - 359 - width: { 308 - max(22,card_style.rarity.content_width) } - height: 20 - alignment: top shrink-overflow - z index: 4 - padding top: 2 - padding bottom: 4 - padding right: 2 - font: - name: Beleren Bold - size: 14 - color: black - separator color: red - rarity: - right: 343 - top: 361 - width: 44 - height: 22 - z index: 4 - alignment: middle right - render style: image - include file: /magic-modules.mse-include/rarities/choice_images + left: { art_left() } + top: { art_top() } + width: { art_width() } + bottom: { art_bottom() } + z index: 100 + mask: { art_mask() } + mainframe image: + left: { popout_left() } + top: { popout_top() } + width: { popout_width() } + height: { popout_height() } + z index: 1010 ############################# Text box text: - left: 31 - top: 390 - width: 311 - height: 80 + left: + script: + if styling.frame_type == "m20" then 65 + else if styling.frame_type == "m15" then 64 + else 65 + top: + script: + if styling.frame_type == "m20" then 781 + else if styling.frame_type == "m15" then 790 + else 788 + right: + script: + if styling.frame_type == "m20" then 678 + else if styling.frame_type == "m15" then 679 + else 678 + bottom: + script: + if styling.frame_type == "m20" then 954 + else if styling.frame_type == "m15" then 953 + else 957 + z index: 900 + line height hard: 1.2 + line height line: 1.5 + line height soft: 0.9 + line height hard max: 1.3 + line height line max: 1.6 + alignment: + script: + if (styling.center_text == "short text only" and + not contains(match:"\n", card.rule_text) and + card.flavor_text == "" and + card_style.text.content_lines <= 2) or + styling.center_text == "always" + then "middle center" + else "middle left" font: - name: MPlantin - italic name: MPlantin-Italic - size: 14 - scale down to: 10 - color: black + name: { body_font() } + italic name: { body_font_italic() } + size: { body_font_size() } + scale down to: 7 + color: { body_font_color() } symbol font: - name: { styling.text_box_mana_symbols } - size: 14 - alignment: middle center shrink-overflow - z index: 4 - padding left: 6 - padding top: 2 - padding right: 4 - padding bottom: 2 - line height hard: 1.2 - line height line: 1.5 - line height soft: 0.9 + name: { styling.text_box_mana_symbols } + size: { body_font_size() } + scale down to: 7 + ############################# PT + pt: + left: 590 + top: { 933 + pt_font_vertical() } + width: 101 + height: 45 + z index: 900 + alignment: center middle shrink-overflow + font: + name: { pt_font() } + size: { pt_font_size() } + color: { pt_font_color() } + separator color: red ############################################################## Extra card fields + extra card field: - type: choice - name: foil layer - choice: foil - save value: false - editable: false -extra card field: - type: choice - name: frame - choice: frame - editable: false - save value: false + type: choice + name: frame + editable: false + save value: false + show statistics: false + choice: frame extra card field: - type: choice - name: frame 2 - choice: frame - editable: false - save value: false + type: choice + name: ptbox + editable: false + save value: false + show statistics: false + choice: ptbox extra card field: - type: choice - name: textbox - choice: textbox - editable: false - save value: false + type: choice + name: foil layer + editable: false + save value: false + show statistics: false + choice: foil layer extra card style: - foil layer: - left: 0 - top : 0 - width: 375 - height: 523 - z index: 1050 - render style: image - image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"} frame: - left: 0 - top: 0 - width: 375 - height: 523 - z index: 0 - render style: image - popup style: in place - image: frame.png - frame 2: - left: 0 - top: 0 - width: 375 - height: 523 - z index: 2 - render style: image - popup style: in place - image: frame.png - mask: frame_mask.png - textbox: - left: 0 - top: 0 - width: 375 - height: 523 - z index: 3 - render style: image - image: textbox.png + left: 0 + top: 0 + width: { stylesheet.card_width } + height: { stylesheet.card_height } + z index: 200 + render style: image + image: { styling.frame_type + "/card.png" } + ptbox: + left: 570 + top: 924 + width: 134 + height: 72 + z index: 800 + visible: { card.pt != "" } + render style: image + image: pt.png + foil layer: + left: 0 + top: 0 + width: { stylesheet.card_width } + height: { stylesheet.card_height } + z index: 1050 + visible: { styling.overlay != "none" and styling.overlay != "" } + render style: image + image: { if styling.overlay == "" then "" else styling.overlay + "/overlay.png" } diff --git a/data/magic-m15-emblem.mse-style/textbox.png b/data/magic-m15-emblem.mse-style/textbox.png deleted file mode 100644 index b71187cefe..0000000000 Binary files a/data/magic-m15-emblem.mse-style/textbox.png and /dev/null differ diff --git a/data/magic-monarch-emblem.mse-style/card-sample.png b/data/magic-monarch-emblem.mse-style/card_sample.png similarity index 100% rename from data/magic-monarch-emblem.mse-style/card-sample.png rename to data/magic-monarch-emblem.mse-style/card_sample.png diff --git a/data/magic-monarch-emblem.mse-style/style b/data/magic-monarch-emblem.mse-style/style index 8afc80731b..7eddeca2ad 100644 --- a/data/magic-monarch-emblem.mse-style/style +++ b/data/magic-monarch-emblem.mse-style/style @@ -1,10 +1,10 @@ -mse version: 2.0.0 -game: magic -short name: Monarch Emblem -full name: Monarch Planeswalker Emblem -icon: card-sample.png -installer group: magic/m15 style/Emblems -position hint: 090 +mse version: 2.6.0 +game: magic +short name: Monarch Reminder +icon: card_sample.png +position hint: 800211 +installer group: magic/Paraphernalia/Monarch Reminder + version: 2024-05-30 depends on: diff --git a/data/magic-new-emblem.mse-style/build.bat b/data/magic-new-emblem.mse-style/build.bat deleted file mode 100644 index 03c7270b24..0000000000 --- a/data/magic-new-emblem.mse-style/build.bat +++ /dev/null @@ -1,7 +0,0 @@ -cd .. - -cd .. - -mse --create-installer magic-new-emblem.mse-style magic.mse-game magic-blends.mse-include magic-mana-small.mse-symbol-font magic-future-common.mse-include magic-embossedletters.mse-symbol-font - -ren "magic-new-emblem.mse-installer" "Magic - Emblems.mse-installer" \ No newline at end of file diff --git a/data/magic-new-emblem.mse-style/card-sample.png b/data/magic-new-emblem.mse-style/card-sample.png deleted file mode 100644 index 3e7290fba4..0000000000 Binary files a/data/magic-new-emblem.mse-style/card-sample.png and /dev/null differ diff --git a/data/magic-new-emblem.mse-style/card.png b/data/magic-new-emblem.mse-style/card.png new file mode 100644 index 0000000000..2625232b23 Binary files /dev/null and b/data/magic-new-emblem.mse-style/card.png differ diff --git a/data/magic-new-emblem.mse-style/card_sample.png b/data/magic-new-emblem.mse-style/card_sample.png new file mode 100644 index 0000000000..06fdc250a1 Binary files /dev/null and b/data/magic-new-emblem.mse-style/card_sample.png differ diff --git a/data/magic-new-emblem.mse-style/frame.png b/data/magic-new-emblem.mse-style/frame.png deleted file mode 100644 index e9748be259..0000000000 Binary files a/data/magic-new-emblem.mse-style/frame.png and /dev/null differ diff --git a/data/magic-new-emblem.mse-style/frame_mask.png b/data/magic-new-emblem.mse-style/frame_mask.png deleted file mode 100644 index 7004a9907c..0000000000 Binary files a/data/magic-new-emblem.mse-style/frame_mask.png and /dev/null differ diff --git a/data/magic-new-emblem.mse-style/image_mask.png b/data/magic-new-emblem.mse-style/image_mask.png new file mode 100644 index 0000000000..e0eb24cc61 Binary files /dev/null and b/data/magic-new-emblem.mse-style/image_mask.png differ diff --git a/data/magic-new-emblem.mse-style/name-mid.png b/data/magic-new-emblem.mse-style/namebox.png similarity index 100% rename from data/magic-new-emblem.mse-style/name-mid.png rename to data/magic-new-emblem.mse-style/namebox.png diff --git a/data/magic-new-emblem.mse-style/name-left.png b/data/magic-new-emblem.mse-style/namebox_left.png similarity index 100% rename from data/magic-new-emblem.mse-style/name-left.png rename to data/magic-new-emblem.mse-style/namebox_left.png diff --git a/data/magic-new-emblem.mse-style/name-right.png b/data/magic-new-emblem.mse-style/namebox_right.png similarity index 100% rename from data/magic-new-emblem.mse-style/name-right.png rename to data/magic-new-emblem.mse-style/namebox_right.png diff --git a/data/magic-new-emblem.mse-style/pt.png b/data/magic-new-emblem.mse-style/pt.png new file mode 100644 index 0000000000..d8c62a1af2 Binary files /dev/null and b/data/magic-new-emblem.mse-style/pt.png differ diff --git a/data/magic-new-emblem.mse-style/style b/data/magic-new-emblem.mse-style/style index 2eeac613d6..2ea4361a49 100644 --- a/data/magic-new-emblem.mse-style/style +++ b/data/magic-new-emblem.mse-style/style @@ -1,358 +1,418 @@ -mse version: 2.0.0 -game: magic -short name: Emblems -full name: Modern style -installer group: magic/new style/emblems -icon: card-sample.png -position hint: 290 +mse version: 2.5.8 +game: magic +short name: Emblem +full name: Modern +installer group: magic/Emblems +icon: card_sample.png +position hint: 1000 -version: 2024-05-29 +version: 2026-02-28 depends on: - package: magic.mse-game - version: 2008-06-02 + package: magic.mse-game + version: 2014-06-25 depends on: - package: magic-future-common.mse-include - version: 2007-09-23 + package: magic-mana-large.mse-symbol-font + version: 2007-09-23 depends on: - package: magic-mana-small.mse-symbol-font - version: 2007-09-23 + package: magic-mana-small.mse-symbol-font + version: 2007-09-23 depends on: - package: magic-embossedletters.mse-symbol-font - version: 2007-09-23 + package: magic-modules.mse-include + version: 2024-10-01 depends on: - package: magic-modules.mse-include - version: 2024-10-01 + package: magic-mainframe-extras.mse-include + version: 2007-09-23 + +card width: 744 +card height: 1039 +card dpi: 297.6 + +### blanks by Pichoro and GenevensiS +### code by GenevensiS -card width: 375 -card height: 523 -card dpi: 150 -# By Pichoro ############################################################## Extra scripts + init script: - # Use the normal tap symbol - mana_t := { - if styling.tap_symbol == "old" then "old" - else if styling.tap_symbol == "diagonal T" then "older" - else "new" - } + card_shape := { "emblem" } - # Use guild mana symbols? - guild_mana := { styling.use_guild_mana_symbols } + swap_fonts_pt_default := + [ + name: {"Beleren Bold"}, + size: {30.0}, + color: {"black"}, + vertical: {0}, + italic: {"Beleren Bold"} + ] - # AE replacement shouldn't happen in the title, or else MSE compresses the symbol - name_filter := { input } + swap_fonts_body_default := + [ + name: {"MPlantin"}, + size: {28.0}, + color: {"black"}, + vertical: {0}, + italic: {"MPlantin-Italic"} + ] - title_width := { max(card_style.super_type.content_width, card_style.name.content_width) } + swap_fonts_type_default := + [ + name: {"Beleren Bold"}, + size: {42.0}, + color: {"black"}, + vertical: {0}, + italic: {""} + ] - card_shape := { "emblem" } + swap_fonts_name_default := + [ + name: { "Beleren Small Caps Bold" }, + size: {32.0}, + color: {"white"}, + vertical: {0}, + italic: {""} + ] + + invert_watermark_1 := { false } + + illustrator_brush_default := { "art old" } + + is_promo := { styling.promo } + + is_unsorted := { styling.remove_from_autocount } + + chop_top := { split := split_comma(styling.chop_text_box); if length(split) > 0 and split.0 != "" then clamp(split.0, maximum: 1500, minimum: -1500) else 0 } + chop_bot := { split := split_comma(styling.chop_text_box); if length(split) > 1 and split.1 != "" then clamp(split.1, maximum: 1500, minimum: -1500) else 0 } + + popout_left := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.0 != "" then clamp(split.0, maximum: 1500, minimum: -500) else 0 } + popout_top := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.1 != "" then clamp(split.1, maximum: 2000, minimum: -500) else 0 } + popout_width := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.2 != "" then clamp(split.2, maximum: 1500, minimum: 0) else 0 } + popout_height := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.3 != "" then clamp(split.3, maximum: 2000, minimum: 0) else 0 } + + art_left := + { + if styling.stretch_art_to_whole_card then 0 + else 111 + } + art_top := + { + if styling.stretch_art_to_whole_card then 0 + else 124 + } + art_width := + { + if styling.stretch_art_to_whole_card then stylesheet.card_width + else 522 + } + art_bottom := + { + if styling.stretch_art_to_whole_card then stylesheet.card_height + else 947 + } + art_mask := { crop("image_mask.png", offset_x: art_left(), offset_y: art_top(), width: art_width(), height: art_bottom() - art_top()) } + + title_width := + { + base := to_int(max(0,min(628,max(card_style.type.content_width, card_style.name.content_width))) - 14) + base + (base mod 2) + } + +############################################################## Extra style options -############################################################## Set info fields -set info style: - symbol: - variation: - name: invertedcommon - border radius: 0.10 - fill type: solid - fill color: rgb(255,255,255) - border color: rgb(0,0,0) -############################################################## Extra style -styling field: - type: text - name: height - description: How tall should the image field be? Default is 100. -styling field: - type: text - name: width - description: How wide should the image field be? Default is 100. styling field: - type: boolean - name: use guild mana symbols - description: Use the Ravnica guild symbols instead of the official half/half circles for hybrid mana. - initial: no + type: text + name: popout art coordinates + description: The coordinates for the popout image field, formatted as "left,top,width,height". Used to make the illustration jump in front of the frame. styling field: - type: package choice - name: text box mana symbols - match: magic-mana-*.mse-symbol-font - initial: magic-mana-small.mse-symbol-font + type: boolean + name: stretch art to whole card + description: Make the image span the whole card instead of just the visible part. Use this to help make popout effects. + initial: no + +include file: /magic-modules.mse-include/texts/styling_fields + +include file: /magic-modules.mse-include/rarities/styling_fields + +include file: /magic-modules.mse-include/watermarks/styling_fields + styling field: - type: choice - name: tap symbol - description: What tap and untap symbols should be used on cards? - initial: modern - choice: modern - choice: old - choice: diagonal T + type: package choice + name: overlay + description: Should there be an overlay applied, such as foil? + match: magic-overlay-*.mse-include + required: false styling field: - type: choice - name: center text - description: When to center text (short text only means only on one-line cards with no flavor text) - choice: always - choice: short text only - choice: never - initial: short text only + type: boolean + name: remove from autocount + description: Removes the automatic card number for specific cards, to allow for overcounted cards like in Planeswalker Decks. + initial: no styling field: - type: boolean - name: inverted common symbol - description: Should the common rarity symbol be inverted, like in Coldsnap? - initial: no + type: boolean + name: promo + description: Is this card a promo card, with the "P" rarity? + initial: no styling field: - type: package choice - name: overlay - description: Should there be an overlay applied, such as foil? - match: magic-overlay-*.mse-include - required: false -styling style: - use guild mana symbols: - choice images: - yes: /magic-mana-small.mse-symbol-font/mana_guild_rg.png - no: /magic-mana-small.mse-symbol-font/mana_rg.png - tap symbol: - render style: both - choice images: - modern: /magic-mana-small.mse-symbol-font/mana_t.png - old: /magic-mana-small.mse-symbol-font/mana_t_old.png - diagonal T: /magic-mana-small.mse-symbol-font/mana_t_older.png - center text: - render style: both - choice images: - always: /magic.mse-game/icons/center-all-text.png - short text only: /magic.mse-game/icons/center-short-text.png - never: /magic.mse-game/icons/center-no-text.png - inverted common symbol: - choice images: - no: { symbol_variation(symbol: set.symbol, variation: "common") } - yes: { symbol_variation(symbol: set.symbol, variation: "invertedcommon") } + type: color + name: copyright text color + description: Color of the copyright, illustrator, card number, and set code text. + choice: black + choice: white + +include file: /magic-modules.mse-include/symbol-fonts/styling_fields + +include file: /magic-modules.mse-include/fonts/styling_fields + ############################################################## Card fields + +include file: /magic-modules.mse-include/corners/card_fields + +include file: /magic-modules.mse-include/watermarks/card_fields + +include file: /magic-modules.mse-include/separators/card_fields + card style: - ############################# Background stuff - border color: - left: 0 - top : 0 - width: 375 - height: 523 - left width: 17 - right width: 17 - top width: 17 - bottom width: 18 - z index: 6 - ###################C######### Name line - super type: - left: {max(50, 183.5 - 10*length(remove_tags(card.super_type)))} - top: 25 - width: {min(275, 6+20*length(remove_tags(card.super_type)))} - height: 28 - alignment: bottom center - padding bottom: -2 - padding top: 2 - z index: 4 - symbol font: - name: magic-embossedletters - size: 22 - alignment: bottom center - always symbol: true + ############################# Nameline name: - left: {max(50, 183.5 - 10*length(card.name))} - top: 46 - width: {min(275, 6+20*length(card.name))} - height: 20 - alignment: bottom center - padding bottom: -2 - padding top: 2 - z index: 4 + left: 55 + top: 104 + right: 689 + height: 50 + alignment: top center shrink-overflow + font: + name: { name_font() } + italic name: { name_font_italic() } + size: { name_font_size() } + color: { name_font_color() } symbol font: - name: magic-embossedletters - size: 15 - alignment: bottom center + name: magic-embossedletters + size: { name_font_size() } always symbol: true + z index: 900 ############################# Image image: - left: { if styling.width == "" then 57.5 else 187.5 - styling.width / 2 } - top: { if styling.width == "" then 125 else 475 - styling.height } - height: { if styling.height == "" then 350 else styling.height } - width: { if styling.width == "" then 260 else styling.width } - z index: 1 - ################H############ Card type + left: { art_left() } + top: { art_top() } + width: { art_width() } + bottom: { art_bottom() } + z index: 100 + mask: { art_mask() } + mainframe image: + left: { popout_left() } + top: { popout_top() } + width: { popout_width() } + height: { popout_height() } + z index: 1010 + ############################# Typeline + super type: + left: 55 + top: 56 + right: 689 + height: 53 + z index: 900 + alignment: bottom center shrink-overflow + font: + name: { type_font() } + italic name: { type_font_italic() } + size: { type_font_size() } + color: { type_font_color() } + separator color: red + symbol font: + name: magic-embossedletters + size: { type_font_size() } + always symbol: true rarity: - right: 342 - top: 477 - width: 44 - height: 22 - z index: 4 - alignment: middle right - render style: image - include file: /magic-modules.mse-include/rarities/choice_images + right: { if card.pt == "" then 690 else 557 } + top: 949 + width: { rarity_width_1() + typeline_offset_height_1() } + height: { rarity_height_1() + typeline_offset_height_1() } + z index: 950 + alignment: middle right + render style: image + include file: /magic-modules.mse-include/rarities/choice_images ############################# Text box text: - left: 31 - top: 388 - width: 311 - height: 80 + left: 67 + top: 766 + right: 677 + bottom: 923 + z index: 900 + line height hard: 1.2 + line height line: 1.5 + line height soft: 0.9 + line height hard max: 1.3 + line height line max: 1.6 + alignment: + script: + if (styling.center_text == "short text only" and + not contains(match:"\n", card.rule_text) and + card.flavor_text == "" and + card_style.text.content_lines <= 2) or + styling.center_text == "always" + then "middle center" + else "middle left" font: - name: MPlantin - italic name: MPlantin-Italic - size: 14 - scale down to: 10 - color: black + name: { body_font() } + italic name: { body_font_italic() } + size: { body_font_size() } + scale down to: 7 + color: { body_font_color() } symbol font: - name: { styling.text_box_mana_symbols } - size: 14 - alignment: middle center shrink-overflow - z index: 4 - padding left: 6 - padding top: 2 - padding right: 4 - padding bottom: 2 - line height hard: 1.2 - line height line: 1.5 - line height soft: 0.9 - ############################# Copyright stuff + name: { styling.text_box_mana_symbols } + size: { body_font_size() } + scale down to: 7 + ############################# PT + pt: + left: 590 + top: { 933 + pt_font_vertical() } + width: 101 + height: 45 + z index: 900 + alignment: center middle shrink-overflow + font: + name: { pt_font() } + size: { pt_font_size() } + color: { pt_font_color() } + separator color: red + ############################# Information illustrator: - left: 58 - top : 479 - width: 215 - height: 16 - z index: 3 + left: { 58 + (if card.illustrator_brush == "art old" then 31 else if contains(card.illustrator_brush, match: "wide") then 17 else 14) * 744/375 } + top: 954 + width: 400 + height: 25 + z index: 900 font: - name: Matrix - size: 11 - weight: bold - color: black - copyright line: - left: 30 - top : 493 - width: 247 - height: 12 - z index: 3 + name: Matrix + size: 20 + weight: bold + color: { styling.copyright_text_color } + illustrator brush: + left: 60 + top: 961 + width: { (if card.illustrator_brush == "art old" then 30 else if contains(card.illustrator_brush, match: "wide") then 15 else 12) * 744/375 } + height: { 7 * 1039/523 } + popup style: in place + include dark file: /magic.mse-game/information/menu_choice_images + render style: image + image: { illustrator_brush_image(field: 1) } + z index: 900 + copyright: + left: 60 + top: 979 + width: 420 + height: 25 + z index: 900 font: - name: MPlantin - size: 6.5 - color: black + name: MPlantin + size: 14 + color: { styling.copyright_text_color } ############################################################## Extra card fields + extra card field: - type: choice - name: foil layer - choice: foil - save value: false - editable: false -extra card field: - type: choice - name: frame - choice: frame - editable: false - save value: false + type: choice + name: frame + editable: false + save value: false + show statistics: false + choice: frame extra card field: - type: choice - name: frame 2 - choice: frame - editable: false - save value: false + type: choice + name: textbox + editable: false + save value: false + show statistics: false + choice: textbox extra card field: - type: choice - name: textbox - choice: textbox - editable: false - save value: false + type: choice + name: ptbox + editable: false + save value: false + show statistics: false + choice: ptbox extra card field: - type: choice - name: name box - choice: black - editable: false - save value: false + type: choice + name: namebox left + editable: false + save value: false + show statistics: false + choice: namebox left extra card field: - type: choice - name: name box left - choice: black - editable: false - save value: false + type: choice + name: namebox right + editable: false + save value: false + show statistics: false + choice: namebox right extra card field: - type: choice - name: name box right - choice: black - editable: false - save value: false + type: choice + name: namebox + editable: false + save value: false + show statistics: false + choice: namebox extra card field: - type: choice - name: paintbrush - choice: black - editable: false - save value: false + type: choice + name: foil layer + editable: false + save value: false + show statistics: false + choice: foil layer extra card style: - foil layer: - left: 0 - top : 0 - width: 375 - height: 523 - z index: 1050 - render style: image - image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"} frame: - left: 0 - top: 0 - width: 375 - height: 523 - z index: 0 - render style: image - popup style: in place - image: frame.png - frame 2: - left: 0 - top: 0 - width: 375 - height: 523 - z index: 2 - render style: image - popup style: in place - image: frame.png - mask: frame_mask.png + left: 0 + top: 0 + width: { stylesheet.card_width } + height: { stylesheet.card_height } + z index: 200 + render style: image + image: card.png textbox: - left: 0 - top: 0 - width: 375 - height: 527 - z index: 3 - render style: image - image: textbox.png - name box: - left: - { if title_width() > 275 then 50 - else title_width() * -0.5 + 185.5 } - top: 26 - width: - { if title_width() > 275 then 275 - else title_width() + 3} - #height: 48 - height: 59 - z index: 3 - visible: { card.name != "" } - render style: image - image: name-mid.png - name box left: - right: - { if title_width() > 275 then 50 - else title_width() * -0.5 + 185.5 } - top: 26 - #width: 15 - width: 21 - height: 59 - z index: 3 - render style: image - image: name-left.png - name box right: - left: - { if title_width() > 275 then 325 - else title_width() * 0.5 + 187.5 } - top: 26 - #width: 15 - width: 21 - height: 59 - z index: 3 - render style: image - image: name-right.png - paintbrush: - left: 27 - top : 481 - width: 30 - height: 11 - z index: 3 - render style: image - image: /magic-future-common.mse-include/paintbrush_black.png + left: 0 + top: 0 + width: { stylesheet.card_width } + height: { stylesheet.card_height } + z index: 210 + render style: image + image: textbox.png + ptbox: + left: 570 + top: 924 + width: 134 + height: 72 + z index: 800 + visible: { card.pt != "" } + render style: image + image: pt.png + namebox: + left: { 372 - title_width()/2 } + top: 47 + width: { title_width() } + height: 127 + z index: 800 + visible: { card.name != "" } + render style: image + image: namebox.png + namebox left: + left: { 321 - title_width()/2 } + top: 47 + width: 51 + height: 127 + z index: 800 + visible: { card.name != "" } + render style: image + image: namebox_left.png + namebox right: + left: { 372 + title_width()/2 } + top: 47 + width: 51 + height: 127 + z index: 800 + visible: { card.name != "" } + render style: image + image: namebox_right.png + foil layer: + left: 0 + top: 0 + width: { stylesheet.card_width } + height: { stylesheet.card_height } + z index: 1050 + visible: { styling.overlay != "none" and styling.overlay != "" } + render style: image + image: { if styling.overlay == "" then "" else styling.overlay + "/overlay.png" } diff --git a/data/magic-new-emblem.mse-style/textbox.png b/data/magic-new-emblem.mse-style/textbox.png index 5cdb7154e8..a73f07fb8c 100644 Binary files a/data/magic-new-emblem.mse-style/textbox.png and b/data/magic-new-emblem.mse-style/textbox.png differ diff --git a/data/magic.mse-game/script b/data/magic.mse-game/script index 70a4c2cc16..97d81a2fdf 100644 --- a/data/magic.mse-game/script +++ b/data/magic.mse-game/script @@ -311,7 +311,18 @@ get_alpha_percentage := else 1.0 } - +has_required_stylesheets := +{ + missing := 0 + for each a in input do ( + packaged_version := exists_as_package(a.0) + required_version := a.1 + if packaged_version == nil + or version_is_older(packaged_version, than:required_version) + then missing := missing + 1; + ) + missing == 0 +} ############################################################## For the user #### Remove card codes cc_filter := replace@(match:"^[CURMSL][WUBRGMZACL][0-9]+ ?[-—]? ?", replace:"")