Files
magic-set-editor-fork/data/magic-m15-meld-3in1.mse-style/style
2025-01-11 17:42:37 -06:00

836 lines
23 KiB
Plaintext

mse version: 2.0.0
game: magic
short name: EMN Meld (3-in-1)
full name: M15 Style Meld cards (3-in-1)
icon: card-sample.png
position hint: 066
installer group: magic/m15 style/double faced
version: 2024-06-07
depends on:
package: magic.mse-game
version: 2014-06-25
depends on:
package: magic-default-image.mse-include
version: 2007-09-23
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
card width: 568
card height: 523
card dpi: 150
card region:
name: minifront
x: 0
y: 0
height: 261
width: 188
card region:
name: meldpair
x: 0
y: 263
height: 261
width: 188
card region:
name: meld
x: 193
y: 0
width: 375
height: 523
card region:
name: front
x: 0
y: 0
width: 375
height: 523
card region:
name: meldback
x: 193
y: 0
width: 375
height: 523
############################################################## Extra scripts
init script:
# Load scripts for image box
include file: /magic-default-image.mse-include/scripts
# Should hybrids have a grey name?
mask_hybrid_with_land := { styling.grey_hybrid_name }
#Should multicolor lands with basic land types have a colored name?
mask_multi_land_with_color := { styling.colored_multicolor_land_name }
template_prefix := [
card: ""
pt: "/magic-modules.mse-include/pts/375 m15/"
stamp: "/magic-modules.mse-include/stamps/backs/375 round/"
ubstamp: "/magic-modules.mse-include/stamps/backs/375 ub/"
identity: "/magic-modules.mse-include/indicators/"
]
template_suffix := [
card: "card.jpg"
pt: "pt.png"
stamp: "stamp.png"
ubstamp: "stamp.png"
identity: "identity.png"
]
template := { template_prefix[type] + input + template_suffix[type] }
land_template := { template_prefix[type] + (if input == "a" then "c" else input) + "l" + template_suffix[type] }
# Use land templates for previews because they show more contrast
hybrid_previews := "land,hybrid"
# This will create two seperate card faces
card_background2 := { color_background(type:"card2", base_hybrid:card_hybrid) }
# Use the normal tap symbol
mana_t := {
if styling.tap_symbol == "old" then "old"
else if styling.tap_symbol == "diagonal T" then "older"
else "new"
}
# Use guild mana symbols?
guild_mana := { styling.use_guild_mana_symbols }
typesymbol_for := { "none" }
# Is the card a promo card?
is_promo := { styling.promo }
# Is the second card face a creature?
has_pt_2 := { card.power_2 != "" or card.toughness_2 != "" }
card_shape := { "double faced" }
faces_coordinates := {
if styling.three_cards then
[
[
left: 0,
top: 0,
width: 188,
height: 261
],
[
left: 0,
top: 263,
width: 188,
height: 261
],
[
left: 193,
top: 0,
width: 375,
height: 523
]
]
else [
[
left: 0,
top: 0,
width: 375,
height: 523
],
[
left: 193,
top: 0,
width: 375,
height: 523
]
]
}
watermark_include := "/magic-modules.mse-include/watermarks"
is_unsorted := {styling.remove_from_autocount}
transform_symbol_default := {
stylesheet
if margin_code == "transform1" then "meld"
else if margin_code == "transform2" then "meld"
else "eldrazi"
}
card_symbol_left := {
map := face_coordinates_map(face)
has_tr := (transform_symbol_field(face) != "none")
has_sym := (card_symbol_field(face) != "none")
default := if not has_sym
then 0
else if has_tr
then 9 + 18 + 28
else if has_sym
then 9 + 18
else 0
if map.width > map.height then map.left + default * map.width/523 + offset
else map.left + default * map.width/375 + offset
}
card_stamp_default := {
shape := styling.default_stamp or else set.default_stamp
stamp_behavior := styling.stamp_behavior or else set.stamp_behavior
if stamp_behavior == "default" or stamp_behavior == "flatstamped default" then stamp_behavior := set.stamp_behavior
if field > 2
then "none" #### backface doesn't have it by default
else stamp_behavior_checks[stamp_behavior](rare_face:is_rare(field:field), shape:shape)
}@(field:1)
############################################################## Set info fields
set info style:
symbol:
variation:
name: invertedcommon
border radius: 0.10
fill type: solid
fill color: rgb(255,255,255)
border color: rgb(0,0,0)
############################################################## Extra style options
styling field:
type: boolean
name: remove from autocount
description: Removes the automatic card number for specific cards, to allow for overcounted cards like in Planeswalker Decks.
initial: no
styling field:
type: boolean
name: three cards
description: Display both meld cards? (Default yes)
initial: yes
styling field:
type: boolean
name: grey hybrid name
description: Use a grey background for the name and type line on hybrid cards. This is done on real cards.
styling field:
type: boolean
name: colored multicolor land name
description: Use a colored background for the name and type on multicolor land cards with a basic land type. This is done on real cards.
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?
initial: modern
choice: modern
choice: old
choice: diagonal T
styling field:
type: package choice
name: text box mana symbols
match: magic-mana-*.mse-symbol-font
initial: magic-mana-small.mse-symbol-font
styling field:
type: choice
name: center text
description: When to center text (short text only means only on one-line cards with no flavor text)
choice: always
choice: short text only
choice: never
initial: never
styling field:
type: boolean
name: promo
description: Is this card a promo card, with the "P" rarity?
initial: no
styling field:
type: boolean
name: inverted common symbol
description: Should the common rarity symbol be inverted, like in Coldsnap?
initial: no
styling field:
type: package choice
name: overlay
description: Should there be an overlay applied, such as foil?
match: magic-overlay-*.mse-include
required: false
styling style:
use guild mana symbols:
choice images:
yes: /magic-mana-small.mse-symbol-font/mana_guild_rg.png
no: /magic-mana-small.mse-symbol-font/mana_rg.png
tap symbol:
render style: both
choice images:
modern: /magic-mana-large.mse-symbol-font/mana_t.png
old: /magic-mana-large.mse-symbol-font/mana_t_old.png
diagonal T: /magic-mana-large.mse-symbol-font/mana_t_older.png
center text:
render style: both
choice images:
always: /magic.mse-game/icons/center-all-text.png
short text only: /magic.mse-game/icons/center-short-text.png
never: /magic.mse-game/icons/center-no-text.png
inverted common symbol:
choice images:
no: { symbol_variation(symbol: set.symbol, variation: "common") }
yes: { symbol_variation(symbol: set.symbol, variation: "invertedcommon") }
############################################################## Card fields
include file: /magic-modules.mse-include/corners/card_fields_tfc
include file: /magic-modules.mse-include/information/card_fields_tfc
include file: /magic-modules.mse-include/card-symbols/card_fields_tfc
include file: /magic-modules.mse-include/symbols/card_fields_tfc
include file: /magic-modules.mse-include/stamps/card_fields_tfc
include file: /magic-modules.mse-include/stamps/stamp_back_tfc
include file: /magic-modules.mse-include/rarities/card_fields_tfc
include file: /magic-modules.mse-include/watermarks/card_fields_tfc
include file: /magic-modules.mse-include/separators/card_fields_tfc
card style:
############################# Background stuff
card color:
left: 0
top: {if styling.three_cards == "yes" then -1 else 0}
width: {if styling.three_cards == "yes" then 188 else 375}
height: {if styling.three_cards == "yes" then 262 else 523}
z index: 10
render style: image
popup style: in place
image: { card_background() }
mask: cornermask.png
card color 2:
left: 0
top: 263
width: 188
height: 262
z index: 0
render style: image
popup style: in place
image: { card_background() }
visible: { styling.three_cards }
############################# Name line
name:
left: {if styling.three_cards == "yes" then (if card.card_symbol == "none" then 30 else 40) else if card.card_symbol == "none" then 58 else 79}
top: {if styling.three_cards == "yes" then 14 else 30}
right: {if styling.three_cards == "yes" then 170 - card_style.casting_cost.content_width else 341 - card_style.casting_cost.content_width}
height: {if styling.three_cards == "yes" then 12 else 24}
alignment: bottom shrink-overflow
padding bottom: 0
z index: 900
font:
name: Beleren Bold
size: {if styling.three_cards == "yes" then 8 else 16}
color: black
name 2:
left: {if styling.three_cards == "yes" then (if card.card_symbol_2 == "none" then 30 else 40) else if card.card_symbol_2 == "none" then 58 else 79}
top: 277
right: { 170- card_style.casting_cost_2.content_width }
height: 12
alignment: bottom shrink-overflow
padding bottom: 0
z index: 900
font:
name: Beleren Bold
size: 8
color: black
visible: { styling.three_cards }
name 3:
left: { if card.card_symbol_3 == "none" then 255 else 275 }
top: 30
right: 534
height: 23
alignment: bottom shrink-overflow
padding bottom: 0
z index: 900
font:
name: Beleren Bold
size: 16
color: black
casting cost:
right: {if styling.three_cards == "yes" then 173 else 346}
top: {if styling.three_cards == "yes" then 14 else 28}
width: { max(if styling.three_cards == "yes" then 15 else 30, card_style.casting_cost.content_width) + if styling.three_cards == "yes" then 3 else 5}
height: {if styling.three_cards == "yes" then 12 else 23}
alignment: middle right
font:
name: MPlantin
size: {if styling.three_cards == "yes" then 7.5 else 15}
symbol font:
name: magic-mana-large
size: {if styling.three_cards == "yes" then 7.5 else 15}
alignment: middle right
always symbol: true
z index: 920
padding top: 0
casting cost 2:
right: 173
top: 276
width: { max(15, card_style.casting_cost_2.content_width) + 3 }
height: 12
alignment: middle right
symbol font:
name: magic-mana-large
size: 7.5
alignment: middle right
always symbol: true
z index: 920
padding top: 0
visible: { styling.three_cards }
type symbol:
left: {if styling.three_cards == "yes" then 9 else 19}
top: {if styling.three_cards == "yes" then 11 else 25}
height: { if card.type_symbol == "none" then if styling.three_cards == "yes" then 8 else 16 else if styling.three_cards == "yes" then 16 else 31}
width: {if card.type_symbol == "none" then if styling.three_cards == "yes" then 8 else 16 else if styling.three_cards == "yes" then 16 else 31 }
z index: 11
render style: image
choice images:
artifact: artifact.png
test: border_mask.png
creature: creature.png
enchantment: enchantment.png
instant: instant.png
land: land.png
multitype: multitype.png
sorcery: sorcery.png
planeswalker: planeswalker.png
structure: structure.png
type symbol 2:
left: 9
top: 275
height: { if card.type_symbol_2 == "none" then 8 else 16 }
width: {if card.type_symbol_2 == "none" then 8 else 16 }
z index: 1
render style: image
choice images:
artifact: artifact.png
creature: creature.png
enchantment: enchantment.png
instant: instant.png
land: land.png
multitype: multitype.png
sorcery: sorcery.png
planeswalker: planeswalker.png
structure: structure.png
visible: { styling.three_cards }
type symbol 3:
left: 212
top: 25
height: 31
width: 31
z index: 3
render style: image
choice images:
artifact: artifact.png
creature: creature.png
enchantment: enchantment.png
instant: instant.png
land: land.png
multitype: multitype.png
sorcery: sorcery.png
planeswalker: planeswalker.png
structure: structure.png
############################# Image
image:
left: {if styling.three_cards == "yes" then 15 else 29}
top: {if styling.three_cards == "yes" then 29 else 60}
width: {if styling.three_cards == "yes" then 158 else 316}
height: {if styling.three_cards == "yes" then 115 else 231}
z index: 11
default: {default_image(card.card_color)}
image 2:
left: 15
top: 293
width: 158
height: 115
z index: 1
default: {default_image(card.card_color)}
visible: { styling.three_cards }
############################# Card type
type:
left: { if styling.three_cards == "yes" then if has_identity() then 26 else 16 else if has_identity() then 52 else 32}
top: { if styling.three_cards == "yes" then 147 else 296}
width: { (if has_identity() then if styling.three_cards == "yes" then "145" else "155" else if styling.three_cards == "yes" then 290 else 145) - max(if styling.three_cards == "yes" then 11 else 22,card_style.rarity.content_width) }
height: { if styling.three_cards == "yes" then 10 else 20}
alignment: top shrink-overflow
z index: 900
padding top: 1
font:
name: Beleren Bold
size: {if styling.three_cards == "yes" then 6.5 else 13}
color: black
separator color: red
type 2:
left: { if has_identity_2() then "26" else "16" }
top: 411
width: { (if has_identity_2() then "145" else "155") - max(11,card_style.rarity.content_width) }
height: 10
alignment: top shrink-overflow
z index: 900
padding top: 1
font:
name: Beleren Bold
size: 6.5
color: black
separator color: red
visible: { styling.three_cards }
type 3:
left: 227
top: 298
width: { 307 - max(22,card_style.rarity.content_width) }
height: 20
alignment: top shrink-overflow
z index: 900
padding top: 2
font:
name: Beleren Bold
size: 13
color: black
separator color: rgb(128,128,128)
indicator:
left: {if styling.three_cards == "yes" then 15 else 31}
top: {if styling.three_cards == "yes" then 150 else 300}
width: {if styling.three_cards == "yes" then 8 else 17}
height: {if styling.three_cards == "yes" then 8 else 17}
z index: 800
render style: image
visible: { has_identity() }
image: { module_identity() }
indicator 2:
left: 15
top: 412
width: 8
height: 8
z index: 800
render style: image
visible: { has_identity_2() and styling.three_cards == "yes"}
image: { module_identity() }
############################# Text box
text:
left: {if styling.three_cards == "yes" then 15 else 31 }
top: {if styling.three_cards == "yes" then 163 else 328 }
width: {if styling.three_cards == "yes" then 157 else 311 }
height: {if styling.three_cards == "yes" then 76 else 142 }
font:
name: MPlantin
italic name: MPlantin-Italic
size: {if styling.three_cards == "yes" then 7 else 14 }
scale down to: 6
color: black
symbol font:
name: { styling.text_box_mana_symbols }
size: {if styling.three_cards == "yes" then 7 else 14 }
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"
z index: 900
padding left: {if styling.three_cards == "yes" then 3 else 6}
padding right: {if styling.three_cards == "yes" then 2 else 4}
line height hard: 1.2
line height line: {if styling.three_cards == "yes" then 1.2 else 1.5}
line height soft: {if styling.three_cards == "yes" then 0.75 else 0.9 }
line height hard max: {if styling.three_cards == "yes" then 0.65 else 1.3 }
line height line max: {if styling.three_cards == "yes" then 0.2 else 1.6 }
text 2:
left: 15
top: 425
width: 157
height: 76
font:
name: MPlantin
italic name: MPlantin-Italic
size: 7
scale down to: 3
color: black
symbol font:
name: { styling.text_box_mana_symbols }
size: 7
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"
z index: 900
padding left: 3
padding right: 2
line height hard: 1.2
line height line: 1.2
line height soft: 0.75
line height hard max: 0.65
line height line max: 0.2
visible: { styling.three_cards }
text 3:
left: 224
top : 328
width: 311
height: 142
font:
name: MPlantin
italic name: MPlantin-Italic
size: 14
scale down to: 6
color: black
symbol font:
name: { styling.text_box_mana_symbols }
size: 14
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"
z index: 900
padding left: 6
padding right: 4
line height hard: 1.2
line height line: 1.5
line height soft: 0.9
line height hard max: 1.3
line height line max: 1.6
############################# PT
pt:
z index: 900
left: {if styling.three_cards == "yes" then 143 else 286}
top: {if styling.three_cards == "yes" then 237 else 469}
width: {if styling.three_cards == "yes" then 30 else 60}
height: {if styling.three_cards == "yes" then 14 else 28}
alignment: center middle shrink-overflow
font:
name: Beleren Bold
size: {if styling.three_cards == "yes" then 8 else 16 }
color: black
separator color: red
pt 2:
z index: 900
left: 143
top: 498
width: 30
height: 14
alignment: center middle shrink-overflow
font:
name: Beleren Bold
size: 8
color: black
separator color: red
visible: { styling.three_cards }
pt 3:
z index: 900
left: 479
top: 469
width: 60
height: 28
alignment: center middle shrink-overflow
font:
name: Beleren Bold
size: 16
color: black
separator color: red
############################# Card sorting / numbering
set code:
left: {if styling.three_cards == "yes" then 12 else 24}
top: {if styling.three_cards == "yes" then 249 else 498}
width: {if styling.three_cards == "yes" then 20 else 40}
height: {if styling.three_cards == "yes" then 5 else 10}
z index: 11
font:
name: Relay-Medium
size: {if styling.three_cards == "yes" then 3.5 else 7}
color: white
weight: bold
set code 2:
left: 12
top: 512
width: 20
height: 5
z index: 1
font:
name: Relay-Medium
size: 3.5
color: white
weight: bold
visible: { styling.three_cards }
set code 3:
left: 217
top: 498
width: 40
height: 10
z index: 2
font:
name: Relay-Medium
size: 7
color: white
weight: bold
############################################################## Extra card fields
extra card field:
type: choice
name: foil layer
choice: foil
save value: false
editable: false
extra card field:
type: choice
name: foil layer 2
choice: foil
save value: false
editable: false
extra card field:
type: choice
name: foil layer 3
choice: foil
save value: false
editable: false
extra card field:
type: text
name: pt 3 copy
script: card.pt_3
editable: false
save value: false
extra card field:
type: text
name: pt 3 copy 2
script: card.pt_3
editable: false
save value: false
extra card field:
type: choice
name: pt box
script: card.card_color
editable: false
save value: false
extra card field:
type: choice
name: pt box 2
script: card.card_color_2
editable: false
save value: false
extra card field:
type: choice
name: pt box 3
script: "pt"
editable: false
save value: false
################################# Meld Card Fields
extra card field:
type: choice
name: frame
script: "frame"
editable: false
save value: false
extra card field:
type: image
name: meld image
editable: true
save value: true
description: The image of the card
extra card field:
type: choice
name: change focus
choice:
name: Focus on front
choice:
name: Focus on meld
editable: false
save value: false
#################################
extra card style:
################################# Meld Card Styles
change focus:
left: { if styling.three_cards == "yes" then -600 else 0 }
top: { if styling.three_cards == "yes" then -600 else 0 }
width: 568
height: 523
z index: 9
frame:
left: 193
top: 0
width: 375
height: 523
z index: 1
render style: image
image: frame.png
meld image:
left: 193
top: 0
width: 375
height: 523
z index: 0
mask: imagemask.png
#################################
foil layer:
left: 0
top: {if styling.three_cards == "yes" then -1 else 0}
width: {if styling.three_cards == "yes" then 188 else 375}
height: {if styling.three_cards == "yes" then 262 else 523}
z index: 1050
render style: image
image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"}
mask: { "foil_mask" + ( if is_rare() then "_rare" else "" ) + ( if has_pt() then "_pt" else "" ) + ".png" }
foil layer 2:
left: 0
top: 263
width: 188
height: 262
z index: 1050
render style: image
image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"}
mask: { "foil_mask" + ( if has_pt_2() then "_pt" else "" ) + ".png" }
visible: { styling.three_cards }
pt 3 copy:
z index: 900
left: {if styling.three_cards == "yes" then 156 else 311}
top: {if styling.three_cards == "yes" then 223 else 447}
width: {if styling.three_cards == "yes" then 15 else 30}
height: {if styling.three_cards == "yes" then 6 else 12}
alignment: bottom right
font:
name: ModMatrix
size: {if styling.three_cards == "yes" then 6 else 12}
weight: bold
color: grey
separator color: red
pt 3 copy 2:
z index: 900
left: 156
top: 488
width: 15
height: 6
alignment: bottom right
font:
name: ModMatrix
size: 6
weight: bold
color: grey
separator color: red
visible: { styling.three_cards }
pt box:
left: {if styling.three_cards == "yes" then 136 else 273}
top: {if styling.three_cards == "yes" then 235 else 466}
width: {if styling.three_cards == "yes" then 40.5 else 81}
height: {if styling.three_cards == "yes" then 21 else 42}
z index: 840
visible: { card.pt != "" }
render style: image
image: { card_ptbox() }
pt box 2:
left: 136
top: 496
width: 40.5
height: 21
z index: 840
visible: { card.pt_2 != "" and styling.three_cards == "yes"}
render style: image
image: { card_ptbox() }
pt box 3:
left: 464
top: 466
width: 81
height: 42
z index: 840
visible: { card.pt_3 != "" }
render style: image
image: { template_prefix["pt"] + "cpt.png" }