diff --git a/Magic - Fonts/template specific fonts/Magic - Stellar Sights/Magic-Fomalhaut.ttf b/Magic - Fonts/template specific fonts/Magic - Stellar Sights/Magic-Fomalhaut.ttf
new file mode 100644
index 000000000..9b8dd486e
Binary files /dev/null and b/Magic - Fonts/template specific fonts/Magic - Stellar Sights/Magic-Fomalhaut.ttf differ
diff --git a/data/magic-m15-showcase-assassins-creed-memory-corridor.mse-style/style b/data/magic-m15-showcase-assassins-creed-memory-corridor.mse-style/style
index 89f7d9da4..8e31474c1 100644
--- a/data/magic-m15-showcase-assassins-creed-memory-corridor.mse-style/style
+++ b/data/magic-m15-showcase-assassins-creed-memory-corridor.mse-style/style
@@ -122,7 +122,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "colored" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "colored" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-bloomburrow-borderless-anime.mse-style/style b/data/magic-m15-showcase-bloomburrow-borderless-anime.mse-style/style
index 5d049960f..ef9c6f6f5 100644
--- a/data/magic-m15-showcase-bloomburrow-borderless-anime.mse-style/style
+++ b/data/magic-m15-showcase-bloomburrow-borderless-anime.mse-style/style
@@ -156,7 +156,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "colored" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "colored" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-bloomburrow-woodland.mse-style/style b/data/magic-m15-showcase-bloomburrow-woodland.mse-style/style
index e6115c706..386ddd4b7 100644
--- a/data/magic-m15-showcase-bloomburrow-woodland.mse-style/style
+++ b/data/magic-m15-showcase-bloomburrow-woodland.mse-style/style
@@ -192,7 +192,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-capenna-art-deco.mse-style/style b/data/magic-m15-showcase-capenna-art-deco.mse-style/style
index eb663cf04..03780a5f3 100644
--- a/data/magic-m15-showcase-capenna-art-deco.mse-style/style
+++ b/data/magic-m15-showcase-capenna-art-deco.mse-style/style
@@ -157,7 +157,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
is_unsorted := { styling.remove_from_autocount }
diff --git a/data/magic-m15-showcase-capenna-skyscraper.mse-style/style b/data/magic-m15-showcase-capenna-skyscraper.mse-style/style
index f262e9ee8..cded8a346 100644
--- a/data/magic-m15-showcase-capenna-skyscraper.mse-style/style
+++ b/data/magic-m15-showcase-capenna-skyscraper.mse-style/style
@@ -115,7 +115,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
is_unsorted := { styling.remove_from_autocount }
diff --git a/data/magic-m15-showcase-dominaria-stained-glass.mse-style/style b/data/magic-m15-showcase-dominaria-stained-glass.mse-style/style
index d1ea6fbdf..f0e1194c9 100644
--- a/data/magic-m15-showcase-dominaria-stained-glass.mse-style/style
+++ b/data/magic-m15-showcase-dominaria-stained-glass.mse-style/style
@@ -101,7 +101,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-duskmourn-paranormal.mse-style/style b/data/magic-m15-showcase-duskmourn-paranormal.mse-style/style
index 6f40e401a..da0fb383b 100644
--- a/data/magic-m15-showcase-duskmourn-paranormal.mse-style/style
+++ b/data/magic-m15-showcase-duskmourn-paranormal.mse-style/style
@@ -163,7 +163,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-eldraine-tales.mse-style/style b/data/magic-m15-showcase-eldraine-tales.mse-style/style
index 06590a962..b8f2aeacb 100644
--- a/data/magic-m15-showcase-eldraine-tales.mse-style/style
+++ b/data/magic-m15-showcase-eldraine-tales.mse-style/style
@@ -121,7 +121,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/border_mask.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/border_mask.png
new file mode 100644
index 000000000..2b1ec7862
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/border_mask.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/a.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/a.png
new file mode 100644
index 000000000..08b24e69d
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/a.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/b.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/b.png
new file mode 100644
index 000000000..494718dbd
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/b.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/c.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/c.png
new file mode 100644
index 000000000..ecf0c0152
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/c.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/g.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/g.png
new file mode 100644
index 000000000..d8d873165
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/g.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/m.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/m.png
new file mode 100644
index 000000000..17062be02
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/m.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/r.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/r.png
new file mode 100644
index 000000000..4278e7515
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/r.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/u.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/u.png
new file mode 100644
index 000000000..9de176556
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/u.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/w.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/w.png
new file mode 100644
index 000000000..48aace46b
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card/w.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card_mask.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card_mask.png
new file mode 100644
index 000000000..b5fe0dd20
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card_mask.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card_sample.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card_sample.png
new file mode 100644
index 000000000..bcc46ac2c
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/card_sample.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/foil_mask.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/foil_mask.png
new file mode 100644
index 000000000..65541c912
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/foil_mask.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/image_mask.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/image_mask.png
new file mode 100644
index 000000000..67f510a02
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/image_mask.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/a.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/a.png
new file mode 100644
index 000000000..6e1f0ad21
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/a.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/b.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/b.png
new file mode 100644
index 000000000..485630e9a
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/b.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/c.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/c.png
new file mode 100644
index 000000000..05ebad619
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/c.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/g.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/g.png
new file mode 100644
index 000000000..debabbb06
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/g.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/m.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/m.png
new file mode 100644
index 000000000..4aca86a26
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/m.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/r.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/r.png
new file mode 100644
index 000000000..0d74a18fe
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/r.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/u.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/u.png
new file mode 100644
index 000000000..cbf2e0497
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/u.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/w.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/w.png
new file mode 100644
index 000000000..b009e64de
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/pt/w.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/special_blend_pt.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/special_blend_pt.png
new file mode 100644
index 000000000..df50103fb
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/special_blend_pt.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/stamp_border_mask.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/stamp_border_mask.png
new file mode 100644
index 000000000..8117c3dcc
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/stamp_border_mask.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/style b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/style
new file mode 100644
index 000000000..dc56f4da6
--- /dev/null
+++ b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/style
@@ -0,0 +1,359 @@
+mse version: 2.1.2
+game: magic
+short name: Poster S. Sights
+full name: Eternities Showcase
+icon: card_sample.png
+position hint: 095
+
+version: 2024-10-01
+depends on:
+ package: magic.mse-game
+ version: 2014-06-25
+depends on:
+ package: magic-mana-large.mse-symbol-font
+ version: 2007-09-23
+depends on:
+ package: magic-mana-small.mse-symbol-font
+ version: 2007-09-23
+depends on:
+ 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
+
+### blanks by GenevensiS
+### code by GenevensiS
+
+############################################################## Extra scripts
+
+init script:
+ swap_fonts_pt_default :=
+ [
+ name: {"Beleren Bold"},
+ size: {32.0},
+ color: {"white"},
+ vertical: {0},
+ italic: {"Beleren Bold"}
+ ]
+
+ swap_fonts_body_default :=
+ [
+ name: {"MPlantin"},
+ size: {27.0},
+ color: {"white"},
+ vertical: {0},
+ italic: {"MPlantin-Italic"}
+ ]
+
+ typeline_offset_top_1 := { 88 }
+ typeline_offset_width_1 := { -3 }
+ typeline_offset_left_1 := { 1 }
+ swap_fonts_type_default :=
+ [
+ name: {"Beleren Bold"},
+ size: {26.0},
+ color: {"white"},
+ vertical: {0},
+ italic: {""}
+ ]
+
+ transform_symbol_disabled_1 := { true }
+ nameline_offset_top_1 := { 581 }
+ nameline_offset_left_1 := { -3 }
+ nameline_offset_width_1 := { -5 }
+ casting_cost_offset_top_1 := { -2 }
+ swap_fonts_name_default :=
+ [
+ name: {"Beleren Bold"},
+ size: {30.0},
+ color: {"white"},
+ vertical: {0},
+ italic: {""}
+ ]
+
+ card_stamp_offset_top_1 := { if stamp_shape() == "triangle" then 6 else 0 }
+
+ invert_watermark_1 := { true }
+ watermark_offset_top_1 := { -28 }
+ watermark_offset_height_1 := { 28 }
+
+ template_prefix :=
+ [
+ border: "border/",
+ card: "card/",
+ pt: "pt/",
+ crown: "crown/",
+ alias: "alias/",
+ stamp: "stamp/",
+ nonstamp: "nonstamp/"
+ identity: "/magic-modules.mse-include/indicators/",
+ identity2: "/magic-modules.mse-include/indicators/",
+ ]
+ template_suffix :=
+ [
+ border: ".png",
+ card: ".png",
+ pt: ".png",
+ crown: ".png",
+ alias: ".png",
+ stamp: ".png",
+ nonstamp: ".png"
+ identity: "identity.png",
+ identity2: "identity.png",
+ ]
+ template := { template_prefix[type] + input + template_suffix[type] }
+ land_template := { template_prefix[type] + (if input == "a" then "c" else input) + template_suffix[type] }
+
+ card_border := { color_background(input: card.card_color, type: "border", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+ card_background := { color_background(input: card.card_color, type: "card", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+ card_ptbox := { color_background(input: card.card_color, type: "pt", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+ card_crown := { color_background(input: card.card_color, type: "crown", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+ card_alias := { color_background(input: card.card_color, type: "alias", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+ card_stamp := { color_background(input: card.card_color, type: "stamp", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+ card_nonstamp := { color_background(input: card.card_color, type: "nonstamp", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+
+ pure_colors :=
+ {
+ sort_text(
+ order: if card_is_wedge(input) then "(wbgur)" else "(wubrg)",
+ (if chosen(card.card_color, choice:"white") then "w") +
+ (if chosen(card.card_color, choice:"blue") then "u") +
+ (if chosen(card.card_color, choice:"black") then "b") +
+ (if chosen(card.card_color, choice:"red") then "r") +
+ (if chosen(card.card_color, choice:"green") then "g")
+ )
+ }
+ pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
+
+ is_promo := { styling.promo }
+
+ is_unsorted := { styling.remove_from_autocount }
+
+ is_crowned := { styling.legend_crown == "yes" or (styling.legend_crown == "if legendary" and lang_setting("is_legendary")(card.super_type)) }
+
+ foil_mask_added_sections := { [] }
+ foil_mask_removed_sections := { [] }
+
+ chop_top := { split := split_comma(styling.chop_text_box); if length(split) > 0 and split[0] != "" and split[0] != "-" then clamp(split[0], maximum:500, minimum:-500) else 0 }
+ chop_bottom := { split := split_comma(styling.chop_text_box); if length(split) > 1 and split[1] != "" and split[1] != "-" then clamp(split[1], maximum:500, minimum:-500) else 0 }
+ chop_right := { split := split_comma(styling.chop_text_box); if length(split) > 2 and split[2] != "" and split[2] != "-" then clamp(split[2], maximum:500, minimum:-500) 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 }
+
+ textbox_alpha := { min(1.0, max(0.0, get_alpha_percentage(styling.textbox_opacity_percentage, default: 50) - 0.2) * 1.25) }
+
+ art_left := { 0 }
+ art_top := { 0 }
+ art_width := { 744 }
+ art_height :=
+ {
+ if styling.stretch_art_to_whole_card then stylesheet.card_height
+ else 967
+ }
+
+ art_mask := { crop("image_mask.png", offset_x: art_left(), offset_y: art_top(), width: art_width(), height: art_height()) }
+
+############################################################## Extra style options
+
+styling field:
+ 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: 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
+styling field:
+ type: text
+ name: textbox opacity percentage
+ description: Set the opacity percentage for the textbox background. Opaque is 100, transparent is 0, default is 50.
+
+include file: /magic-modules.mse-include/texts/styling_fields
+
+styling field:
+ type: choice
+ name: PT color scheme
+ description: Use the selected color scheme for the PT box on two color cards. Canon is "land" on hybrid cards, "gold" otherwise.
+ choice: canon
+ choice: gold
+ choice: hybrid
+ choice: colored
+ choice: land
+ initial: canon
+
+include file: /magic-modules.mse-include/rarities/styling_fields
+
+include file: /magic-modules.mse-include/watermarks/styling_fields
+
+include file: /magic-modules.mse-include/foils/styling_fields
+
+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
+
+############################################################## Card fields
+
+include file: /magic-modules.mse-include/information/card_fields
+
+include file: /magic-modules.mse-include/stamps/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/namelines/card_fields
+
+include file: /magic-modules.mse-include/typelines/card_fields
+
+include file: /magic-modules.mse-include/foils/card_fields
+
+card style:
+ ############################# Background stuff
+ border color:
+ left: 0
+ top: 0
+ width: { stylesheet.card_width }
+ height: { stylesheet.card_height }
+ z index: 210
+ mask: border_mask.png
+ card color:
+ left: 0
+ top: 0
+ width: { stylesheet.card_width }
+ height: { stylesheet.card_height }
+ z index: 200
+ popup style: in place
+ render style: image
+ image: { card_background() }
+ mask: card_mask.png
+ ############################# Image
+ image:
+ left: { art_left() }
+ top: { art_top() }
+ width: { art_width() }
+ height: { art_height() }
+ z index: 100
+ mask: { art_mask() }
+ mainframe image:
+ left: { popout_left() }
+ top: { popout_top() }
+ width: { popout_width() }
+ height: { popout_height() }
+ z index: 1000
+ ############################# Text box
+ text:
+ left: 65
+ top: { 727 + chop_top() + (if is_stamped() then 2 else 0) + body_font_vertical() }
+ right: { 679 - chop_right() }
+ bottom: { 950 - chop_bottom() - if is_stamped() then 5 else 0 }
+ z index: 900
+ line height hard: { if is_modal(card.rule_text) then 0.9 else 1.2 }
+ line height line: 1.5
+ line height soft: 0.9
+ line height hard max: { if is_modal(card.rule_text) then 1.0 else 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: { 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: { body_font_size() }
+ scale down to: 7
+ ############################# PT
+ pt:
+ left: 592
+ top: { 935 + pt_font_vertical() }
+ width: 101
+ height: 38
+ 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: pt box
+ editable: false
+ save value: false
+ show statistics: false
+ choice: pt box
+extra card field:
+ type: choice
+ name: text box
+ editable: false
+ save value: false
+ show statistics: false
+ choice: text box
+extra card field:
+ type: color
+ name: card stamp border
+ script: card.border_color
+ editable: false
+ save value: false
+ show statistics: false
+
+extra card style:
+ pt box:
+ left: 0
+ top: 0
+ width: { stylesheet.card_width }
+ height: { stylesheet.card_height }
+ z index: 800
+ visible: { card.pt != "" }
+ render style: image
+ image:
+ script:
+ pure := pure_colors()
+ count := length(pure)
+ color := pt_colors()
+ if color == "gold" and count > 1 then template("m", type: "pt")
+ else if color == "land" and count > 1 then template("c", type: "pt")
+ else if color == "hybrid" and count == 2 then masked_blend(mask: "special_blend_pt.png", dark: template(pure.0, type: "pt"), light: template(pure.1, type: "pt"))
+ else card_ptbox()
+ text box:
+ left: 0
+ top: 0
+ width: { stylesheet.card_width }
+ height: { stylesheet.card_height }
+ z index: 195
+ render style: image
+ image: { set_alpha("textbox.png", alpha: textbox_alpha()) }
+ card stamp border:
+ left: 0
+ top: 0
+ width: { stylesheet.card_width }
+ height: { stylesheet.card_height }
+ z index: 211
+ visible: { is_stamped() }
+ mask: stamp_border_mask.png
diff --git a/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/textbox.png b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/textbox.png
new file mode 100644
index 000000000..4833806cc
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights-poster.mse-style/textbox.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/border_mask.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/border_mask.png
new file mode 100644
index 000000000..0ef847d0b
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/border_mask.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/a.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/a.png
new file mode 100644
index 000000000..71d92e91d
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/a.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/b.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/b.png
new file mode 100644
index 000000000..a2c7d58b0
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/b.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/c.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/c.png
new file mode 100644
index 000000000..a5d00c289
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/c.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/g.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/g.png
new file mode 100644
index 000000000..79c517fe7
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/g.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/m.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/m.png
new file mode 100644
index 000000000..466b4939d
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/m.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/r.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/r.png
new file mode 100644
index 000000000..8ffe0825b
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/r.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/u.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/u.png
new file mode 100644
index 000000000..d0ea14e79
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/u.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/w.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/w.png
new file mode 100644
index 000000000..670805527
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card/w.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card_mask.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card_mask.png
new file mode 100644
index 000000000..d0ef45ea8
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card_mask.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card_sample.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card_sample.png
new file mode 100644
index 000000000..a8083b9ad
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/card_sample.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/foil_mask.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/foil_mask.png
new file mode 100644
index 000000000..65541c912
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/foil_mask.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/fonts/Magic-Fomalhaut.ttf b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/fonts/Magic-Fomalhaut.ttf
new file mode 100644
index 000000000..9b8dd486e
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/fonts/Magic-Fomalhaut.ttf differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/image_mask.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/image_mask.png
new file mode 100644
index 000000000..06bb644a0
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/image_mask.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/namebox.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/namebox.png
new file mode 100644
index 000000000..213b0c821
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/namebox.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/a.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/a.png
new file mode 100644
index 000000000..a36704bba
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/a.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/b.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/b.png
new file mode 100644
index 000000000..79945d108
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/b.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/c.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/c.png
new file mode 100644
index 000000000..a5a8393f2
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/c.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/g.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/g.png
new file mode 100644
index 000000000..adb2b22cb
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/g.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/m.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/m.png
new file mode 100644
index 000000000..86485b890
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/m.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/r.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/r.png
new file mode 100644
index 000000000..275302358
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/r.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/u.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/u.png
new file mode 100644
index 000000000..453e12786
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/u.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/w.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/w.png
new file mode 100644
index 000000000..6415b170e
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/pt/w.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/special_blend_pt.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/special_blend_pt.png
new file mode 100644
index 000000000..df50103fb
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/special_blend_pt.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/stamp_border_mask.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/stamp_border_mask.png
new file mode 100644
index 000000000..3be5eb065
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/stamp_border_mask.png differ
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/style b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/style
new file mode 100644
index 000000000..f0ca4fc0d
--- /dev/null
+++ b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/style
@@ -0,0 +1,404 @@
+mse version: 2.1.2
+game: magic
+short name: Stellar Sights
+full name: Eternities Showcase
+icon: card_sample.png
+position hint: 095
+
+version: 2024-10-01
+depends on:
+ package: magic.mse-game
+ version: 2014-06-25
+depends on:
+ package: magic-mana-large.mse-symbol-font
+ version: 2007-09-23
+depends on:
+ package: magic-mana-small.mse-symbol-font
+ version: 2007-09-23
+depends on:
+ 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
+
+### blanks by GenevensiS
+### code by GenevensiS
+
+############################################################## Extra scripts
+
+init script:
+ swap_fonts_pt_default :=
+ [
+ name: {"Magic-Fomalhaut"},
+ size: {30.0},
+ color: {"white"},
+ vertical: {0},
+ italic: {""}
+ ]
+
+ swap_fonts_body_default :=
+ [
+ name: {"MPlantin"},
+ size: {27.0},
+ color: {"white"},
+ vertical: {0},
+ italic: {"MPlantin-Italic"}
+ ]
+
+ typeline_offset_top_1 := { 106 }
+ typeline_offset_width_1 := { -3 }
+ typeline_offset_left_1 := { 1 }
+ indicator_offset_top_1 := { -2 }
+ type_offset_top_1 := { 2 }
+ swap_fonts_type_default :=
+ [
+ name: {"Beleren Bold"},
+ size: {26.0},
+ color: {"white"},
+ vertical: {0},
+ italic: {""}
+ ]
+
+ transform_symbol_disabled_1 := { true }
+ nameline_offset_top_1 := { 577 }
+ nameline_offset_left_1 := { -11 }
+ nameline_offset_width_1 := { 18 }
+ swap_fonts_name_default :=
+ [
+ name: {"Magic-Fomalhaut"},
+ size: {30.0},
+ color: {"white"},
+ vertical: {0},
+ italic: {""}
+ ]
+
+ card_stamp_offset_top_1 := { if stamp_shape() == "triangle" then 6 else 0 }
+
+ invert_watermark_1 := { true }
+ watermark_offset_top_1 := { -22 }
+ watermark_offset_height_1 := { 22 }
+
+ template_prefix :=
+ [
+ border: "border/",
+ card: "card/",
+ pt: "pt/",
+ crown: "crown/",
+ alias: "alias/",
+ stamp: "stamp/",
+ nonstamp: "nonstamp/"
+ identity: "/magic-modules.mse-include/indicators/",
+ identity2: "/magic-modules.mse-include/indicators/",
+ ]
+ template_suffix :=
+ [
+ border: ".png",
+ card: ".png",
+ pt: ".png",
+ crown: ".png",
+ alias: ".png",
+ stamp: ".png",
+ nonstamp: ".png"
+ identity: "identity.png",
+ identity2: "identity.png",
+ ]
+ template := { template_prefix[type] + input + template_suffix[type] }
+ land_template := { template_prefix[type] + (if input == "a" then "c" else input) + template_suffix[type] }
+
+ card_border := { color_background(input: card.card_color, type: "border", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+ card_background := { color_background(input: card.card_color, type: "card", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+ card_ptbox := { color_background(input: card.card_color, type: "pt", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+ card_crown := { color_background(input: card.card_color, type: "crown", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+ card_alias := { color_background(input: card.card_color, type: "alias", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+ card_stamp := { color_background(input: card.card_color, type: "stamp", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+ card_nonstamp := { color_background(input: card.card_color, type: "nonstamp", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
+
+ pure_colors :=
+ {
+ sort_text(
+ order: if card_is_wedge(input) then "(wbgur)" else "(wubrg)",
+ (if chosen(card.card_color, choice:"white") then "w") +
+ (if chosen(card.card_color, choice:"blue") then "u") +
+ (if chosen(card.card_color, choice:"black") then "b") +
+ (if chosen(card.card_color, choice:"red") then "r") +
+ (if chosen(card.card_color, choice:"green") then "g")
+ )
+ }
+ pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
+
+ is_promo := { styling.promo }
+
+ is_unsorted := { styling.remove_from_autocount }
+
+ is_crowned := { styling.legend_crown == "yes" or (styling.legend_crown == "if legendary" and lang_setting("is_legendary")(card.super_type)) }
+
+ foil_mask_added_sections := { [] }
+ foil_mask_removed_sections := { [] }
+
+ chop_top := { split := split_comma(styling.chop_text_box); if length(split) > 0 and split[0] != "" and split[0] != "-" then clamp(split[0], maximum:500, minimum:-500) else 0 }
+ chop_bottom := { split := split_comma(styling.chop_text_box); if length(split) > 1 and split[1] != "" and split[1] != "-" then clamp(split[1], maximum:500, minimum:-500) else 0 }
+ chop_right := { split := split_comma(styling.chop_text_box); if length(split) > 2 and split[2] != "" and split[2] != "-" then clamp(split[2], maximum:500, minimum:-500) 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 }
+
+ namebox_alpha := { get_alpha_percentage(styling.namebox_opacity_percentage, default: 70) }
+ textbox_alpha := { get_alpha_percentage(styling.textbox_opacity_percentage, default: 70) }
+
+ art_left := { 0 }
+ art_top := { 0 }
+ art_width := { 744 }
+ art_height :=
+ {
+ if styling.stretch_art_to_whole_card then stylesheet.card_height
+ else if textbox_alpha() <= 0.985 then 958
+ else if namebox_alpha() <= 0.985 then 685
+ else 619
+ }
+
+ art_mask := { crop("image_mask.png", offset_x: art_left(), offset_y: art_top(), width: art_width(), height: art_height()) }
+
+############################################################## Extra style options
+
+styling field:
+ 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: 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
+styling field:
+ type: color
+ name: namebox color
+ description: Use the specified color for the namebox background.
+ choice:
+ name: black
+ color: rgb(0,0,0)
+ choice:
+ name: white
+ color: rgb(255,255,255)
+ initial: black
+styling field:
+ type: text
+ name: namebox opacity percentage
+ description: Set the opacity percentage for the name background. Opaque is 100, transparent is 0, default is 70.
+styling field:
+ type: color
+ name: textbox color
+ description: Use the specified color for the textbox background.
+ choice:
+ name: black
+ color: rgb(0,0,0)
+ choice:
+ name: white
+ color: rgb(255,255,255)
+ initial: black
+styling field:
+ type: text
+ name: textbox opacity percentage
+ description: Set the opacity percentage for the textbox background. Opaque is 100, transparent is 0, default is 70.
+
+include file: /magic-modules.mse-include/texts/styling_fields
+
+styling field:
+ type: choice
+ name: PT color scheme
+ description: Use the selected color scheme for the PT box on two color cards. Canon is "land" on hybrid cards, "gold" otherwise.
+ choice: canon
+ choice: gold
+ choice: hybrid
+ choice: colored
+ choice: land
+ initial: canon
+
+include file: /magic-modules.mse-include/rarities/styling_fields
+
+include file: /magic-modules.mse-include/watermarks/styling_fields
+
+include file: /magic-modules.mse-include/foils/styling_fields
+
+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
+
+############################################################## Card fields
+
+include file: /magic-modules.mse-include/information/card_fields
+
+include file: /magic-modules.mse-include/stamps/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/namelines/card_fields
+
+include file: /magic-modules.mse-include/typelines/card_fields
+
+include file: /magic-modules.mse-include/foils/card_fields
+
+card style:
+ ############################# Background stuff
+ border color:
+ left: 0
+ top: 0
+ width: { stylesheet.card_width }
+ height: { stylesheet.card_height }
+ z index: 190
+ mask: border_mask.png
+ card color:
+ left: 0
+ top: 0
+ width: { stylesheet.card_width }
+ height: { stylesheet.card_height }
+ z index: 200
+ popup style: in place
+ render style: image
+ image: { card_background() }
+ mask: card_mask.png
+ ############################# Image
+ image:
+ left: { art_left() }
+ top: { art_top() }
+ width: { art_width() }
+ height: { art_height() }
+ z index: 100
+ mask: { art_mask() }
+ mainframe image:
+ left: { popout_left() }
+ top: { popout_top() }
+ width: { popout_width() }
+ height: { popout_height() }
+ z index: 1000
+ ############################# Text box
+ text:
+ left: 65
+ top: { 740 + chop_top() + (if is_stamped() then 2 else 0) + body_font_vertical() }
+ right: { 679 - chop_right() }
+ bottom: { 950 - chop_bottom() - if is_stamped() then 5 else 0 }
+ z index: 900
+ line height hard: { if is_modal(card.rule_text) then 0.9 else 1.2 }
+ line height line: 1.5
+ line height soft: 0.9
+ line height hard max: { if is_modal(card.rule_text) then 1.0 else 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: { 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: { body_font_size() }
+ scale down to: 7
+ ############################# PT
+ pt:
+ left: 603
+ top: { 937 + pt_font_vertical() }
+ width: 77
+ height: 33
+ 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: name box
+ editable: false
+ save value: false
+ show statistics: false
+ choice: name box
+extra card field:
+ type: choice
+ name: text box
+ editable: false
+ save value: false
+ show statistics: false
+ choice: text box
+extra card field:
+ type: choice
+ name: pt box
+ editable: false
+ save value: false
+ show statistics: false
+ choice: pt box
+extra card field:
+ type: color
+ name: card stamp border
+ script: card.border_color
+ editable: false
+ save value: false
+ show statistics: false
+
+extra card style:
+ pt box:
+ left: 0
+ top: 0
+ width: { stylesheet.card_width }
+ height: { stylesheet.card_height }
+ z index: 800
+ visible: { card.pt != "" }
+ render style: image
+ image:
+ script:
+ pure := pure_colors()
+ count := length(pure)
+ color := pt_colors()
+ if color == "gold" and count > 1 then template("m", type: "pt")
+ else if color == "land" and count > 1 then template("c", type: "pt")
+ else if color == "hybrid" and count == 2 then masked_blend(mask: "special_blend_pt.png", dark: template(pure.0, type: "pt"), light: template(pure.1, type: "pt"))
+ else card_ptbox()
+ name box:
+ left: 0
+ top: 0
+ width: { stylesheet.card_width }
+ height: { stylesheet.card_height }
+ z index: 195
+ render style: image
+ image: { set_alpha(recolor_image("namebox.png", color: styling.namebox_color), alpha: namebox_alpha()) }
+ text box:
+ left: 0
+ top: 0
+ width: { stylesheet.card_width }
+ height: { stylesheet.card_height }
+ z index: 195
+ render style: image
+ image: { set_alpha(recolor_image("textbox.png", color: styling.textbox_color), alpha: textbox_alpha()) }
+ card stamp border:
+ left: 0
+ top: 0
+ width: { stylesheet.card_width }
+ height: { stylesheet.card_height }
+ z index: 210
+ visible: { is_stamped() }
+ mask: stamp_border_mask.png
diff --git a/data/magic-m15-showcase-eternities-stellar-sights.mse-style/textbox.png b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/textbox.png
new file mode 100644
index 000000000..b5cd8688e
Binary files /dev/null and b/data/magic-m15-showcase-eternities-stellar-sights.mse-style/textbox.png differ
diff --git a/data/magic-m15-showcase-innistrad-double-feature.mse-style/style b/data/magic-m15-showcase-innistrad-double-feature.mse-style/style
index c2b74c100..0a782a956 100644
--- a/data/magic-m15-showcase-innistrad-double-feature.mse-style/style
+++ b/data/magic-m15-showcase-innistrad-double-feature.mse-style/style
@@ -124,7 +124,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
is_unsorted := { styling.remove_from_autocount }
diff --git a/data/magic-m15-showcase-innistrad-mid.mse-style/style b/data/magic-m15-showcase-innistrad-mid.mse-style/style
index f6b2a5959..65ef9d57a 100644
--- a/data/magic-m15-showcase-innistrad-mid.mse-style/style
+++ b/data/magic-m15-showcase-innistrad-mid.mse-style/style
@@ -164,7 +164,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-innistrad-vow.mse-style/style b/data/magic-m15-showcase-innistrad-vow.mse-style/style
index 280beb296..f2763525c 100644
--- a/data/magic-m15-showcase-innistrad-vow.mse-style/style
+++ b/data/magic-m15-showcase-innistrad-vow.mse-style/style
@@ -121,7 +121,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-ixalan-caverns.mse-style/style b/data/magic-m15-showcase-ixalan-caverns.mse-style/style
index 5bbeac51a..77642d8d1 100644
--- a/data/magic-m15-showcase-ixalan-caverns.mse-style/style
+++ b/data/magic-m15-showcase-ixalan-caverns.mse-style/style
@@ -99,7 +99,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-ixalan-legends.mse-style/style b/data/magic-m15-showcase-ixalan-legends.mse-style/style
index cbd05f278..cf3713a19 100644
--- a/data/magic-m15-showcase-ixalan-legends.mse-style/style
+++ b/data/magic-m15-showcase-ixalan-legends.mse-style/style
@@ -115,7 +115,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-ixalan-treasure.mse-style/style b/data/magic-m15-showcase-ixalan-treasure.mse-style/style
index 5cfb9d84d..51abd1c5e 100644
--- a/data/magic-m15-showcase-ixalan-treasure.mse-style/style
+++ b/data/magic-m15-showcase-ixalan-treasure.mse-style/style
@@ -97,7 +97,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-lotr-scroll-saga.mse-style/style b/data/magic-m15-showcase-lotr-scroll-saga.mse-style/style
index e88f2a50e..a74dbda21 100644
--- a/data/magic-m15-showcase-lotr-scroll-saga.mse-style/style
+++ b/data/magic-m15-showcase-lotr-scroll-saga.mse-style/style
@@ -141,7 +141,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
is_unsorted := { styling.remove_from_autocount }
diff --git a/data/magic-m15-showcase-lotr-scroll.mse-style/style b/data/magic-m15-showcase-lotr-scroll.mse-style/style
index bab862db9..ad4e2b32e 100644
--- a/data/magic-m15-showcase-lotr-scroll.mse-style/style
+++ b/data/magic-m15-showcase-lotr-scroll.mse-style/style
@@ -142,7 +142,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
is_unsorted := { styling.remove_from_autocount }
diff --git a/data/magic-m15-showcase-lotr.mse-style/style b/data/magic-m15-showcase-lotr.mse-style/style
index 18d294f02..339946563 100644
--- a/data/magic-m15-showcase-lotr.mse-style/style
+++ b/data/magic-m15-showcase-lotr.mse-style/style
@@ -97,7 +97,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-ravnica-city-mural.mse-style/style b/data/magic-m15-showcase-ravnica-city-mural.mse-style/style
index 4f2926e56..07d31d291 100644
--- a/data/magic-m15-showcase-ravnica-city-mural.mse-style/style
+++ b/data/magic-m15-showcase-ravnica-city-mural.mse-style/style
@@ -124,7 +124,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-tarkir-draconic-adventure.mse-style/style b/data/magic-m15-showcase-tarkir-draconic-adventure.mse-style/style
index 50dd042c1..e3551142d 100644
--- a/data/magic-m15-showcase-tarkir-draconic-adventure.mse-style/style
+++ b/data/magic-m15-showcase-tarkir-draconic-adventure.mse-style/style
@@ -217,7 +217,7 @@ init script:
card_border := { color_background(input: card.card_color, type: "border", base_hybrid: card_hybrid, multicolor_blend: "black", hybrid_blend: "white", artifact_blend: "white") }
card_background := { color_background(input: card.card_color, type: "card", base_hybrid: card_hybrid, multicolor_blend: "black", hybrid_blend: "white", artifact_blend: "white") }
card_background_2 := { color_background(input: card.card_color_2, type: "page", base_hybrid: card_hybrid, multicolor_blend: "black", hybrid_blend: "white", artifact_blend: "white") }
- card_ptbox := { color_background(input: card.card_color, type: "pt", base_hybrid: card_hybrid, multicolor_blend: "black", hybrid_blend: "white", artifact_blend: "white") }
+ card_ptbox := { color_background(input: card.card_color, type: "pt", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
card_crown := { color_background(input: card.card_color, type: "crown", base_hybrid: card_hybrid, multicolor_blend: "black", hybrid_blend: "white", artifact_blend: "white") }
card_alias := { color_background(input: card.card_color, type: "alias", base_hybrid: card_hybrid, multicolor_blend: "black", hybrid_blend: "white", artifact_blend: "white") }
card_stamp := { color_background(input: card.card_color, type: "stamp", base_hybrid: card_hybrid, multicolor_blend: "black", hybrid_blend: "white", artifact_blend: "white") }
@@ -235,7 +235,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-tarkir-draconic.mse-style/style b/data/magic-m15-showcase-tarkir-draconic.mse-style/style
index 38c72a73f..16fb70d05 100644
--- a/data/magic-m15-showcase-tarkir-draconic.mse-style/style
+++ b/data/magic-m15-showcase-tarkir-draconic.mse-style/style
@@ -149,7 +149,7 @@ init script:
card_border := { color_background(input: card.card_color, type: "border", base_hybrid: card_hybrid, multicolor_blend: "black", hybrid_blend: "white", artifact_blend: "white") }
card_background := { color_background(input: card.card_color, type: "card", base_hybrid: card_hybrid, multicolor_blend: "black", hybrid_blend: "white", artifact_blend: "white") }
- card_ptbox := { color_background(input: card.card_color, type: "pt", base_hybrid: card_hybrid, multicolor_blend: "black", hybrid_blend: "white", artifact_blend: "white") }
+ card_ptbox := { color_background(input: card.card_color, type: "pt", base_hybrid: card_hybrid, multicolor_blend: "white", hybrid_blend: "white", artifact_blend: "white") }
card_crown := { color_background(input: card.card_color, type: "crown", base_hybrid: card_hybrid, multicolor_blend: "black", hybrid_blend: "white", artifact_blend: "white") }
card_alias := { color_background(input: card.card_color, type: "alias", base_hybrid: card_hybrid, multicolor_blend: "black", hybrid_blend: "white", artifact_blend: "white") }
card_stamp := { color_background(input: card.card_color, type: "stamp", base_hybrid: card_hybrid, multicolor_blend: "black", hybrid_blend: "white", artifact_blend: "white") }
@@ -167,7 +167,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-tarkir-dragon-wing.mse-style/style b/data/magic-m15-showcase-tarkir-dragon-wing.mse-style/style
index 4bd69d2bd..8c740077d 100644
--- a/data/magic-m15-showcase-tarkir-dragon-wing.mse-style/style
+++ b/data/magic-m15-showcase-tarkir-dragon-wing.mse-style/style
@@ -123,7 +123,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-thunder-junction-breaking-news.mse-style/style b/data/magic-m15-showcase-thunder-junction-breaking-news.mse-style/style
index 5e59af7df..ce6e5326d 100644
--- a/data/magic-m15-showcase-thunder-junction-breaking-news.mse-style/style
+++ b/data/magic-m15-showcase-thunder-junction-breaking-news.mse-style/style
@@ -147,7 +147,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-thunder-junction-vault.mse-style/style b/data/magic-m15-showcase-thunder-junction-vault.mse-style/style
index 6c40569a3..3c6c167ab 100644
--- a/data/magic-m15-showcase-thunder-junction-vault.mse-style/style
+++ b/data/magic-m15-showcase-thunder-junction-vault.mse-style/style
@@ -146,7 +146,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }
diff --git a/data/magic-m15-showcase-unfinity.mse-style/style b/data/magic-m15-showcase-unfinity.mse-style/style
index c65a306b5..277bfef96 100644
--- a/data/magic-m15-showcase-unfinity.mse-style/style
+++ b/data/magic-m15-showcase-unfinity.mse-style/style
@@ -110,7 +110,7 @@ init script:
)
}
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
- pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
+ pt_colors_canon := { if contains(card.card_color, match: "hybrid") then "land" else "gold" }
is_promo := { styling.promo }