481 lines
14 KiB
Plaintext
481 lines
14 KiB
Plaintext
mse version: 2.0.0
|
|
game: magic
|
|
short name: Vikings
|
|
full name: Kaldheim Showcase
|
|
icon: card-sample.png
|
|
installer group: magic/m15 style/normal cards
|
|
position hint: 095
|
|
|
|
version: 2024-09-01
|
|
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
|
|
depends on:
|
|
package: magic-mainframe-extras.mse-include
|
|
version: 2007-09-23
|
|
|
|
card width: 375
|
|
card height: 523
|
|
card dpi: 150
|
|
####### images from digiman
|
|
############################################################## 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: ""
|
|
card2: "legend/"
|
|
pt: ""
|
|
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.png"
|
|
card2: "card.png"
|
|
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) + template_suffix[type] }
|
|
# Use land templates for previews because they show more contrast
|
|
hybrid_previews := "land,hybrid"
|
|
legend_background := { color_background(type:"card2", base_hybrid:card_hybrid) }
|
|
card_ptbox := { color_background(type:"pt", 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 }
|
|
|
|
# Is the card a promo card?
|
|
is_promo := { styling.promo }
|
|
is_legend := {set.auto_legends and lang_setting("is_legendary")(card.super_type) }
|
|
mana_sort := {
|
|
if styling.unsorted_casting_cost then
|
|
input
|
|
else
|
|
sort_text@(order: "XYZI[0123456789]HSCA(WUBRG)")()
|
|
}
|
|
ancestral_mana := { styling.ancestral_mana_symbols }
|
|
watermark_include := "/magic-modules.mse-include/watermarks"
|
|
is_unsorted := {styling.remove_from_autocount}
|
|
|
|
chop_top := {to_number(pull_comma_array(styling.text_chops, cell:0, end:false))}
|
|
chop_bot := {to_number(pull_comma_array(styling.text_chops, cell:1, end:false))}
|
|
chop_correction := { chop_bot() }
|
|
shrink_type := {if styling.shrink_typeline_text != "" then to_number(styling.shrink_typeline_text) else 0}
|
|
shrink_name := {if styling.shrink_name_text != "" then to_number(styling.shrink_name_text) else 0}
|
|
use_main_rarity := { contains(set.mainframe_rarity_name, match: ".png")}
|
|
un_png := replace@(match:".png", replace: "")
|
|
is_vehicle := {lang_setting("is_vehicle")(card.sub_type)}
|
|
card_stamp_offset_top_1 := {1}
|
|
|
|
include file: /magic-modules.mse-include/loyalty/init_script
|
|
loyalty_abilities_count_real := loyalty_abilities_count
|
|
loyalty_abilities_count := {
|
|
if mainframe_walker() then loyalty_abilities_count_real(instance:instance, active:active) else 0
|
|
}@(active:false, instance:1)
|
|
mainframe_walker := { lang_setting("is_planeswalker")(card.type) }
|
|
loyalty_textbox_mask := {"walker_mask.png"}
|
|
############################################################## 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: text
|
|
name: text chops
|
|
description: Format as "X,Y". Shrinks textbox X pixels from the top and Y from bottom.
|
|
styling field:
|
|
type: text
|
|
name: shrink name text
|
|
description: Shrinks name X pixels
|
|
styling field:
|
|
type: text
|
|
name: shrink typeline text
|
|
description: Shrinks type X pixels
|
|
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
|
|
include file: /magic-modules.mse-include/stamps/styling_fields
|
|
styling field:
|
|
type: choice
|
|
name: number of textboxes
|
|
description: Number of textboxes for abilities and passives. MODIFY CONTENTS OF TEXTBOXES IF THIS HAS TROUBLE UPDATING AFTER BEING CHANGED.
|
|
choice: automatic
|
|
choice: 1
|
|
choice: 2
|
|
choice: 3
|
|
choice: 4
|
|
choice: 5
|
|
choice: 6
|
|
choice: 7
|
|
choice: 8
|
|
initial: automatic
|
|
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: textbox opacity percentage
|
|
description: Set the opacity percentage for textboxes. 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: rgb(255,255,255)
|
|
styling field:
|
|
type: text
|
|
name: stripes opacity percentage
|
|
description: Set the opacity percentage for stripes separating abilities. Opaque is 100, transparent is 0, default is 40.
|
|
styling field:
|
|
type: color
|
|
name: stripes 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: rgb(0,0,0)
|
|
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: rgb(0,0,0)
|
|
|
|
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: unsorted casting cost
|
|
description: Disables automatic mana symbol sorting.
|
|
initial: no
|
|
styling field:
|
|
type: boolean
|
|
name: ancestral mana symbols
|
|
description: Enables ancestral's modified generic mana.
|
|
initial: no
|
|
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: masterpiece
|
|
description: Is this card a Masterpiece?
|
|
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
|
|
include file: /magic-modules.mse-include/information/card_fields
|
|
include file: /magic-modules.mse-include/stamps/card_fields
|
|
include file: /magic-modules.mse-include/stamps/stamp_back
|
|
include file: /magic-modules.mse-include/watermarks/card_fields
|
|
include file: /magic-modules.mse-include/separators/card_fields
|
|
include file: /magic-modules.mse-include/loyalty/card_fields
|
|
card style:
|
|
############################# Background stuff
|
|
border color:
|
|
left: 0
|
|
top : 0
|
|
width: 375
|
|
height: 523
|
|
radius: 18
|
|
left width: 17
|
|
right width: 17
|
|
top width: 17
|
|
bottom width: 18
|
|
z index: 1
|
|
mask: {if is_legend() then "border_legend.png" else "border_mask.png"}
|
|
card color:
|
|
left: 0
|
|
top: 0
|
|
width: 375
|
|
height: 523
|
|
z index: 0
|
|
render style: image
|
|
popup style: in place
|
|
image: { if is_legend() then legend_background() else card_background() }
|
|
mask: {(if is_legend() then "legend/" else "") + "framemask.png"}
|
|
############################# Name line
|
|
name:
|
|
left: 26
|
|
top: {if is_legend() then 33 else 22}
|
|
right: { 341 - card_style.casting_cost.content_width }
|
|
height: {23 - 0.5*shrink_name()}
|
|
alignment: bottom shrink-overflow
|
|
padding bottom: 0
|
|
z index: 900
|
|
font:
|
|
name: Beleren Bold
|
|
size: {15 - shrink_name()}
|
|
color: white
|
|
casting cost:
|
|
right: 346
|
|
top: {if is_legend() then 33 else 22}
|
|
width: { max(30, card_style.casting_cost.content_width) + 5 }
|
|
height: 23
|
|
alignment: middle right
|
|
font:
|
|
name: MPlantin
|
|
size: 15
|
|
symbol font:
|
|
name: magic-mana-large
|
|
size: 15
|
|
alignment: middle right
|
|
always symbol: true
|
|
z index: 920
|
|
padding top: 0
|
|
############################# Image
|
|
image:
|
|
left: 39
|
|
top: {if is_legend() then 60 else 48}
|
|
width: 297
|
|
height: {if is_legend() then 243 else 255}
|
|
z index: -1
|
|
default: {default_image(card.card_color)}
|
|
mask: {(if is_legend() then "legend/") + "imagemask.png"}
|
|
############################# Card type
|
|
indicator:
|
|
left: 26
|
|
top: 308
|
|
width: 17
|
|
height: 17
|
|
z index: 920
|
|
render style: image
|
|
visible: { has_identity() }
|
|
image: { module_identity() }
|
|
type:
|
|
left: { if has_identity() then "46" else "28" }
|
|
top: {shrink_type() + 305 }
|
|
width: { (if has_identity() then "290" else "310") - max(22,card_style.rarity.content_width) }
|
|
height: { 20 - shrink_type() }
|
|
alignment: top shrink-overflow
|
|
z index: 900
|
|
padding top: 2
|
|
font:
|
|
name: Beleren Bold
|
|
size: {13 - shrink_type()}
|
|
color: white
|
|
separator color: red
|
|
rarity:
|
|
right: 344
|
|
top: 308
|
|
width: 44
|
|
height: 22
|
|
z index: 950
|
|
render style: image
|
|
alignment: middle right
|
|
include file: /magic-modules.mse-include/rarities/choice_images
|
|
############################# Text box
|
|
text:
|
|
left: { if mainframe_walker() then 35 else 29 }
|
|
top: {338-(-chop_top())}
|
|
width: 314
|
|
bottom: {477-chop_bot()}
|
|
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
|
|
scale down to: 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"
|
|
z index: 900
|
|
padding left: 6
|
|
padding right: 4
|
|
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
|
|
############################# PT
|
|
pt:
|
|
z index: 900
|
|
left: 293
|
|
top: 468
|
|
width: { if mainframe_walker() then 0 else 60 }
|
|
height: 28
|
|
alignment: center middle shrink-overflow
|
|
font:
|
|
name: Beleren Bold
|
|
size: 15
|
|
color: black
|
|
separator color: red
|
|
############################################################## Extra card fields
|
|
extra card field:
|
|
type: choice
|
|
name: pt box
|
|
script: card.card_color
|
|
editable: false
|
|
save value: false
|
|
extra card field:
|
|
type: choice
|
|
name: foil layer
|
|
choice: foil
|
|
save value: false
|
|
editable: false
|
|
extra card field:
|
|
type: choice
|
|
name: vehicle overlay
|
|
choice: overlay
|
|
editable: false
|
|
save value: false
|
|
show statistics: false
|
|
|
|
extra card style:
|
|
pt box:
|
|
left: 285
|
|
top: 460
|
|
width: { if mainframe_walker() then 0 else 77 }
|
|
height: 43
|
|
z index: 840
|
|
visible: { card.pt != "" }
|
|
render style: image
|
|
image: { if is_vehicle() then "vpt.png" else module_ptbox() }
|
|
foil layer:
|
|
left: 0
|
|
top : 0
|
|
width: 375
|
|
height: 523
|
|
z index: 1050
|
|
render style: image
|
|
image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"}
|
|
mask: { if is_rare() then "foil_mask_rare.png" else "foil_mask.png" }
|
|
vehicle overlay:
|
|
left: 0
|
|
top: 0
|
|
width: 375
|
|
height: 523
|
|
render style: image
|
|
image: {(if is_legend() then "legend/" else "") + "voverlay.png" }
|
|
z index: 0
|
|
visible: {is_vehicle()} |