Files
magic-set-editor-fork/data/magic-m15-secret-lair-gatewatch.mse-style/style
2025-05-13 20:25:14 -05:00

1232 lines
39 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
mse version: 2.1.2
game: magic
short name: The Gatewatch
full name: Secret Lair
icon: card_sample.png
position hint: 096
version: 2024-10-01
depends on:
package: magic.mse-game
version: 2014-06-25
depends on:
package: magic-modules.mse-include
version: 2024-10-01
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-mana-secret-lair-gatewatch.mse-symbol-font
version: 2023-09-19
depends on:
package: magic-mana-circleless-colorable.mse-symbol-font
version: 2023-09-19
depends on:
package: magic-mana-circleless-colorable-baloo.mse-symbol-font
version: 2023-09-19
depends on:
package: magic-mainframe-extras.mse-include
version: 2007-09-23
card width: 1489
card height: 1039
card dpi: 297
### blanks by GenevensiS
### code by GenevensiS
############################################################## Extra scripts
init script:
card_shape := { "double faced planeswalker" }
faces_coordinates :=
{
[
[
left: 0,
top: 0,
width: 744,
height: 1039
],
[
left: 745,
top: 0,
width: 744,
height: 1039
],
]
}
swap_fonts_pt_default :=
[
name: {"Baloo Regular"},
size: { if styling.stats_type == "PT" then 58.0 else 66.0 },
color: { rgba(0,0,0,200) },
vertical: {0},
italic: {""}
]
swap_fonts_pt2_default :=
[
name: {"Baloo Regular"},
size: { if styling.stats_type == "PT" then 35.0 else 38.0 },
color: { rgba(195,148,120,160) },
vertical: {0},
italic: {""}
]
swap_fonts_body_default :=
[
name: {"Futura Medium BT"},
size: {26.0},
color: {rgb(17,47,49)},
vertical: {0},
italic: {"Futura Medium Italic BT"}
]
swap_fonts_body2_src := { styling.custom_position_font or else "" }
swap_fonts_body2_default :=
[
name: {"Baloo Regular"},
size: { if contains(card.level_12_text, match: "\n") then 17 else 22 },
color: {rgba(0,0,0,210)},
vertical: {0},
italic: {""}
]
typeline_face_1 := { 2 }
indicator_offset_top_1 := { 268 }
indicator_offset_size_1 := { 6 }
swap_fonts_type_default :=
[
name: {"the#V$NT"},
size: {42.5},
color: { rgba(195,148,120,160) },
vertical: {0},
italic: {""}
]
swap_fonts_name_default :=
[
name: {"DharmaGothicModified-Heavy"},
size: {50.0},
color: {"white"},
vertical: {0},
italic: {""}
]
swap_fonts_name2_default :=
[
name: {"DharmaGothicModified-Heavy"},
size: {48.0},
color: { rgba(195,148,120,160) },
vertical: {0},
italic: {""}
]
card_full_name_default := { card.name }
card_full_name := { card.name }
information_secondary_shift_with_pt_1 := { false }
information_secondary_shift_with_pt_2 := { false }
card_stamp_offset_top_1 := { 2 }
template_prefix :=
[
card: "card/",
stamprim: "stamprim/",
identity: "/magic-modules.mse-include/indicators/",
loyalty: "loyalty/",
logo: "logo/"
]
template_suffix :=
[
card: "card.png",
stamprim: "stamprim.png",
identity: "identity.png",
loyalty: "loyalty.png",
logo: "logo.png"
]
template :=
{
if type == "loyalty" then crop_safe("loyalty/" + input + "loyalty.png", offset_x: 0, offset_y: 300-move_baseball(), width: 744, height: 1039, max_x: 744, max_y: 1839)
else template_prefix[type] + input + template_suffix[type]
}
#Don't do land_template := template or MSE will crash (probably because of new_blends line 839)
land_template :=
{
if type == "loyalty" then crop_safe("loyalty/" + input + "loyalty.png", offset_x: 0, offset_y: 300-move_baseball(), width: 744, height: 1039, max_x: 744, max_y: 1839)
else template_prefix[type] + input + template_suffix[type]
}
card_background := { color_background(input: card.card_color, type: "card", base_hybrid: card_hybrid, hybrid_blend: "white", artifact_blend: "white", multicolor_blend: "black") }
card_loyaltybox := { color_background(input: card.card_color, type: "loyalty", base_hybrid: card_hybrid, hybrid_blend: "white", artifact_blend: "white", multicolor_blend: "black") }
card_stamprim := { color_background(input: card.card_color, type: "stamprim", base_hybrid: card_hybrid, hybrid_blend: "white", artifact_blend: "white", multicolor_blend: "black") }
card_logo := { color_background(input: card.card_color, type: "logo", base_hybrid: card_hybrid, hybrid_blend: "white", artifact_blend: "white", multicolor_blend: "black") }
is_promo := { styling.promo }
is_unsorted := { styling.remove_from_autocount }
is_crowned := { styling.gatewatch_logo == "yes" or (styling.gatewatch_logo == "if legendary" and lang_setting("is_legendary")(card.super_type)) }
mainframe_walker :=
{
true
}
mainframe_walker_text_script :=
{
count := abilities_count()
if count == 6 then combined_editor(field1: card.level_1_text, separator1: "<line>\n</line>", field2: card.level_2_text, separator2: "<line>\n</line>", field3: card.level_3_text, separator3: "<line>\n</line>", field4: card.level_4_text, separator4: "<line>\n</line>", field5: card.level_5_text, separator5: "<line>\n</line>", field6: card.level_6_text)
else if count == 5 then combined_editor(field1: card.level_1_text, separator1: "<line>\n</line>", field2: card.level_2_text, separator2: "<line>\n</line>", field3: card.level_3_text, separator3: "<line>\n</line>", field4: card.level_4_text, separator4: "<line>\n</line>", field5: card.level_5_text)
else if count == 4 then combined_editor(field1: card.level_1_text, separator1: "<line>\n</line>", field2: card.level_2_text, separator2: "<line>\n</line>", field3: card.level_3_text, separator3: "<line>\n</line>", field4: card.level_4_text)
else if count == 3 then combined_editor(field1: card.level_1_text, separator1: "<line>\n</line>", field2: card.level_2_text, separator2: "<line>\n</line>", field3: card.level_3_text)
else if count == 2 then combined_editor(field1: card.level_1_text, separator1: "<line>\n</line>", field2: card.level_2_text)
else forward_editor(field: card.level_1_text)
}
margin_left :=
{
if input == "lv1" then (if card.loyalty_cost_1 == "" then 0 else 600)
else if input == "lv2" then (if card.loyalty_cost_2 == "" then 0 else 600)
else if input == "lv3" then (if card.loyalty_cost_3 == "" then 0 else 600)
else if input == "lv4" then (if card.loyalty_cost_4 == "" then 0 else 600)
else if input == "lv5" then (if card.loyalty_cost_5 == "" then 0 else 600)
else if input == "lv6" then (if card.loyalty_cost_6 == "" then 0 else 600)
else 0
}
text_filter := text_filter + {apply_margins(input, name:margin_code)} + {add_spacers(input, name:margin_code)}
add_spacers :=
{
#The 'then ""' has a zero-width space inside
if input == "" and level_is_active(name) then ""
else input
}
level_is_active :=
{
if input == "lv6" then abilities_count() >= 6
else if input == "lv5" then abilities_count() >= 5
else if input == "lv4" then abilities_count() >= 4
else if input == "lv3" then abilities_count() >= 3
else if input == "lv2" then abilities_count() >= 2
else true
}
ability_top :=
{
if card_style.text.layout.blocks[input].bottom or else 0 > 0 then to_int(card_style.text.top) + to_int(card_style.text.layout.blocks[input].top)
else stylesheet.card_height * 1.2
}
ability_center :=
{
if card_style.text.layout.blocks[input].bottom or else 0 > 0 then to_int(card_style.text.top) + to_int(card_style.text.layout.blocks[input].middle)
else stylesheet.card_height * 1.2
}
ability_bottom :=
{
if card_style.text.layout.blocks[input].bottom or else 0 > 0 then to_int(card_style.text.top) + to_int(card_style.text.layout.blocks[input].bottom)
else stylesheet.card_height * 1.2
}
abilities_count :=
{
to_int(styling.number_of_textboxes) or else digital_map[styling.number_of_textboxes] or else 6
}
loyal_move := { split := split_comma(styling.move_loyalty_costs); if length(split) > input-1 and split[input-1] != "" and split[input-1] != "-" then clamp(split[input-1], maximum:700, minimum:-700) else 0 }
separator_move := { split := split_comma(styling.move_separators); if length(split) > input-1 and split[input-1] != "" and split[input-1] != "-" then clamp(split[input-1], maximum:500, minimum:-500) else 0 }
stripe_top := { -to_int(( -ability_bottom(input-1) - ability_top(input) )/2) - 6 - ( -separator_move(input)) }
rarity_right := { split := split_comma(styling.rarity_offsets); (if length(split) > 0 and split.0 != "" then clamp(split.0, minimum: -500, maximum: 500) else 0) + 1428 }
rarity_top := { split := split_comma(styling.rarity_offsets); (if length(split) > 1 and split.1 != "" then clamp(split.1, minimum: -500, maximum: 500) else 0) + 860 }
rarity_size := { split := split_comma(styling.rarity_offsets); (if length(split) > 2 and split.2 != "" then clamp(split.2, minimum: -52, maximum: 100) else 0) + 52 }
rarity_left := { rarity_right() - rarity_size() }
popout_left := { split := split_comma(styling.popout_image_coordinates); if length(split) > 3 and split.0 != "" then clamp(split.0, minimum: -500, maximum: 1500) else 0 }
popout_top := { split := split_comma(styling.popout_image_coordinates); if length(split) > 3 and split.1 != "" then clamp(split.1, minimum: -500, maximum: 1100) else 0 }
popout_width := { split := split_comma(styling.popout_image_coordinates); if length(split) > 3 and split.2 != "" then clamp(split.2, minimum: 0, maximum: 2000) else 0 }
popout_height := { split := split_comma(styling.popout_image_coordinates); if length(split) > 3 and split.3 != "" then clamp(split.3, minimum: 0, maximum: 1500) else 0 }
move_baseball :=
{
clamp((to_int(styling.move_baseball) or else 0), minimum: -500, maximum: 300)
}
back_text_font_size := { if styling.back_text_font_size_cap == "" then 26 else clamp(styling.back_text_font_size_cap or else 26, minimum: 2, maximum: 50) }
symbol_font_color := { rgba(17,47,49,255) }
symbol_font_alpha := { 1.0 }
symbol_font_baloo_color := { rgba(195,148,120,160) }
symbol_font_baloo_alpha := { 0.63 }
############################################################## Extra style options
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: choice
name: stats type
description: Should there be loyalty or power/toughness?
choice: Loyalty
choice: PT
choice: None
initial: Loyalty
styling field:
type: boolean
name: back image filter
description: Desaturate the back image and tint it blue-ish?
initial: no
styling field:
type: choice
name: number of textboxes
description: Number of textboxes for abilities and passives. Modify content of textboxes if this has trouble updating after being changed.
choice: 1
choice: 2
choice: 3
choice: 4
choice: 5
choice: 6
initial: 3
styling field:
type: choice
name: center text
description: When to center text (short text means only on one-line cards with no flavor text)
choice: always
choice: short text only
choice: never
initial: never
styling field:
type: text
name: move separators
description: Moves the limits between abilities down by this many pixels. Use negatives to move up. Formatted as "1,2,3,4,5"
styling field:
type: text
name: move loyalty costs
description: Moves loyalty costs down by this many pixels. Use negatives to move up. Formatted as "1,2,3,4,5,6"
styling field:
type: text
name: move baseball
description: Move the baseball down this many pixels. Use negatives to move up.
styling field:
type: choice
name: gatewatch logo
description: Use the gatewatch logo?
choice: yes
choice: if legendary
choice: no
initial: yes
styling field:
type: boolean
name: trophy
description: Use the trophy for the position?
initial: no
styling field:
type: boolean
name: rarity
description: Should the rarity symbol be visible in the typeline?
initial: no
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: 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: yes
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 field:
type: package choice
name: casting cost front mana symbols
description: Symbols used in the casting cost.
match: magic-mana-*.mse-symbol-font
initial: magic-mana-secret-lair-gatewatch.mse-symbol-font
styling field:
type: package choice
name: casting cost back mana symbols
description: Symbols used in the casting cost.
match: magic-mana-*.mse-symbol-font
initial: magic-mana-circleless-colorable-baloo.mse-symbol-font
styling field:
type: package choice
name: text box mana symbols
description: Symbols used in the rule text and flavor text.
match: magic-mana-*.mse-symbol-font
initial: magic-mana-circleless-colorable.mse-symbol-font
styling field:
type: boolean
name: apply custom fonts
description: Enable to attempt to use custom fonts given below
initial: no
styling field:
type: text
name: custom name font
description: Font used for the name on the front of the card. Formatted as "font name;font size;font color;vertical offset;italic font name" last 4 are optional. color can be a name or R,G,B,A numbers.
styling field:
type: text
name: custom name 2 font
description: Font used for the name on the back of the card. Formatted as "font name;font size;font color;vertical offset;italic font name" last 4 are optional. color can be a name or R,G,B,A numbers.
styling field:
type: text
name: custom type font
description: Font used for the type on the back of the card. Formatted as "font name;font size;font color;vertical offset;italic font name" last 4 are optional. color can be a name or R,G,B,A numbers.
styling field:
type: text
name: custom body font
description: Font used for the rule text. Formatted as "font name;font size;font color;vertical offset;italic font name" last 4 are optional. color can be a name or R,G,B,A numbers.
styling field:
type: text
name: custom pt font
description: Font used for the pt or loyalty in the baseball. Formatted as "font name;font size;font color;vertical offset;italic font name" last 4 are optional. color can be a name or R,G,B,A numbers.
styling field:
type: text
name: custom pt 2 font
description: Font used for the pt or loyalty on the back of the card. Formatted as "font name;font size;font color;vertical offset;italic font name" last 4 are optional. color can be a name or R,G,B,A numbers.
styling field:
type: text
name: custom position font
description: Font used for the position on the front of the card. Formatted as "font name;font size;font color;vertical offset;italic font name" last 4 are optional. color can be a name or R,G,B,A numbers.
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
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
############################################################## Card fields
include file: /magic-modules.mse-include/information/card_fields_dfc
include file: /magic-modules.mse-include/stamps/card_fields
include file: /magic-modules.mse-include/corners/card_fields_dfc
include file: /magic-modules.mse-include/watermarks/card_fields
card style:
############################# Background stuff
border color:
left: { face_coordinates_map(1).left }
top: { face_coordinates_map(1).top }
width: { face_coordinates_map(1).width }
height: { face_coordinates_map(1).height }
z index: 210
visible: { not styling.colored_border }
mask: border_mask.png
card color:
left: { face_coordinates_map(1).left }
top: { face_coordinates_map(1).top }
width: { face_coordinates_map(1).width }
height: { face_coordinates_map(1).height }
z index: 200
popup style: in place
render style: image
image: { card_background() }
mask: card_mask.png
############################# Name line
name:
left: 24
top: { 863 + name_font_vertical() }
right: 720
height: 95
z index: 1000
alignment: center middle shrink-overflow
font:
name: { name_font() }
italic name: { name_font_italic() }
size: { name_font_size() }
scale down to: 6
color: { name_font_color() }
name 2:
left: { 809 + to_int(card_style.casting_cost_2.content_width) }
top: { 429 + name2_font_vertical() }
right: { if styling.stats_type == "None" then 1420 else 1332 }
height: 101
z index: 1000
alignment: { if styling.stats_type == "None" then "right middle shrink-overflow" else "center middle shrink-overflow" }
font:
name: { name2_font() }
italic name: { name2_font_italic() }
size: { name2_font_size() }
scale down to: 6
color: { name2_font_color() }
casting cost:
left: 643
top: 121
width: 110
height: 600
z index: 1010
alignment: top left
direction: vertical
#mask: casting_cost_mask.png
always symbol: true
font:
name: MPlantin
size: 60
scale down to: 60
color: black
symbol font:
name: { styling.casting_cost_front_mana_symbols }
size: 60
scale down to: 60
casting cost 2:
left: 800
top: 446
width: { max(60, card_style.casting_cost_2.content_width) + 10 }
height: 61
z index: 1010
alignment: left middle
always symbol: true
font:
name: MPlantin
size: 40
scale down to: 30
color: black
symbol font:
name: { styling.casting_cost_back_mana_symbols }
size: 40
scale down to: 30
############################# Image
image:
left: { if styling.stretch_image_to_whole_card then 0 else 58 }
top: { if styling.stretch_image_to_whole_card then 0 else 86 }
width: { if styling.stretch_image_to_whole_card then stylesheet.card_width else 628 }
height: { if styling.stretch_image_to_whole_card then stylesheet.card_height else 751 }
z index: 0
image 2:
left: 1134
top: 48
width: 299
height: 377
z index: 0
mask: back_image_mask.png
mainframe image:
left: { popout_left() }
top: { popout_top() }
width: { popout_width() }
height: { popout_height() }
z index: 2000
############################# Card type
indicator:
left: { indicator_left_1() + typeline_offset_left_1() }
top: { indicator_top_1() + typeline_offset_top_1() }
width: { indicator_size_1() + typeline_offset_height_1() }
height: { indicator_size_1() + typeline_offset_height_1() }
z index: 1000
render style: image
visible: { (not typeline_disabled_1()) and (not indicator_disabled_1()) and has_identity() }
image: { module_identity(card.indicator) }
type:
left: { if styling.rarity then (if has_identity() then 854 else 809) else 862 }
top: { 861 + type_font_vertical() }
right: { if styling.rarity then (if set.shorten_types_for_rarity then max(1100,min(1425, rarity_left()-3)) else 1425) else 1372 }
height: 53
z index: 1010
alignment: middle left shrink-overflow
font:
name: { type_font() }
italic name: { type_font_italic() }
size: { type_font_size() }
scale down to: 6
color: { type_font_color() }
separator color: red
rarity:
right: { rarity_right() }
top: { rarity_top() }
width: { rarity_size() }
height: { rarity_size() }
z index: 1000
visible: { styling.rarity }
alignment: middle right
render style: image
include file: /magic-modules.mse-include/rarities/choice_images
############################# Text box
text:
left: 807
top: { 530 + body_font_vertical() }
width: 620
height: 308
z index: 1000
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: 2.2
alignment:
script:
if (styling.center_text == "short text only" 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
flavor_text:
left: 806
top: { 262 + body_font_vertical() }
width: 312
height: 158
z index: 1000
line height hard: 1.3
line height line: 1.6
line height soft: 1.1
line height hard max: 1.5
line height line max: 2
alignment: left middle shrink-overflow
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
level_11_text:
left: 806
top: { 53 + body_font_vertical() }
width: 345
height: 188
z index: 1000
mask: text_mask.png
line height hard: 1.3
line height line: 1.5
line height soft: 1.1
line height hard max: 1.5
line height line max: 1.6
alignment: middle left shrink-overflow
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
level_12_text:
left: { if styling.trophy then 36 else 66 }
top: { (if styling.trophy then 807 else 806) + body_font_vertical() }
width: { if styling.trophy then 117 else 128 }
height: { if styling.trophy then 47 else 45 }
z index: 1000
line height hard: 1
line height line: 1.5
line height soft: 0.6
line height hard max: 1.3
line height line max: 1.6
alignment: center middle shrink-overflow
font:
name: { body2_font() }
italic name: { body2_font_italic() }
size: { body2_font_size() }
scale down to: 12
color: { body2_font_color() }
symbol font:
name: { styling.text_box_mana_symbols }
size: { body2_font_size() }
scale down to: 12
loyalty cost 1:
left: 804
top: { ability_center(0) - 21 - ( -loyal_move(1)) + body_font_vertical() }
width: { if abilities_count() >= 1 then 46 else 0 }
height: 44
z index: 1010
alignment: center middle shrink-overflow
font:
name: { body_font() }
italic name: { body_font_italic() }
size: 26
scale down to: 12
color: { body_font_color() }
loyalty cost 2:
left: 804
top: { ability_center(1) - 21 - ( -loyal_move(2)) + body_font_vertical() }
width: { if abilities_count() >= 2 then 46 else 0 }
height: 44
z index: 1010
alignment: center middle shrink-overflow
font:
name: { body_font() }
italic name: { body_font_italic() }
size: 26
scale down to: 12
color: { body_font_color() }
loyalty cost 3:
left: 804
top: { ability_center(2) - 21 - ( -loyal_move(3)) + body_font_vertical() }
width: { if abilities_count() >= 3 then 46 else 0 }
height: 44
z index: 1010
alignment: center middle shrink-overflow
font:
name: { body_font() }
italic name: { body_font_italic() }
size: 26
scale down to: 12
color: { body_font_color() }
loyalty cost 4:
left: 804
top: { ability_center(3) - 21 - ( -loyal_move(4)) + body_font_vertical() }
width: { if abilities_count() >= 4 then 46 else 0 }
height: 44
z index: 1010
alignment: center middle shrink-overflow
font:
name: { body_font() }
italic name: { body_font_italic() }
size: 26
scale down to: 12
color: { body_font_color() }
loyalty cost 5:
left: 804
top: { ability_center(4) - 21 - ( -loyal_move(5)) + body_font_vertical() }
width: { if abilities_count() >= 5 then 46 else 0 }
height: 44
z index: 1010
alignment: center middle shrink-overflow
font:
name: { body_font() }
italic name: { body_font_italic() }
size: 26
scale down to: 12
color: { body_font_color() }
loyalty cost 6:
left: 804
top: { ability_center(5) - 21 - ( -loyal_move(6)) + body_font_vertical() }
width: { if abilities_count() >= 6 then 46 else 0 }
height: 44
z index: 1010
alignment: center middle shrink-overflow
font:
name: { body_font() }
italic name: { body_font_italic() }
size: 26
scale down to: 12
color: { body_font_color() }
############################# PT
pt:
left: 1353
top: { 435 + pt2_font_vertical() }
width: { if styling.stats_type == "PT" then 66 else 0 }
height: 84
z index: 1020
alignment: center middle shrink-overflow
font:
name: { pt2_font() }
italic name: { pt2_font_italic() }
size: { pt2_font_size() }
scale down to: 12
color: { pt2_font_color() }
separator color: red
loyalty:
left: 1353
top: { 437 + pt2_font_vertical() }
width: { if styling.stats_type == "Loyalty" then 66 else 0 }
height: 84
z index: 1020
alignment: center middle shrink-overflow
font:
name: { pt2_font() }
italic name: { pt2_font_italic() }
size: { pt2_font_size() }
scale down to: 12
color: { pt2_font_color() }
############################################################## Extra card fields
extra card field:
type: choice
name: position
editable: false
save value: false
show statistics: false
choice: position
extra card field:
type: choice
name: back
editable: false
save value: false
show statistics: false
choice: back
extra card field:
type: choice
name: back stats
editable: false
save value: false
show statistics: false
choice: back stats
extra card field:
type: choice
name: back star left
editable: false
save value: false
show statistics: false
choice: back star left
extra card field:
type: choice
name: back star right
editable: false
save value: false
show statistics: false
choice: back star right
extra card field:
type: choice
name: crown
script: card.card_color
editable: false
save value: false
show statistics: false
extra card field:
type: choice
name: loyalty box
editable: false
save value: false
show statistics: false
choice: loyalty box
extra card field:
type: choice
name: card stamp background
editable: false
save value: false
show statistics: false
choice: card stamp background
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: foil layer
editable: false
save value: false
show statistics: false
choice: foil layer
extra card field:
type: text
name: colon 1
editable: false
save value: false
script: ":"
extra card field:
type: text
name: colon 2
editable: false
save value: false
script: ":"
extra card field:
type: text
name: colon 3
editable: false
save value: false
script: ":"
extra card field:
type: text
name: colon 4
editable: false
save value: false
script: ":"
extra card field:
type: text
name: colon 5
editable: false
save value: false
script: ":"
extra card field:
type: text
name: colon 6
editable: false
save value: false
script: ":"
extra card field:
type: choice
name: textbox stripe separator 1
editable: false
save value: false
choice: textbox stripe separator 1
extra card field:
type: choice
name: textbox stripe separator 2
editable: false
save value: false
choice: textbox stripe separator 2
extra card field:
type: choice
name: textbox stripe separator 3
editable: false
save value: false
choice: textbox stripe separator 3
extra card field:
type: choice
name: textbox stripe separator 4
editable: false
save value: false
choice: textbox stripe separator 4
extra card field:
type: choice
name: textbox stripe separator 5
editable: false
save value: false
choice: textbox stripe separator 5
extra card field:
type: choice
name: textbox stripe 1
editable: false
save value: false
show statistics: false
choice: textbox stripe 1
extra card field:
type: choice
name: textbox stripe 2
editable: false
save value: false
show statistics: false
choice: textbox stripe 2
extra card field:
type: choice
name: textbox stripe 3
editable: false
save value: false
show statistics: false
choice: textbox stripe 3
extra card field:
type: choice
name: filtered image 2
editable: false
save value: false
show statistics: false
choice: filtered image 2
extra card field:
type: text
name: mirror stat
editable: true
save value: true
default: if styling.stats_type == "PT" then card.pt else card.loyalty
extra card style:
position:
left: { face_coordinates_map(1).left }
top: { face_coordinates_map(1).top }
width: { face_coordinates_map(1).width }
height: { face_coordinates_map(1).height }
z index: 310
### There is a zero width space in the second ""
visible: { card.level_12_text != "" and card.level_12_text != "" }
render style: image
image: { if styling.trophy then "trophy.png" else "position.png" }
back:
left: { face_coordinates_map(2).left }
top: { face_coordinates_map(2).top }
width: { face_coordinates_map(2).width }
height: { face_coordinates_map(2).height }
z index: 200
render style: image
image: back.png
back stats:
left: { face_coordinates_map(2).left }
top: { face_coordinates_map(2).top }
width: { face_coordinates_map(2).width }
height: { face_coordinates_map(2).height }
z index: 210
render style: image
image: { if styling.stats_type == "None" then "" else "back_" + styling.stats_type + ".png" }
back star left:
left: { face_coordinates_map(2).left }
top: { face_coordinates_map(2).top }
width: { face_coordinates_map(2).width }
height: { face_coordinates_map(2).height }
z index: 210
render style: image
image: { if styling.rarity or has_identity() then "" else "back_star_left.png" }
back star right:
left: { face_coordinates_map(2).left }
top: { face_coordinates_map(2).top }
width: { face_coordinates_map(2).width }
height: { face_coordinates_map(2).height }
z index: 210
render style: image
image: { if styling.rarity then "" else "back_star_right.png" }
crown:
left: { face_coordinates_map(1).left }
top: { face_coordinates_map(1).top }
width: { face_coordinates_map(1).width }
height: { face_coordinates_map(1).height }
z index: 310
visible: { is_crowned() }
render style: image
image: { card_logo() }
loyalty box:
left: { face_coordinates_map(1).left }
top: { face_coordinates_map(1).top }
width: { face_coordinates_map(1).width }
height: { face_coordinates_map(1).height }
z index: 810
visible: { (styling.stats_type == "PT" or styling.stats_type == "Loyalty") and extra_card.mirror_stat != "" }
render style: image
image: { card_loyaltybox() }
card stamp background:
left: { face_coordinates_map(1).left }
top: { face_coordinates_map(1).top }
width: { face_coordinates_map(1).width }
height: { face_coordinates_map(1).height }
z index: 700
visible: { is_stamped() }
render style: image
image: { card_stamprim() }
card stamp background border:
left: { face_coordinates_map(1).left }
top: { face_coordinates_map(1).top }
width: { face_coordinates_map(1).width }
height: { face_coordinates_map(1).height }
z index: 710
visible: { is_stamped() and not styling.colored_border }
mask: border_stamp_mask.png
foil layer:
left: { face_coordinates_map(1).left }
top: { face_coordinates_map(1).top }
width: { face_coordinates_map(1).width }
height: { face_coordinates_map(1).height }
z index: 3000
visible: { styling.overlay != "none" and styling.overlay != "" }
render style: image
image: { if styling.overlay == "" then "" else styling.overlay + "/overlay.png" }
colon 1:
left: 852
top: { ability_center(0) - 23 - ( -loyal_move(1)) }
width: 11
height: 44
z index: 1010
visible: { card.loyalty_cost_1 != "" }
font:
name: Futura Medium BT
size: 28
color: { rgb(17,47,49) }
alignment: center middle
colon 2:
left: 852
top: { ability_center(1) - 23 - ( -loyal_move(2)) }
width: 11
height: 44
z index: 1010
visible: { card.loyalty_cost_2 != "" and abilities_count() >= 2 }
font:
name: Futura Medium BT
size: 28
color: { rgb(17,47,49) }
alignment: center middle
colon 3:
left: 852
top: { ability_center(2) - 23 - ( -loyal_move(3)) }
width: 11
height: 44
z index: 1010
visible: { card.loyalty_cost_3 != "" and abilities_count() >= 3 }
font:
name: Futura Medium BT
size: 28
color: { rgb(17,47,49) }
alignment: center middle
colon 4:
left: 852
top: { ability_center(3) - 23 - ( -loyal_move(4)) }
width: 11
height: 44
z index: 1010
visible: { card.loyalty_cost_4 != "" and abilities_count() >= 4 }
font:
name: Futura Medium BT
size: 28
color: { rgb(17,47,49) }
alignment: center middle
colon 5:
left: 852
top: { ability_center(4) - 23 - ( -loyal_move(5)) }
width: 11
height: 44
z index: 1010
visible: { card.loyalty_cost_5 != "" and abilities_count() >= 5 }
font:
name: Futura Medium BT
size: 28
color: { rgb(17,47,49) }
alignment: center middle
colon 6:
left: 852
top: { ability_center(5) - 23 - ( -loyal_move(6)) }
width: 11
height: 44
z index: 1010
visible: { card.loyalty_cost_6 != "" and abilities_count() >= 6 }
font:
name: Futura Medium BT
size: 28
color: { rgb(17,47,49) }
alignment: center middle
textbox stripe separator 1:
left: { face_coordinates_map(2).left }
width: { face_coordinates_map(2).width }
top: { stripe_top(1) }
height: 14
z index: 220
visible: { abilities_count() >= 2 }
render style: image
image: back_separator.png
textbox stripe separator 2:
left: { face_coordinates_map(2).left }
width: { face_coordinates_map(2).width }
top: { stripe_top(2) }
height: 14
z index: 220
visible: { abilities_count() >= 3 }
render style: image
image: back_separator.png
textbox stripe separator 3:
left: { face_coordinates_map(2).left }
width: { face_coordinates_map(2).width }
top: { stripe_top(3) }
height: 14
z index: 220
visible: { abilities_count() >= 4 }
render style: image
image: back_separator.png
textbox stripe separator 4:
left: { face_coordinates_map(2).left }
width: { face_coordinates_map(2).width }
top: { stripe_top(4) }
height: 14
z index: 220
visible: { abilities_count() >= 5 }
render style: image
image: back_separator.png
textbox stripe separator 5:
left: { face_coordinates_map(2).left }
width: { face_coordinates_map(2).width }
top: { stripe_top(5) }
height: 14
z index: 220
visible: { abilities_count() >= 6 }
render style: image
image: back_separator.png
textbox stripe 1:
left: { face_coordinates_map(2).left }
width: { face_coordinates_map(2).width }
top: { stripe_top(1)+3 }
bottom: { stripe_top(2)+3 }
z index: 210
visible: { abilities_count() >= 2 }
render style: image
image: { crop_safe("back_stripe.png", offset_x: 0, offset_y: stripe_top(1)+3, width: 744, height: stripe_top(2) - stripe_top(1), max_x: 744, max_y: 1839) }
textbox stripe 2:
left: { face_coordinates_map(2).left }
width: { face_coordinates_map(2).width }
top: { stripe_top(3)+3 }
bottom: { stripe_top(4)+3 }
z index: 210
visible: { abilities_count() >= 4 }
render style: image
image: { crop_safe("back_stripe.png", offset_x: 0, offset_y: stripe_top(3)+3, width: 744, height: stripe_top(4) - stripe_top(3), max_x: 744, max_y: 1839) }
textbox stripe 3:
left: { face_coordinates_map(2).left }
width: { face_coordinates_map(2).width }
top: { stripe_top(5)+3 }
bottom: 844
z index: 210
visible: { abilities_count() >= 6 }
render style: image
image: { crop_safe("back_stripe.png", offset_x: 0, offset_y: stripe_top(5)+3, width: 744, height: 844 - (stripe_top(5)+3), max_x: 744, max_y: 1839) }
filtered image 2:
left: 1134
top: 48
width: 299
height: 377
z index: 1
visible: { styling.back_image_filter }
render style: image
image: { combine_blend(image1: saturate(card.image_2, amount: -1), image2: "tint.png", combine: "add") }
mirror stat:
left: 563
top: { 696 + move_baseball() + pt_font_vertical() }
height: 142
z index: 1020
alignment: center middle shrink-overflow
font:
name: { pt_font() }
italic name: { pt_font_italic() }
size: { pt_font_size() }
scale down to: 12
color: { pt_font_color() }