mse version: 2.0.0 game: magic short name: M15 PokeWalkers full name: M15 Planeswalkers installer group: magic/m15 style/planeswalkers icon: card-sample.png position hint: 052 version: 2024-09-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 card width: 375 card height: 523 card dpi: 150 ############################################################## Extra scripts init script: # Should hybrids have a grey name? mask_hybrid_with_land := { styling.grey_hybrid_name } template_prefix := [card: "" card2: "" card3: "e" stamp: "" identity: "/magic-modules.mse-include/indicators/"] template_suffix := [card: "card.jpg" card2: "card2.jpg" card3: "card.jpg" stamp: "stamp.jpg" identity: "identity.png"] template := { template_prefix[type] + input + template_suffix[type] } land_template := { template_prefix[type] + "c" + 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) } card_background3 := { color_background(type:"card3", 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 } paintbrush_color := { if to_int(card.border_color) < 96 then "white" else "black" } # Loyalty cost arrows loyalty_image := { if contains(input, match: "+") then "loyalty up" else if contains(input, match: "-") then "loyalty down" else "loyalty naught" } card_shape := {"planeswalker"} # Is the card a promo card? is_promo := { styling.promo } # Does the card have four abilities? has_four_abilities := { contains(paragraph_count(card.rule_text), match: "\n\n\n") } paragraph_count := replace@(match:"\n", replace:"")+ filter_text@(match:"\n") has_dot := { styling.evolution_image } watermark_include := "/magic-modules.mse-include/watermarks" ############################################################## 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: 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: 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: 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: 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: 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 field: type: boolean name: holofoil stamp description: should the rares have a holofoil stamp? initial: yes styling field: type: boolean name: evolution image description: should the evolution image be enabled by default? initial: yes 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 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: 4 mask: 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 has_four_abilities() then card_background2() else card_background() } ############################# Name line name: left: { if has_dot() then 58 else 31 } top: 23 right: { 330 - card_style.casting_cost.content_width } height: 23 alignment: bottom shrink-overflow padding bottom: 0 z index: 1 font: name: Beleren Bold size: 16 color: black name 2: left: 36 top: 46 width: { max(100, card_style.name_2.content_width) } height: 20 alignment: bottom shrink-overflow padding bottom: 0 z index: 3 font: name: Matrix size: 10 style: italic color: black casting cost: right: 347 top: 22 width: { max(30, card_style.casting_cost.content_width) + 5 } height: 23 alignment: middle right symbol font: name: magic-mana-large size: 15 alignment: middle right always symbol: true z index: 2 padding top: 0 ############################# Image image: left: 25 top: 52 width: 324 height: 427.5 z index: 1 mask: { "imagemask" + ( if has_four_abilities() then "_4abil" else "" ) + ( if is_rare() and styling.holofoil_stamp then "_rare" else "" ) + ".png" } image 2: left: 18 top: 18 width: { if has_dot() then 31 else 0 } height: { if has_dot() then 31 else 0 } z index: 2 mask: evocon_mask.png ############################# Card type indicator: left: 30 top: 300 width: 17 height: 17 z index: 2 render style: image visible: { has_identity() } image: { module_identity() } type: left: { if has_identity() then "53" else "33" } top: { if has_four_abilities() then 261 else 296 } width: { 304 - max(22,card_style.rarity.content_width) } height: 20 alignment: top shrink-overflow z index: 2 padding top: 2 font: name: Beleren Bold size: 13 color: black separator color: red rarity: right: 345 top: { if has_four_abilities() then 263 else 297 } width: 42 height: 21 z index: 2 render style: image alignment: middle right include file: /magic-modules.mse-include/rarities/choice_images ############################# Text box text: left: 63 top: { if has_four_abilities() then 289 else 330 } width: 282 height: { if has_four_abilities() then 183 else 148 } font: name: MPlantin italic name: MPlantin-Italic size: { if has_four_abilities() then 13.8 else 14 } scale down to: 6 color: { if has_four_abilities() then rgba(0,0,0,0) else "black" } symbol font: name: { if has_four_abilities() then "" else styling.text_box_mana_symbols } size: 14 paragraph height: 49 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" z index: 4 mask: text_mask.png padding left: 6 padding right: 4 padding bottom: 2 line height hard: 1.2 line height line: 1.5 line height soft: { if has_four_abilities() then 0.895 else 0.9 } line height hard max: 1.3 line height line max: 1.6 watermark: left: 117 top : { if has_four_abilities() then 296 else 331 } width: 138 height: { if has_four_abilities() then 185 else 150 } z index: 2 render style: image alignment: middle center include file: /magic.mse-game/watermarks/menu_choice_images image: { watermark_image_1() } ############################# Loyalty loyalty: z index: 7 left: 326 top: 462 width: 13.16 height: 34.63 alignment: center middle font: name: Beleren Bold size: 14 color: white loyalty cost 1: z index: 7 left: 32 top: { if has_four_abilities() then 297 else 335 } width: 13.16 height: 34.63 alignment: center middle font: name: Beleren Bold size: 11 color: white loyalty cost 2: z index: 7 left: 32 top: { if has_four_abilities() then 344 else 386 } width: 13.16 height: 34.63 alignment: center middle font: name: Beleren Bold size: 11 color: white loyalty cost 3: z index: 7 left: 32 top: { if has_four_abilities() then 391 else 435 } width: 13.16 height: 34.63 alignment: center middle font: name: Beleren Bold size: 11 color: white loyalty cost 4: z index: 7 left: 32 top: 438 width: { if has_four_abilities() then 13.16 else 0 } height: { if has_four_abilities() then 34.63 else 0 } alignment: center middle font: name: Beleren Bold size: 11 color: white ############################################################## Extra card fields extra card field: type: multiple choice name: frame empty choice: colorless choice: white choice: blue choice: black choice: red choice: name: green line below: true choice: artifact choice: multicolor choice: name: hybrid line below: true choice: name: horizontal type: radio choice: name: vertical type: radio choice: name: radial type: radio choice: name: diagonal type: radio choice: name: overlay type: radio choice: name: reversed script: card.card_color editable: false save value: false extra card field: type: choice name: evobar start choice: evo save value: false editable: false extra card field: type: choice name: evobar choice: evo save value: false editable: false extra card field: type: choice name: evobar tip choice: evo save value: false editable: false extra card field: type: choice name: loyalty box editable: false choice: loyalty save value: false extra card field: type: choice name: stamp 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: loyalty cost box 1 editable: false script: loyalty_image(card.loyalty_cost_1) save value: false extra card field: type: choice name: loyalty cost box 2 editable: false script: loyalty_image(card.loyalty_cost_2) save value: false extra card field: type: choice name: loyalty cost box 3 editable: false script: loyalty_image(card.loyalty_cost_3) save value: false extra card field: type: choice name: loyalty cost box 4 editable: false script: loyalty_image(card.loyalty_cost_4) save value: false extra card field: type: text name: colon 1 editable: false script: ":" save value: false extra card field: type: text name: colon 2 editable: false script: ":" save value: false extra card field: type: text name: colon 3 editable: false script: ":" save value: false extra card field: type: text name: colon 4 editable: false script: ":" save value: false extra card field: type: text name: second text editable: false multi line: true save value: false script: card.text extra card field: type: choice name: evocon circle choice: stamp save value: false editable: false extra card style: frame: left: 0 top: 0 width: 375 height: 65 z index: 0 render style: image popup style: in place image: { card_background3() } visible: { has_dot() } loyalty box: right: 362 top: 460 width: 60 height: 38 z index: 6 render style: image visible: { card.loyalty !="" } choice images: loyalty: loyalty.png stamp: left: 170 top: 473 width: 36.5 height: 22.5 z index: 6 visible: { card.card_stamp != "none" } render style: image image: { card_stamp() } mask: stamp_mask.png 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"} loyalty cost box 1: left: 18 top: { if has_four_abilities() then 295 else 333 } width: 42 height: 40 z index: 6 render style: image visible: { card.loyalty_cost_1 !="" } choice images: loyalty up: loyaltyup.png loyalty down: loyaltydown.png loyalty naught: loyaltynaught.png loyalty cost box 2: left: 18 top: { if has_four_abilities() then 342 else 383 } width: 42 height: 40 z index: 6 render style: image visible: { card.loyalty_cost_2 !="" } choice images: loyalty up: loyaltyup.png loyalty down: loyaltydown.png loyalty naught: loyaltynaught.png loyalty cost box 3: left: 18 top: { if has_four_abilities() then 389 else 432 } width: 42 height: 40 z index: 6 render style: image visible: { card.loyalty_cost_3 !="" } choice images: loyalty up: loyaltyup.png loyalty down: loyaltydown.png loyalty naught: loyaltynaught.png loyalty cost box 4: left: 18 top: 436 width: { if has_four_abilities() then 42 else 0 } height: 40 z index: 6 render style: image visible: { card.loyalty_cost_4 !="" } choice images: loyalty up: loyaltyup.png loyalty down: loyaltydown.png loyalty naught: loyaltynaught.png colon 1: left: 59 top: { if has_four_abilities() then 309 else 347 } width: 5 height: 10 z index: 6 font: name: MPlantin size: 15 scale down to: 15 color: black alignment: middle center visible: { card.loyalty_cost_1 !="" } colon 2: left: 59 top: { if has_four_abilities() then 356 else 397 } width: 5 height: 10 z index: 6 font: name: MPlantin size: 15 scale down to: 15 color: black alignment: middle center visible: { card.loyalty_cost_2 !="" } colon 3: left: 59 top: { if has_four_abilities() then 403 else 446 } width: 5 height: 10 z index: 6 font: name: MPlantin size: 15 scale down to: 15 color: black alignment: middle center visible: { card.loyalty_cost_3 !="" } colon 4: left: 59 top: 450 width: { if has_four_abilities() then 5 else 0 } height: 10 z index: 6 font: name: MPlantin size: 15 scale down to: 15 color: black alignment: middle center visible: { card.loyalty_cost_4 !="" } second text: left: 63 top: 293 width: 282 height: 183 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 paragraph height: 47 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" z index: 3 mask: text_mask.png padding left: 6 padding right: 4 padding bottom: 2 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 visible: { has_four_abilities() } evocon circle: left: 18 top: 18 height: 31 width: 31 z index: 1 render style: image visible: { has_dot() } image: evocon_circle.png evobar start: left: 31 top: 51 width: 9 height: 27 z index: 2 render style: image image: evobar_start.png mask: evobar_mask.png evobar: left: 40 top: 51 width: {card_style.name_2.content_width} height: 27 z index: 2 render style: image image: evobar.png evobar tip: left: {39.6 + card_style.name_2.content_width} top: 51 width: 36 height: 27 z index: 2 render style: image image: evobar_tip.png