Files
2025-09-28 07:25:02 -05:00

497 lines
15 KiB
Plaintext

mse version: 2.1.2
game: magic
short name: Enchanting Tales
full name: Eldraine 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: {29.0},
color: {"black"},
vertical: {0},
italic: {"Beleren Bold"}
]
swap_fonts_body_default :=
[
name: {"MPlantin"},
size: {26.0},
color: { styling.rule_text_color },
vertical: {0},
italic: {"MPlantin-Italic"}
]
typeline_offset_width_1 := { -2 }
typeline_offset_left_1 := { 1 }
rarity_offset_top_1 := { 1 }
swap_fonts_type_default :=
[
name: {"Beleren Bold"},
size: {26.0},
color: {"black"},
vertical: {0},
italic: {""}
]
transform_symbol_disabled_1 := { true }
swap_fonts_name_default :=
[
name: {"Beleren Bold"},
size: {30.0},
color: {"black"},
vertical: {0},
italic: {""}
]
card_stamp_offset_width_1 := { 1 }
module_alias := {
template := alias_custom_template
land_template := alias_custom_land_template
color_background(
type: "alias",
base_hybrid: card_hybrid,
artifact_blend: "white",
hybrid_blend: "white",
multicolor_blend: "black"
)
}
alias_colors := {
[
w: rgb(250, 248, 237),
u: rgb(68, 159, 206),
b: rgb(104, 86, 116),
r: rgb(211, 74, 62),
g: rgb(155, 167, 77),
a: rgb(90, 117, 148),
m: rgb(171, 140, 29),
c: rgb(104, 86, 115)
][input]
}
alias_offset_top_1 := {2}
alias_offset_width_1 := {2}
alias_offset_height_1 := {6}
alias_offset_left_1 := {23}
template_prefix :=
[
border: "border/",
card: "card/",
stamprim: "stamprim/",
ubstamprim: "stamprim/ub/",
textbox: "textbox/",
identity: "/magic-modules.mse-include/indicators/",
pt: "pt/"
]
template_suffix :=
[
border: "border.png",
card: "card.png",
stamprim: "stamprim.png",
ubstamprim: "stamprim.png",
textbox: "textbox.png",
identity: "identity.png"
pt: "pt.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, hybrid_blend: "white", artifact_blend: "white", multicolor_blend: "black") }
card_background := { color_background(input: card.card_color, type: "card", base_hybrid: card_hybrid, hybrid_blend: "white") }
card_textbox := { color_background(input: card.card_color, type: "textbox", base_hybrid: card_hybrid, hybrid_blend: "white", artifact_blend: "white", multicolor_blend: "black") }
card_ptbox := { color_background(input: card.card_color, type: "pt", base_hybrid: card_hybrid, hybrid_blend: "white", artifact_blend: "white", multicolor_blend: "white") }
card_stamprim := { color_background(input: card.card_color, type: "stamprim", base_hybrid: card_hybrid, hybrid_blend: "white", artifact_blend: "white", multicolor_blend: "black") }
card_ubstamprim := { color_background(input: card.card_color, type: "ubstamprim", base_hybrid: card_hybrid, hybrid_blend: "white", artifact_blend: "white", multicolor_blend: "black", blend_type:"stamprim") }
opacity_textbox_image :=
{
set_alpha(card_textbox(), alpha: get_alpha_percentage(styling.textbox_opacity_percentage, default: 70))
}
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 }
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_image_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_image_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_image_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_image_coordinates); if length(split) > 3 and split.3 != "" then clamp(split.3, maximum: 2000, minimum: 0) else 0 }
############################################################## Extra style options
include file: /magic-modules.mse-include/texts/styling_fields
styling field:
type: text
name: popout image 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 image 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: rule text color
description: Use the specified color for the rule text.
choice:
name: black
color: rgb(0,0,0)
choice:
name: white
color: rgb(255,255,255)
initial: white
styling field:
type: text
name: textbox opacity percentage
description: Set the opacity percentage for the rules textbox. Opaque is 100, transparent is 0, default is 70.
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/stamps/styling_fields
include file: /magic-modules.mse-include/rarities/styling_fields
include file: /magic-modules.mse-include/watermarks/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 field:
type: boolean
name: colored border
description: Tint the border with the card's color?
initial: yes
include file: /magic-modules.mse-include/information/styling_fields
styling field:
type: package choice
name: casting cost mana symbols
description: Mana symbols used for casting cost, name, banner, fuse and transformation reminder.
match: magic-mana-*.mse-symbol-font
initial: magic-mana-eldraine-enchanting-tales.mse-symbol-font
styling field:
type: package choice
name: text box mana symbols
description: Mana symbols used inside rule text.
match: magic-mana-*.mse-symbol-font
initial: magic-mana-eldraine-enchanting-tales.mse-symbol-font
styling field:
type: boolean
name: use ancestral mana symbols
description: Enables ancestral's modified generic mana.
initial: no
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: choice
name: tap symbol
description: What tap and untap symbols should be used on cards?
choice: modern
choice: old
choice: diagonal T
initial: modern
styling style:
use ancestral mana symbols:
choice images:
yes: /magic-modules.mse-include/symbol-fonts/generic_ancestral.png
no: /magic-modules.mse-include/symbol-fonts/generic_normal.png
use guild mana symbols:
choice images:
yes: /magic-modules.mse-include/symbol-fonts/hybrid_guild.png
no: /magic-modules.mse-include/symbol-fonts/hybrid_normal.png
tap symbol:
render style: both
choice images:
modern: /magic-modules.mse-include/symbol-fonts/tap_new.png
old: /magic-modules.mse-include/symbol-fonts/tap_old.png
diagonal T: /magic-modules.mse-include/symbol-fonts/tap_older.png
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
include file: /magic-modules.mse-include/alias/card_fields_under
card style:
############################# Background stuff
border color:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 100
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: { if alias_enabled() then "alias_mask.png" else "card_mask.png" }
############################# Image
image:
left: 0
top: { if styling.stretch_image_to_whole_card then 0 else 56 }
width: { stylesheet.card_width }
height: { if styling.stretch_image_to_whole_card then stylesheet.card_height else if get_alpha_percentage(styling.textbox_opacity_percentage, default: 70) <= 0.995 then 956 else 691 }
z index: 0
mask: { crop("image_mask_full.png", offset_x: 0, offset_y: if styling.stretch_image_to_whole_card then 0 else 56, width: 744, height: if styling.stretch_image_to_whole_card then stylesheet.card_height else if get_alpha_percentage(styling.textbox_opacity_percentage, default: 70) <= 0.995 then 956 else 691) }
mainframe image:
left: { popout_left() }
top: { popout_top() }
width: { popout_width() }
height: { popout_height() }
z index: 1010
############################# Text box
text:
left: 65
top: { 648 + chop_top() + body_font_vertical() }
right: 677
bottom: { 951 - chop_bot() }
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 == "<i-flavor></i-flavor>" 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: 12
color: { body_font_color() }
symbol font:
name: { styling.text_box_mana_symbols }
size: { body_font_size() }
scale down to: 12
############################# PT
pt:
left: 594
top: { 929 + pt_font_vertical() }
width: 93
height: 51
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: text box
script: card.card_color
editable: false
save value: false
show statistics: false
extra card field:
type: choice
name: pt box
script: card.card_color
editable: false
save value: false
show statistics: false
extra card field:
type: choice
name: pt shadow
editable: false
save value: false
show statistics: false
choice: pt shadow
extra card field:
type: choice
name: card stamp rim
script: card.card_color
editable: false
save value: false
show statistics: false
extra card field:
type: color
name: card stamp background border
script: card.border_color
editable: false
save value: false
show statistics: false
extra card field:
type: choice
name: card stamp colored border
editable: false
save value: false
show statistics: false
choice: card stamp colored border
extra card field:
type: choice
name: card colored border
editable: false
save value: false
show statistics: false
choice: card colored border
extra card style:
text box:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 100
render style: image
image: { opacity_textbox_image() }
pt box:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 810
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()
pt shadow:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 800
visible: { card.pt != "" }
render style: image
image: pt_shadow.png
card stamp rim:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 710
visible: { is_stamped() }
render style: image
image: { if stamp_shape() == "triangle" then card_ubstamprim() else card_stamprim() }
card stamp background border:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 700
visible: { is_stamped() }
mask: {"border_stamp_" + (if stamp_shape() == "triangle" then "tri_" else "") + "mask.png" }
card stamp colored border:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 701
visible: { is_stamped() and styling.colored_border }
render style: image
image: { card_border() }
mask: {"border_stamp_" + (if stamp_shape() == "triangle" then "tri_" else "") + "mask.png" }
card colored border:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 101
visible: { styling.colored_border }
render style: image
image: { card_border() }
mask: border_mask.png