diff --git a/data/magic-m15-altered.mse-style/bigimagemasks/borderless_frameless.png b/data/magic-m15-altered.mse-style/bigimagemasks/borderless_frameless.png
index ea47ba88e..ab17e768e 100644
Binary files a/data/magic-m15-altered.mse-style/bigimagemasks/borderless_frameless.png and b/data/magic-m15-altered.mse-style/bigimagemasks/borderless_frameless.png differ
diff --git a/data/magic-m15-altered.mse-style/bigimagemasks/rare_borderless_frameless.png b/data/magic-m15-altered.mse-style/bigimagemasks/rare_borderless_frameless.png
index b06deb4ba..0f314d5e1 100644
Binary files a/data/magic-m15-altered.mse-style/bigimagemasks/rare_borderless_frameless.png and b/data/magic-m15-altered.mse-style/bigimagemasks/rare_borderless_frameless.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/acard.png b/data/magic-m15-altered.mse-style/inverted/acard.png
index 2d2795911..5d8971ee3 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/acard.png and b/data/magic-m15-altered.mse-style/inverted/acard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/bcard.png b/data/magic-m15-altered.mse-style/inverted/bcard.png
index c8e3f0320..f8b625402 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/bcard.png and b/data/magic-m15-altered.mse-style/inverted/bcard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/blcard.png b/data/magic-m15-altered.mse-style/inverted/blcard.png
index 5910e4e23..6cb27f68d 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/blcard.png and b/data/magic-m15-altered.mse-style/inverted/blcard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/ccard.png b/data/magic-m15-altered.mse-style/inverted/ccard.png
index 1302c6c47..aa4b01b54 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/ccard.png and b/data/magic-m15-altered.mse-style/inverted/ccard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/clcard.png b/data/magic-m15-altered.mse-style/inverted/clcard.png
index 79e525a45..56d6080e0 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/clcard.png and b/data/magic-m15-altered.mse-style/inverted/clcard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/gcard.png b/data/magic-m15-altered.mse-style/inverted/gcard.png
index fd6e0b880..dfbcc867e 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/gcard.png and b/data/magic-m15-altered.mse-style/inverted/gcard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/glcard.png b/data/magic-m15-altered.mse-style/inverted/glcard.png
index fcab3f4a9..07a93e68a 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/glcard.png and b/data/magic-m15-altered.mse-style/inverted/glcard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/mcard.png b/data/magic-m15-altered.mse-style/inverted/mcard.png
index 15bed3652..6c624b8f0 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/mcard.png and b/data/magic-m15-altered.mse-style/inverted/mcard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/mlcard.png b/data/magic-m15-altered.mse-style/inverted/mlcard.png
index 3d9232e66..19d19328d 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/mlcard.png and b/data/magic-m15-altered.mse-style/inverted/mlcard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/rcard.png b/data/magic-m15-altered.mse-style/inverted/rcard.png
index 24a1b0c14..22117b5fe 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/rcard.png and b/data/magic-m15-altered.mse-style/inverted/rcard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/rlcard.png b/data/magic-m15-altered.mse-style/inverted/rlcard.png
index 955a2f215..4a25100d4 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/rlcard.png and b/data/magic-m15-altered.mse-style/inverted/rlcard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/ucard.png b/data/magic-m15-altered.mse-style/inverted/ucard.png
index 38fdf1a98..afe9fe26c 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/ucard.png and b/data/magic-m15-altered.mse-style/inverted/ucard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/ulcard.png b/data/magic-m15-altered.mse-style/inverted/ulcard.png
index b48c38624..eb2de6c6c 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/ulcard.png and b/data/magic-m15-altered.mse-style/inverted/ulcard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/wcard.png b/data/magic-m15-altered.mse-style/inverted/wcard.png
index 700d35856..463e2eea0 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/wcard.png and b/data/magic-m15-altered.mse-style/inverted/wcard.png differ
diff --git a/data/magic-m15-altered.mse-style/inverted/wlcard.png b/data/magic-m15-altered.mse-style/inverted/wlcard.png
index 1f78da771..779c931ca 100644
Binary files a/data/magic-m15-altered.mse-style/inverted/wlcard.png and b/data/magic-m15-altered.mse-style/inverted/wlcard.png differ
diff --git a/data/magic-m15-altered.mse-style/legend/ablcrown.png b/data/magic-m15-altered.mse-style/legend/ablcrown.png
new file mode 100644
index 000000000..122607a3e
Binary files /dev/null and b/data/magic-m15-altered.mse-style/legend/ablcrown.png differ
diff --git a/data/magic-m15-altered.mse-style/legend/bblcrown.png b/data/magic-m15-altered.mse-style/legend/bblcrown.png
new file mode 100644
index 000000000..407a1fba0
Binary files /dev/null and b/data/magic-m15-altered.mse-style/legend/bblcrown.png differ
diff --git a/data/magic-m15-altered.mse-style/legend/cblcrown.png b/data/magic-m15-altered.mse-style/legend/cblcrown.png
new file mode 100644
index 000000000..b49d69e9a
Binary files /dev/null and b/data/magic-m15-altered.mse-style/legend/cblcrown.png differ
diff --git a/data/magic-m15-altered.mse-style/legend/cnyxcrown.png b/data/magic-m15-altered.mse-style/legend/cnyxcrown.png
index 4389b828a..5604df29b 100644
Binary files a/data/magic-m15-altered.mse-style/legend/cnyxcrown.png and b/data/magic-m15-altered.mse-style/legend/cnyxcrown.png differ
diff --git a/data/magic-m15-altered.mse-style/legend/gblcrown.png b/data/magic-m15-altered.mse-style/legend/gblcrown.png
new file mode 100644
index 000000000..a00d69b3e
Binary files /dev/null and b/data/magic-m15-altered.mse-style/legend/gblcrown.png differ
diff --git a/data/magic-m15-altered.mse-style/legend/mblcrown.png b/data/magic-m15-altered.mse-style/legend/mblcrown.png
new file mode 100644
index 000000000..e8145b37b
Binary files /dev/null and b/data/magic-m15-altered.mse-style/legend/mblcrown.png differ
diff --git a/data/magic-m15-altered.mse-style/legend/rblcrown.png b/data/magic-m15-altered.mse-style/legend/rblcrown.png
new file mode 100644
index 000000000..84ee7eaa4
Binary files /dev/null and b/data/magic-m15-altered.mse-style/legend/rblcrown.png differ
diff --git a/data/magic-m15-altered.mse-style/legend/ublcrown.png b/data/magic-m15-altered.mse-style/legend/ublcrown.png
new file mode 100644
index 000000000..277b397dd
Binary files /dev/null and b/data/magic-m15-altered.mse-style/legend/ublcrown.png differ
diff --git a/data/magic-m15-altered.mse-style/legend/wblcrown.png b/data/magic-m15-altered.mse-style/legend/wblcrown.png
new file mode 100644
index 000000000..579759253
Binary files /dev/null and b/data/magic-m15-altered.mse-style/legend/wblcrown.png differ
diff --git a/data/magic-m15-altered.mse-style/style b/data/magic-m15-altered.mse-style/style
index 7fdf977cc..036c27c5d 100644
--- a/data/magic-m15-altered.mse-style/style
+++ b/data/magic-m15-altered.mse-style/style
@@ -28,6 +28,9 @@ depends on:
depends on:
package: magic-mainframe-extras.mse-include
version: 2018-01-01
+depends on:
+ package: magic-m15-mainframe-assets.mse-include
+ version: 2022-06-24
depends on:
package: magic-pride.mse-include
version: 2021-05-26
@@ -72,6 +75,8 @@ init script:
}
crown_follow := {
if input != "crown" then ""
+ else if is_borderless()
+ then "bl"
else if styling.legend_crown == "nyx" or (is_nyx() and chosen(styling.other_options, choice:"auto nyx crowns"))
then "nyx"
else if styling.legend_crown == "companion"
@@ -159,10 +164,10 @@ init script:
is_d20 := {styling.d20_dividers != "off" and not is_leveler()}
is_all_break := {contains(styling.d20_dividers, match:"all breaks")}
d20string := "^()?((()?[-0-9 ,+>\<]()?)+|[Ee]lse|[Oo]ther) ?()?[|]"
- d20_array :=
+ d20_array :=
filter_text@(match:"(\n|"+d20string+")")
+split_text@(match:d20string)
- number_of_rolls := {if is_all_break() then 1+length(filter_text(card.rule_text, match:"\n"))-rolls_start(card.text) else length(d20_array(input))-1}
+ number_of_rolls := {min(6, if is_all_break() then 1+length(filter_text(card.rule_text, match:"\n"))-(rolls_start(card.text)-invert_rolls()) else length(d20_array(input))-1)}
rolls_start := {
if styling.d20_dividers == "all breaks +3" then 4
else if styling.d20_dividers == "all breaks +2" then 3
@@ -174,18 +179,23 @@ init script:
d20_filter := replace@(match:"^([Ee]lse ?|[Oo]ther ?|(()?[-0-9 ,+>\<]()?)+)[|]", replace:"\\1|")
top_of_para := {
input := input + no_roll(card.text)
- if card_style.text.layout.paragraphs[input].top or else 0 > 0 then
- card_style.text.top + card_style.text.layout.paragraphs[input].top - 0.5*(card_style.text.layout.paragraphs[input].top-card_style.text.layout.paragraphs[input-1].bottom)
+ input := max(input, 0)
+ if card_style.text.layout.paragraphs[input].top or else -1 >= 0 then
+ if invert_rolls() == 1 and input == rolls_start()-invert_rolls() then card_style.text.top
+ else if input == 0 then card_style.text.top + card_style.text.layout.paragraphs[input].top
+ else card_style.text.top + card_style.text.layout.paragraphs[input].top - 0.5*(card_style.text.layout.paragraphs[input].top-card_style.text.layout.paragraphs[input-1].bottom)
else 0
}
height_of_para := {
input := input + no_roll(card.text)
if card_style.text.layout.paragraphs[input].bottom or else 0 > 0 then
- card_style.text.layout.paragraphs[input].bottom + 1.3*(card_style.text.layout.paragraphs[input].top-card_style.text.layout.paragraphs[input-1].bottom) - card_style.text.layout.paragraphs[input].top
+ if invert_rolls() == 1 and input == rolls_start() then card_style.text.layout.paragraphs[input-1].bottom
+ else card_style.text.layout.paragraphs[input].bottom + 1.3*(card_style.text.layout.paragraphs[input].top-card_style.text.layout.paragraphs[input-1].bottom) - card_style.text.layout.paragraphs[input].top
else 0
}
no_roll := {if styling.d20_dividers == "all breaks" then 1 else if rolls_start(input) == 0 then 1 else 0}
-
+ invert_rolls := {if chosen(styling.other_options, choice:"inverted d20") then 1 else 0}
+
text_filter := text_filter + override_clear + d20_filter + {if chosen(styling.other_options, choice:"override-style text") then override_filter(input) else input}
center_map := {is_map() and (card.casting_cost == "" or chosen(styling.other_options, choice:"always center map names"))}
@@ -205,7 +215,7 @@ init script:
then output := split_text(string+"0,0,0:0,0,0:0.07:", match:",|:")
else if colons == 1
then output := split_text(string+splits[0]+":0,0,0:0,0,0:0.07:", match:",|:")
-
+
output
}
alt_symbol := {symbol_variation(symbol:set.symbol, border_radius: alt_rarity_color().12, fill_type: "linear gradient", fill_color_1: rgb(alt_rarity_color().0, alt_rarity_color().1, alt_rarity_color().2), fill_color_2: rgb(alt_rarity_color().3, alt_rarity_color().4, alt_rarity_color().5), border_color_1: rgb(alt_rarity_color().6, alt_rarity_color().7, alt_rarity_color().8), border_color_2: rgb(alt_rarity_color().9, alt_rarity_color().10, alt_rarity_color().11), center_x:0.5, center_y:0.5, end_x:1, end_y:1)}
@@ -265,6 +275,10 @@ init script:
}
shown_cr := {if set.automatic_copyright then set.copyright != "" else card.copyright != ""}
card_shape := {if is_leveler() then "leveler" else "normal"}
+
+ white_text := {is_full_art() or is_fnm() or is_inverted()}
+
+ use_flash_dot := {false}
############################################################## Set info fields
set info style:
symbol:
@@ -364,6 +378,7 @@ styling field:
choice: clear tops
choice: vorthos box
choice: pride pinlines
+ choice: inverted d20
initial: auto nyx crowns, auto vehicles, auto snow
styling field:
type: text
@@ -600,7 +615,7 @@ card style:
z index: 8
############################# Card type
indicator:
- left: { (if is_map() then 18 else if is_season() then 43 else 31) + (if is_clear() then 2 else 0)}
+ left: { (if is_map() then 18 else if is_season() then 43 else 31) + (if is_clear() then 2 else 0) + (if use_flash_dot() then 3 else 0)}
top: { if is_clear() or is_map() then 298 else if is_thbland() then 449 else if is_full_art() then 332 else 300 }
width: 17
height: 17
@@ -609,7 +624,7 @@ card style:
visible: { styling.color_indicator_dot }
image: { card_identity() }
type:
- left: { if is_map() then 85 else if is_season() then (if styling.color_indicator_dot then 64 else 44)+(if is_clear() then 4 else 0) else (if styling.color_indicator_dot then 52 else 32) + (if is_clear() then 4 else 0) }
+ left: { if is_map() then 85 else (if use_flash_dot() then 3 else 0) + if is_season() then (if styling.color_indicator_dot then 64 else 44)+(if is_clear() then 4 else 0) else (if styling.color_indicator_dot then 52 else 32) + (if is_clear() then 4 else 0) }
top: { (if is_map() then 297.5 else if is_clear() then 294 else if is_thbland() then 444 else if is_full_art() then 329 else 296) + shrink_type() }
width: { if is_map() then 205 else (if styling.color_indicator_dot then "290" else "310") - (if card_style.rarity.width == 0 then 0 else max(22,card_style.rarity.content_width)) - (if is_season() then 12 else 0) }
height: { (if is_map() then 18 else 20) - shrink_type() }
@@ -1025,7 +1040,7 @@ card style:
copyright:
right: 350
top:
- {
+ {
if is_leveler() and not lone_pt()
then 488
else if (starting_loyalty() and card.loyalty != "") or (card.pt != "" and not starting_loyalty())
@@ -1041,6 +1056,8 @@ card style:
size: 6.5
color: white
weight: bold
+
+
############################################################## Extra card fields
extra card field:
type: text
@@ -1388,6 +1405,14 @@ extra card field:
save value: true
editable: true
description: Where they put mtgstory.com on story spotlights.
+extra card field:
+ type: choice
+ name: flash indicator
+ choice: dot
+ save value: false
+ editable: false
+
+
extra card style:
promo label:
left: 40
@@ -1496,7 +1521,7 @@ extra card style:
auto copyright:
right: 350
top:
- {
+ {
if is_leveler() and not lone_pt()
then 488
else if (starting_loyalty() and card.loyalty != "") or (card.pt != "" and not starting_loyalty())
@@ -1532,7 +1557,7 @@ extra card style:
image: {if (is_clear() or clear_tops()) and not is_devoid() then "legend/xcrown.png" else if is_fnm() then set_mask(image:crown_background(), mask:"legend/fnm_mask.png") else crown_background()}
z index: 5
visible: {is_legend() and not is_map()}
- mask: {if is_legend() and styling.legend_crown != "custom" and (is_curtains() or is_expanded_art() or is_puma() or is_devoid()) then "curtainmask.png" else if is_season() then "crown_season_mask.png" else ""}
+ mask: {if is_legend() and styling.legend_crown != "custom" and (is_curtains() or is_expanded_art() or is_puma() or is_devoid() and not is_borderless()) then "curtainmask.png" else if is_season() then "crown_season_mask.png" else ""}
curtain:
left: 0
top: 0
@@ -1540,7 +1565,7 @@ extra card style:
height: 523
render style: image
image: {if is_cons() then cons_background() else curtain_background()}
- z index: 0
+ z index: 3
visible: {is_cons() or is_curtains()}
mask: {if is_legend() and is_curtains() then "lcurtainmask.png"}
scrolls:
@@ -1701,7 +1726,7 @@ extra card style:
visible: {card.level_3 != ""}
level 2 overlay:
left: 29
- top: { if is_d20() then top_of_para(rolls_start(card.text)) else 329 + lv_2_coordinate()}
+ top: { if is_d20() then top_of_para(rolls_start(card.text)-invert_rolls()) else 329 + lv_2_coordinate()}
height: { if is_d20() then height_of_para(rolls_start(card.text)) else lv_2_height()}
width: 314
z index: 1
@@ -1710,8 +1735,8 @@ extra card style:
visible: {(is_d20() and number_of_rolls(card.text) > 0) or (is_leveler() and not is_full_art() and not is_map() and not is_fnm() and not is_inverted())}
level 3 overlay:
left: 29
- top: { if is_d20() then top_of_para(rolls_start(card.text)+2) else 329 + lv_3_coordinate()}
- height: { if is_d20() then height_of_para(rolls_start(card.text)+2) else lv_3_height()}
+ top: { if is_d20() then top_of_para(rolls_start(card.text)+2-invert_rolls()) else 329 + lv_3_coordinate()}
+ height: { if is_d20() then height_of_para(rolls_start(card.text)+2-invert_rolls()) else lv_3_height()}
width: 314
z index: 1
render style: image
@@ -1719,8 +1744,8 @@ extra card style:
visible: {(is_d20() and number_of_rolls(card.text)-no_roll(card.text) > 2) or (is_leveler() and not is_full_art() and not is_map() and not is_fnm() and not is_inverted())}
level 4 overlay:
left: 29
- top: { if is_d20() then top_of_para(rolls_start(card.text)+4) else 329 + lv_4_coordinate()}
- height: { if is_d20() then height_of_para(rolls_start(card.text)+4) else lv_4_height()}
+ top: { if is_d20() then top_of_para(rolls_start(card.text)+4-invert_rolls()) else 329 + lv_4_coordinate()}
+ height: { if is_d20() then height_of_para(rolls_start(card.text)+4-invert_rolls()) else lv_4_height()}
width: 314
z index: 1
render style: image
@@ -1877,3 +1902,12 @@ extra card style:
size: 7
color: white
weight: bold
+ flash indicator:
+ left: 0
+ top: 0
+ width: 375
+ height: 523
+ z index: 5
+ render style: image
+ image: flashdot.png
+ visible: { use_flash_dot() }
diff --git a/data/magic-m15-dungeons.mse-style/artist_arrow.png b/data/magic-m15-dungeons.mse-style/artist_arrow.png
new file mode 100644
index 000000000..ea39aa438
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/artist_arrow.png differ
diff --git a/data/magic-m15-dungeons.mse-style/border_mask.png b/data/magic-m15-dungeons.mse-style/border_mask.png
new file mode 100644
index 000000000..4a53f2699
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/border_mask.png differ
diff --git a/data/magic-m15-dungeons.mse-style/card-sample.png b/data/magic-m15-dungeons.mse-style/card-sample.png
new file mode 100644
index 000000000..7f484dcc8
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/card-sample.png differ
diff --git a/data/magic-m15-dungeons.mse-style/card.png b/data/magic-m15-dungeons.mse-style/card.png
new file mode 100644
index 000000000..d88a69856
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/card.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lanes/fourlane.png b/data/magic-m15-dungeons.mse-style/lanes/fourlane.png
new file mode 100644
index 000000000..af4953eca
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lanes/fourlane.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lanes/halflane.png b/data/magic-m15-dungeons.mse-style/lanes/halflane.png
new file mode 100644
index 000000000..2bf966630
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lanes/halflane.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lanes/nowall.png b/data/magic-m15-dungeons.mse-style/lanes/nowall.png
new file mode 100644
index 000000000..aceb4ecc4
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lanes/nowall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lanes/onelane.png b/data/magic-m15-dungeons.mse-style/lanes/onelane.png
new file mode 100644
index 000000000..7cada9765
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lanes/onelane.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lanes/onewall.png b/data/magic-m15-dungeons.mse-style/lanes/onewall.png
new file mode 100644
index 000000000..37b37da91
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lanes/onewall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lanes/splitlane.png b/data/magic-m15-dungeons.mse-style/lanes/splitlane.png
new file mode 100644
index 000000000..5796e7bed
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lanes/splitlane.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lanes/thirdlane.png b/data/magic-m15-dungeons.mse-style/lanes/thirdlane.png
new file mode 100644
index 000000000..515f55c7b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lanes/thirdlane.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lanes/threelane.png b/data/magic-m15-dungeons.mse-style/lanes/threelane.png
new file mode 100644
index 000000000..f9b843927
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lanes/threelane.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lanes/twolane.png b/data/magic-m15-dungeons.mse-style/lanes/twolane.png
new file mode 100644
index 000000000..d83e0b30d
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lanes/twolane.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lanes/twowall.png b/data/magic-m15-dungeons.mse-style/lanes/twowall.png
new file mode 100644
index 000000000..e192e15d7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lanes/twowall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/mask.png b/data/magic-m15-dungeons.mse-style/mask.png
new file mode 100644
index 000000000..7070fc008
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/mask.png differ
diff --git a/data/magic-m15-dungeons.mse-style/style b/data/magic-m15-dungeons.mse-style/style
new file mode 100644
index 000000000..59c2cf255
--- /dev/null
+++ b/data/magic-m15-dungeons.mse-style/style
@@ -0,0 +1,916 @@
+mse version: 2.0.0
+game: magic
+short name: Dungeons
+full name: AFR Dungeons
+icon: card-sample.png
+installer group: magic/m15 style/normal cards
+position hint: 099
+
+version: 2021-06-25
+depends on:
+ package: magic.mse-game
+ version: 2014-06-25
+
+card width: 375
+card height: 523
+card dpi: 150
+#################################
+##### Beta blank by CompleteIndie
+init script:
+ text_filter :=
+ text_filter +
+ replace@(
+ match:"^([^\\\n]+)(\\\n|[ ][ ])"
+ replace:"\\1\\2"
+ )
+ card_shape := {"token"}
+ shrink_name := {if styling.shrink_name_text != "" then to_int(styling.shrink_name_text) else 0 }
+ note_cleaner := replace@(match:"\\+", replace:"")
+ num_cleaner := replace@(match:"[0-9]", replace:"")
+ max_level := {
+ notes := "1,2,2,3,3,3,4,"
+ if styling.room_notation != "" then
+ notes := note_cleaner(styling.room_notation)
+ if contains(notes, match:"7") then 7
+ else if contains(notes, match:"6") then 6
+ else if contains(notes, match:"5") then 5
+ else if contains(notes, match:"4") then 4
+ else 3
+ }
+ level_counts := {
+ notes := "1,2,2,3,3,3,4,"
+ if styling.room_notation != "" then
+ notes := note_cleaner(styling.room_notation)
+ saga_lore_count(split_text(replace(notes, match:",[^,]+$", replace:","), match:","))
+ }
+ double_counts := {
+ notes := ""
+ if styling.double_rooms != "" then
+ notes := note_cleaner(styling.double_rooms)
+ saga_lore_count(split_text(replace(notes, match:",[^,]+$", replace:","), match:","))
+ }
+ plus_check := {
+ counts := double_counts()
+ if counts[input] > check then box_height(input+1) else 0
+ }
+ box_width := {
+ rooms := level_counts()[input]
+ if input >= max_level()-1 then 0
+ else if box > rooms then 0
+ else 310 / rooms
+ }
+ ##pad_sum := {
+ ## sum := 0
+ ## splits := split_text(styling.pad_levels, match:",")
+ ## for x from 0 to length(splits)-1 do
+ ## sum := sum + to_int(splits[x])
+ ## sum
+ ##}
+ box_height := {
+ counts := level_counts()
+ h := 370
+ end_float := 0
+ avg_float := 0
+ pad_float := 0
+ output := 0
+ ##pad := to_int(pull_comma_array(styling.pad_levels, cell:input))
+ ##if input == max_level()-2 then
+ ## pad := pad - to_int(pull_comma_array(styling.pad_levels, cell:input+1))
+ ##else if input == max_level()-1 then
+ ## pad := -pad_sum()
+ map := [0:0, 1: 35, 2:75, 3:95]
+ for x from 0 to length(counts)-1 do
+ (
+ h := h - map[min(3, counts[x])]
+ )
+ ##if h >= pad_sum() then (
+ ## h := h - pad
+ ## pad_float := pad
+ ##)
+ if h >= 19 then
+ (
+ h := h-19
+ end_float := 19
+ )
+ levels := max_level()
+ if h < 0 then levels := levels - 2
+ avg_float := h / levels
+ if input == max_level()-1 then
+ output := map[min(3, counts[input])] + end_float + max(0,avg_float)
+ else if input == 0 then
+ output := map[min(3, counts[input])] + max(0,avg_float)
+ else
+ output := map[min(3, counts[input])] + avg_float
+ output
+ }
+
+ pick_a_lane := {
+ counts := level_counts()
+ pluses := double_counts()
+ out_lane := counts[input]
+ in_lane := counts[input+1]
+ plus := pluses[input]
+ if out_lane == 1 then
+ if in_lane == 1 then "lanes/onelane.png"
+ else if in_lane == 2 then "lanes/twolane.png"
+ else if in_lane == 3 then "lanes/threelane.png"
+ else "lanes/onelane.png"
+ else if out_lane == 2 then
+ if plus > 0 then "lanes/halflane.png"
+ else if in_lane == 3 then "lanes/fourlane.png"
+ else "lanes/twolane.png"
+ else if out_lane == 3 then
+ if plus == 1 then "lanes/splitlane.png"
+ else if plus == 2 then "lanes/thirdlane.png"
+ else if in_lane == 2 then "lanes/fourlane.png"
+ else "lanes/threelane.png"
+ else "lanes/onelane.png"
+ }
+ pick_a_wall := {
+ rooms := counts := level_counts()[input]
+ if rooms == 3 then "lanes/twowall.png"
+ else if rooms == 2 then "lanes/onewall.png"
+ else "lanes/nowall.png"
+ }
+ font_size := {if styling.font_size != "" then styling.font_size else 11}
+ 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 }
+ transfer_levels := {false}
+############################################################## Set info fields
+styling field:
+ type: text
+ name: room notation
+ description: Code to generate a dungeon setup. See dropdown below for instructions
+styling field:
+ type: text
+ name: double rooms
+ description: The levels to have a double-height room on.
+styling field:
+ type: choice
+ name: notation help
+ choice: List rooms in a comma-separated list. Default 1,2,2,3,3,3,4,
+ choice: List the level number equal to the number of rooms on the level
+ choice: So default is 1 room, 2 rooms, 3 rooms, 1 room in four levels
+ choice: First and last are max 1 room, others are max 3 rooms, max 7 levels total
+ choice: For double size rooms, list the levels in the double rooms style
+ choice: Listing it once puts it on second, twice on middle and third rows
+ choice: The next row needs to be the same number of rooms or it will glitch
+ choice: Currently it can't do first row doubles or triple rooms, may be a future feature
+styling field:
+ type: text
+ name: font size
+ description: Font size for the rooms. Default is 11.
+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: text
+ name: shrink name text
+ description: Reduces the name text N points.
+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: boolean
+ name: promo
+ description: Is this card a promo card, with the "P" rarity?
+ 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?
+ initial: modern
+ choice: modern
+ choice: old
+ choice: diagonal T
+
+############################################################## Card fields
+card style:
+ 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
+ name:
+ left: 30
+ top: 26
+ width: 315
+ height: {28 - (0.5 * shrink_name())}
+ alignment: middle center
+ padding bottom: -2
+ padding top: 2
+ z index: 5
+ font:
+ name: Beleren Small Caps Bold
+ size: { 17 - shrink_name()}
+ color: rgb(222,222,222)
+ ############################# Image
+ ############################# Textboxes
+ rule text:
+ left: 33
+ top: 79
+ width: 310
+ height: {box_height(0)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 1 text:
+ left: 33
+ top: {card_style.rule_text.bottom}
+ width: {box_width(1, box:1)}
+ height: {box_height(1)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 2 text:
+ left: {card_style.level_1_text.right}
+ top: {card_style.rule_text.bottom}
+ width: {box_width(1, box:2)}
+ height: {box_height(1)+plus_check(1, check:0)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 3 text:
+ left: {card_style.level_2_text.right}
+ top: {card_style.rule_text.bottom}
+ width: {box_width(1, box:3)}
+ height: {box_height(1)+plus_check(1, check:1)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 4 text:
+ left: 33
+ top: {card_style.level_1_text.bottom}
+ width: {box_width(2, box:1)}
+ height: {box_height(2)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 5 text:
+ left: {card_style.level_4_text.right}
+ top: {card_style.level_1_text.bottom}
+ width: {box_width(2, box:2)}
+ height: {box_height(2)-plus_check(1, check:0)+plus_check(2, check:0)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 6 text:
+ left: {card_style.level_5_text.right}
+ top: {card_style.level_1_text.bottom}
+ width: {box_width(2, box:3)}
+ height: {box_height(2)-plus_check(1, check:1)+plus_check(2, check:1)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 7 text:
+ left: 33
+ top: {card_style.level_4_text.bottom}
+ width: {box_width(3, box:1)}
+ height: {box_height(3)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 8 text:
+ left: {card_style.level_7_text.right}
+ top: {card_style.level_4_text.bottom}
+ width: {box_width(3, box:2)}
+ height: {box_height(3)-plus_check(2, check:0)+plus_check(3, check:0)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 9 text:
+ left: {card_style.level_8_text.right}
+ top: {card_style.level_4_text.bottom}
+ width: {box_width(3, box:3)}
+ height: {box_height(3)-plus_check(2, check:1)+plus_check(3, check:1)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 10 text:
+ left: 33
+ top: {card_style.level_7_text.bottom}
+ width: {box_width(4, box:1)}
+ height: {box_height(4)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 11 text:
+ left: {card_style.level_10_text.right}
+ top: {card_style.level_7_text.bottom}
+ width: {box_width(4, box:2)}
+ height: {box_height(4)-plus_check(3, check:0)+plus_check(4, check:0)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 12 text:
+ left: {card_style.level_11_text.right}
+ top: {card_style.level_7_text.bottom}
+ width: {box_width(4, box:3)}
+ height: {box_height(4)-plus_check(3, check:1)+plus_check(4, check:1)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 13 text:
+ left: 33
+ top: {card_style.level_10_text.bottom}
+ width: {box_width(5, box:1)}
+ height: {box_height(5)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 14 text:
+ left: {card_style.level_13_text.right}
+ top: {card_style.level_10_text.bottom}
+ width: {box_width(5, box:2)}
+ height: {box_height(5)-plus_check(4, check:0)+plus_check(5, check:0)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+ level 15 text:
+ left: {card_style.level_14_text.right}
+ top: {card_style.level_10_text.bottom}
+ width: {box_width(5, box:3)}
+ height: {box_height(5)-plus_check(4, check:1)+plus_check(5, check:1)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+
+ rule text 2:
+ left: 33
+ bottom: 448
+ width: 310
+ height: {box_height(max_level()-1)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 2
+ padding top: 2
+ padding bottom: 2
+ padding left: 4
+ padding right: 6
+ line height hard: 0.9
+ line height line: 0.9
+ line height soft: 0.9
+ line height hard max: 0.9
+ line height line max: 0.9
+
+ ############################# Card sorting / numbering
+ set code:
+ left: 24
+ top: 498
+ width: 40
+ height: 10
+ z index: 1
+ font:
+ name: Relay-Medium
+ size: 7
+ color: white
+ weight: bold
+ ############################# Copyright stuff
+ copyright:
+ right: 350
+ top: { if card.pt != "" then 500 else 488 }
+ width: 140
+ height: 10
+ z index: 2
+ visible: {not set.automatic_copyright}
+ alignment: middle right shrink-overflow
+ font:
+ name: Matrix
+ size: 7
+ color: white
+ weight: bold
+############################################################## Extra card fields
+extra card field:
+ type: text
+ name: card code
+ save value: false
+ script:
+ if set.automatic_card_numbers and not styling.remove_from_autocount then
+ forward_editor(prefix: card_number_m15() + "/" + card_count_m15() + " " + rarity_code() + " ", field: card.card_code_text)
+ else
+ combined_editor(field1: card.custom_card_number, separator: " " + rarity_code() + " ", field2: card.card_code_text)
+extra card field:
+ type: choice
+ name: hwall 1
+ editable: false
+ save value: false
+ choice: wall
+extra card field:
+ type: choice
+ name: hwall 2
+ editable: false
+ save value: false
+ choice: wall
+extra card field:
+ type: choice
+ name: hwall 3
+ editable: false
+ save value: false
+ choice: wall
+extra card field:
+ type: choice
+ name: hwall 4
+ editable: false
+ save value: false
+ choice: wall
+extra card field:
+ type: choice
+ name: hwall 5
+ editable: false
+ save value: false
+ choice: wall
+extra card field:
+ type: choice
+ name: hwall 6
+ editable: false
+ save value: false
+ choice: wall
+extra card field:
+ type: choice
+ name: vwall 1
+ editable: false
+ save value: false
+ choice: wall
+extra card field:
+ type: choice
+ name: vwall 2
+ editable: false
+ save value: false
+ choice: wall
+extra card field:
+ type: choice
+ name: vwall 3
+ editable: false
+ save value: false
+ choice: wall
+extra card field:
+ type: choice
+ name: vwall 4
+ editable: false
+ save value: false
+ choice: wall
+extra card field:
+ type: choice
+ name: vwall 5
+ editable: false
+ save value: false
+ choice: wall
+extra card field:
+ type: text
+ name: auto copyright
+ script: set.copyright
+ save value: false
+ editable: false
+ show statistics: false
+extra card field:
+ type: choice
+ name: border
+ editable: false
+ save value: false
+ choice: border
+extra card style:
+ card code:
+ left: 24
+ top: 488
+ width: 120
+ height: 10
+ z index: 1
+ font:
+ name: Relay-Medium
+ size: 7
+ color: white
+ weight: bold
+ auto copyright:
+ right: 350
+ top: { if card.pt != "" then 500 else 488 }
+ width: 140
+ height: 10
+ z index: 2
+ alignment: middle right shrink-overflow
+ visible: {set.automatic_copyright}
+ font:
+ name: Matrix
+ size: 7
+ color: white
+ weight: bold
+ border:
+ left: 0
+ top: 0
+ width: 375
+ height: 523
+ z index: 0
+ render style: image
+ image: card.png
+ hwall 1:
+ left: 31
+ top: {card_style.rule_text.bottom-4}
+ width: 312
+ height: 9
+ render style: image
+ image: {pick_a_lane(0)}
+ z index: 3
+ hwall 2:
+ left: 31
+ top: {card_style.level_1_text.bottom-4}
+ width: 312
+ height: 9
+ render style: image
+ image: {pick_a_lane(1)}
+ z index: 3
+ hwall 3:
+ left: 31
+ top: {card_style.level_4_text.bottom-4}
+ width: 312
+ height: 9
+ render style: image
+ image: {pick_a_lane(2)}
+ z index: 3
+ visible: {max_level() >= 4}
+ hwall 4:
+ left: 31
+ top: {card_style.level_7_text.bottom-4}
+ width: 312
+ height: 9
+ render style: image
+ image: {pick_a_lane(3)}
+ z index: 3
+ visible: {max_level() >= 5}
+ hwall 5:
+ left: 31
+ top: {card_style.level_10_text.bottom-4}
+ width: 312
+ height: 9
+ render style: image
+ image: {pick_a_lane(4)}
+ z index: 3
+ visible: {max_level() >= 6}
+ hwall 6:
+ left: 31
+ top: {card_style.level_13_text.bottom-4}
+ width: 312
+ height: 9
+ render style: image
+ image: {pick_a_lane(5)}
+ z index: 3
+ visible: {max_level() >= 7}
+ vwall 1:
+ left: 31
+ top: {card_style.rule_text.bottom}
+ width: 312
+ height: {box_height(1)}
+ render style: image
+ image: {pick_a_wall(1)}
+ z index: 3
+ vwall 2:
+ left: 31
+ top: {card_style.level_1_text.bottom+3}
+ width: 312
+ height: {card_style.level_4_text.height}
+ render style: image
+ image: {pick_a_wall(2)}
+ z index: 3
+ visible: {max_level() >= 4}
+ vwall 3:
+ left: 31
+ top: {card_style.level_4_text.bottom+3}
+ width: 312
+ height: {card_style.level_7_text.height}
+ render style: image
+ image: {pick_a_wall(3)}
+ z index: 3
+ visible: {max_level() >= 5}
+ vwall 4:
+ left: 31
+ top: {card_style.level_7_text.bottom}
+ width: 312
+ height: {box_height(4)}
+ render style: image
+ image: {pick_a_wall(4)}
+ z index: 3
+ visible: {max_level() >= 6}
+ vwall 5:
+ left: 31
+ top: {card_style.level_10_text.bottom}
+ width: 312
+ height: {box_height(5)}
+ render style: image
+ image: {pick_a_wall(5)}
+ z index: 3
+ visible: {max_level() >= 7}
diff --git a/data/magic-m15-mainframe-dfc.mse-style/artifact_blend_icon.png b/data/magic-m15-mainframe-dfc.mse-style/artifact_blend_icon.png
index 17195da0c..8d605ad2f 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/artifact_blend_icon.png and b/data/magic-m15-mainframe-dfc.mse-style/artifact_blend_icon.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/artifact_blend_icon2.png b/data/magic-m15-mainframe-dfc.mse-style/artifact_blend_icon2.png
index 08cdbb959..4a1f3b46a 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/artifact_blend_icon2.png and b/data/magic-m15-mainframe-dfc.mse-style/artifact_blend_icon2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/borderless_mask.png b/data/magic-m15-mainframe-dfc.mse-style/borderless_mask.png
new file mode 100644
index 000000000..1ef6eee7f
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/borderless_mask.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/borderless_mask_rare.png b/data/magic-m15-mainframe-dfc.mse-style/borderless_mask_rare.png
new file mode 100644
index 000000000..e8b93c79e
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/borderless_mask_rare.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/borderless_mask_rare_transform.png b/data/magic-m15-mainframe-dfc.mse-style/borderless_mask_rare_transform.png
new file mode 100644
index 000000000..9a9af70ae
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/borderless_mask_rare_transform.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/borderless_mask_transform.png b/data/magic-m15-mainframe-dfc.mse-style/borderless_mask_transform.png
new file mode 100644
index 000000000..b09124a5d
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/borderless_mask_transform.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/borderless_mask_transform_back.png b/data/magic-m15-mainframe-dfc.mse-style/borderless_mask_transform_back.png
new file mode 100644
index 000000000..3cd4da9ea
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/borderless_mask_transform_back.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/clear_four_frame_mask.png b/data/magic-m15-mainframe-dfc.mse-style/clear_four_frame_mask.png
new file mode 100644
index 000000000..63237d43b
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/clear_four_frame_mask.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/clear_frame_mask.png b/data/magic-m15-mainframe-dfc.mse-style/clear_frame_mask.png
new file mode 100644
index 000000000..67a57f86a
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/clear_frame_mask.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/hybrid_blend_icon.png b/data/magic-m15-mainframe-dfc.mse-style/hybrid_blend_icon.png
index 1c1d024c6..922798a39 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/hybrid_blend_icon.png and b/data/magic-m15-mainframe-dfc.mse-style/hybrid_blend_icon.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/hybrid_blend_icon2.png b/data/magic-m15-mainframe-dfc.mse-style/hybrid_blend_icon2.png
index 9c76d4e25..4da5a68f5 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/hybrid_blend_icon2.png and b/data/magic-m15-mainframe-dfc.mse-style/hybrid_blend_icon2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/aarrow.png b/data/magic-m15-mainframe-dfc.mse-style/icons/aarrow.png
index a1083c4dc..7ee936468 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/aarrow.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/aarrow.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/aarrow2.png b/data/magic-m15-mainframe-dfc.mse-style/icons/aarrow2.png
index 2c7a291f6..53d4960f9 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/aarrow2.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/aarrow2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/barrow.png b/data/magic-m15-mainframe-dfc.mse-style/icons/barrow.png
index aefa438e7..9116f48f7 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/barrow.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/barrow.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/barrow2.png b/data/magic-m15-mainframe-dfc.mse-style/icons/barrow2.png
index 75c094274..1dd7de2ff 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/barrow2.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/barrow2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/carrow.png b/data/magic-m15-mainframe-dfc.mse-style/icons/carrow.png
index ba39598c6..8f1493e48 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/carrow.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/carrow.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/carrow2.png b/data/magic-m15-mainframe-dfc.mse-style/icons/carrow2.png
index 3df94d9a0..d0802b574 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/carrow2.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/carrow2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/garrow.png b/data/magic-m15-mainframe-dfc.mse-style/icons/garrow.png
index 8fbf7ab10..967684ec5 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/garrow.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/garrow.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/garrow2.png b/data/magic-m15-mainframe-dfc.mse-style/icons/garrow2.png
index 5c71b81db..f0ba53a81 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/garrow2.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/garrow2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/marrow.png b/data/magic-m15-mainframe-dfc.mse-style/icons/marrow.png
index 04626bd90..50678f40e 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/marrow.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/marrow.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/marrow2.png b/data/magic-m15-mainframe-dfc.mse-style/icons/marrow2.png
index e76a1371a..9a724955d 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/marrow2.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/marrow2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/rarrow.png b/data/magic-m15-mainframe-dfc.mse-style/icons/rarrow.png
index fdeb1755b..e45c53132 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/rarrow.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/rarrow.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/rarrow2.png b/data/magic-m15-mainframe-dfc.mse-style/icons/rarrow2.png
index d1fa48423..bbbce957c 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/rarrow2.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/rarrow2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/uarrow.png b/data/magic-m15-mainframe-dfc.mse-style/icons/uarrow.png
index 5155d419b..4d53aee06 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/uarrow.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/uarrow.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/uarrow2.png b/data/magic-m15-mainframe-dfc.mse-style/icons/uarrow2.png
index adb764664..de809ed68 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/uarrow2.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/uarrow2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/warrow.png b/data/magic-m15-mainframe-dfc.mse-style/icons/warrow.png
index 3bb9f6405..eed4246a4 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/warrow.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/warrow.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/icons/warrow2.png b/data/magic-m15-mainframe-dfc.mse-style/icons/warrow2.png
index eedb2b953..bf9a317c7 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/icons/warrow2.png and b/data/magic-m15-mainframe-dfc.mse-style/icons/warrow2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/legend/ablcrown.png b/data/magic-m15-mainframe-dfc.mse-style/legend/ablcrown.png
new file mode 100644
index 000000000..122607a3e
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/legend/ablcrown.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/legend/bblcrown.png b/data/magic-m15-mainframe-dfc.mse-style/legend/bblcrown.png
new file mode 100644
index 000000000..407a1fba0
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/legend/bblcrown.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/legend/cblcrown.png b/data/magic-m15-mainframe-dfc.mse-style/legend/cblcrown.png
new file mode 100644
index 000000000..b49d69e9a
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/legend/cblcrown.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/legend/cnyxcrown.png b/data/magic-m15-mainframe-dfc.mse-style/legend/cnyxcrown.png
index 4389b828a..5604df29b 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/legend/cnyxcrown.png and b/data/magic-m15-mainframe-dfc.mse-style/legend/cnyxcrown.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/legend/gblcrown.png b/data/magic-m15-mainframe-dfc.mse-style/legend/gblcrown.png
new file mode 100644
index 000000000..a00d69b3e
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/legend/gblcrown.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/legend/mblcrown.png b/data/magic-m15-mainframe-dfc.mse-style/legend/mblcrown.png
new file mode 100644
index 000000000..e8145b37b
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/legend/mblcrown.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/legend/rblcrown.png b/data/magic-m15-mainframe-dfc.mse-style/legend/rblcrown.png
new file mode 100644
index 000000000..84ee7eaa4
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/legend/rblcrown.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/legend/ublcrown.png b/data/magic-m15-mainframe-dfc.mse-style/legend/ublcrown.png
new file mode 100644
index 000000000..277b397dd
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/legend/ublcrown.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/legend/wblcrown.png b/data/magic-m15-mainframe-dfc.mse-style/legend/wblcrown.png
new file mode 100644
index 000000000..579759253
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/legend/wblcrown.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/multicolor_blend_icon.png b/data/magic-m15-mainframe-dfc.mse-style/multicolor_blend_icon.png
index 0e333df86..922798a39 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/multicolor_blend_icon.png and b/data/magic-m15-mainframe-dfc.mse-style/multicolor_blend_icon.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/multicolor_blend_icon2.png b/data/magic-m15-mainframe-dfc.mse-style/multicolor_blend_icon2.png
index 5095112cb..4da5a68f5 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/multicolor_blend_icon2.png and b/data/magic-m15-mainframe-dfc.mse-style/multicolor_blend_icon2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/mythic_mask.png b/data/magic-m15-mainframe-dfc.mse-style/mythic_mask.png
index 8064cc48e..715f79c46 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/mythic_mask.png and b/data/magic-m15-mainframe-dfc.mse-style/mythic_mask.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_back.png b/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_back.png
new file mode 100644
index 000000000..4ec7a0f9d
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_back.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_four.png b/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_four.png
new file mode 100644
index 000000000..0ea232b90
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_four.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_four_back.png b/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_four_back.png
new file mode 100644
index 000000000..822db58f9
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_four_back.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_four_rare.png b/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_four_rare.png
new file mode 100644
index 000000000..3d7c83790
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_four_rare.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_rare.png b/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_rare.png
new file mode 100644
index 000000000..4cf29593b
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/mythic_mask_rare.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/acard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/acard.jpg
index ba8c2953d..7e0ba3c8d 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/acard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/acard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/acard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/acard2.jpg
index c365f84c9..a1776f21c 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/acard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/acard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/bcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/bcard.jpg
index 046fa9260..966889770 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/bcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/bcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/bcard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/bcard2.jpg
index 6c3728d1b..047265228 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/bcard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/bcard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/blcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/blcard.jpg
index 58e2ac452..810d7caff 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/blcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/blcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/blcard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/blcard2.jpg
index 6a3c961ab..66e8e553a 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/blcard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/blcard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/ccard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/ccard.jpg
index cb707744b..12abdd78f 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/ccard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/ccard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/ccard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/ccard2.jpg
index 96e7d4434..639ae2625 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/ccard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/ccard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/clcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/clcard.jpg
index 2eacdbbbc..a36c8b20e 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/clcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/clcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/clcard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/clcard2.jpg
index aa5846ad8..ab152b55d 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/clcard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/clcard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/gcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/gcard.jpg
index ec9e6949e..aacc38328 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/gcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/gcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/gcard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/gcard2.jpg
index 8419db430..919d7e7b1 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/gcard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/gcard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/glcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/glcard.jpg
index 6daf51cc3..50c1999f9 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/glcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/glcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/glcard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/glcard2.jpg
index e54275af8..6a9bedf08 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/glcard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/glcard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/mcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/mcard.jpg
index b287241e5..99c01aa42 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/mcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/mcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/mcard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/mcard2.jpg
index f3976ca60..384ea49a4 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/mcard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/mcard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/mlcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/mlcard.jpg
index d6ddb60ec..ffd267b68 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/mlcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/mlcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/mlcard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/mlcard2.jpg
index d29ed84c3..36dbe8435 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/mlcard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/mlcard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/rcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/rcard.jpg
index 4b9d07a7f..967b0fb9b 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/rcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/rcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/rcard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/rcard2.jpg
index bc326cdef..f05e8e461 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/rcard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/rcard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/rlcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/rlcard.jpg
index 8fc982057..6737e45ca 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/rlcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/rlcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/rlcard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/rlcard2.jpg
index 23262d18b..f48c85896 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/rlcard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/rlcard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/ucard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/ucard.jpg
index 00a63ae87..84562d789 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/ucard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/ucard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/ucard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/ucard2.jpg
index 5af4ec60b..c69c6363c 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/ucard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/ucard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/ulcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/ulcard.jpg
index e0491db99..10e604842 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/ulcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/ulcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/ulcard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/ulcard2.jpg
index c6d9a896c..d5c36c3ca 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/ulcard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/ulcard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/wcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/wcard.jpg
index 2996eb24d..e8c45f84b 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/wcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/wcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/wcard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/wcard2.jpg
index 56fff2f6a..96a157b4c 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/wcard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/wcard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/wlcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/wlcard.jpg
index 15914f8a7..5bdbd316a 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/wlcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/wlcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/normal/wlcard2.jpg b/data/magic-m15-mainframe-dfc.mse-style/normal/wlcard2.jpg
index 4f27156e3..eb590d12e 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/normal/wlcard2.jpg and b/data/magic-m15-mainframe-dfc.mse-style/normal/wlcard2.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard.png
index 6b2dd8b9a..3a541dd20 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard2.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard2.png
index 4b95a8115..0c1bc3167 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard2.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard3.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard3.png
index 6694542e9..c7511bed4 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard3.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard3.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard4.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard4.png
index 9e692c96a..cc5c75949 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard4.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/acard4.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard.png
index 3ce071474..33a77c759 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard2.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard2.png
index b939e9071..2a9aa3d0f 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard2.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard3.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard3.png
index dac037ce7..84bb541e6 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard3.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard3.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard4.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard4.png
index 8608f3f5b..1f7d9a2b8 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard4.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/bcard4.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard.png
index e028a8b11..40bbe7b76 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard2.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard2.png
index bc0a905c9..361ae59aa 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard2.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard3.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard3.png
index 882bf316c..185434d69 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard3.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard3.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard4.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard4.png
index d441a3720..f917822e8 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard4.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ccard4.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard.png
index fe0871ad0..f0fab1014 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard2.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard2.png
index dad375d33..bafb1276d 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard2.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard3.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard3.png
index efd5d85f8..6c0d6fc93 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard3.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard3.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard4.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard4.png
index d3867f163..7af301d31 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard4.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/gcard4.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask.png
index 927d8144e..58eeae863 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_back.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_back.png
new file mode 100644
index 000000000..59fde9ed4
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_back.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_four.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_four.png
new file mode 100644
index 000000000..90aee7b1c
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_four.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_four_back.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_four_back.png
new file mode 100644
index 000000000..a67978d7a
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_four_back.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_four_rare.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_four_rare.png
new file mode 100644
index 000000000..e4e9d3feb
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_four_rare.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_rare.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_rare.png
new file mode 100644
index 000000000..e97390458
Binary files /dev/null and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/guidelines/mythic_mask_rare.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard.png
index 087dc454e..0394af138 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard2.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard2.png
index d6d2f0787..0a0951ccf 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard2.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard3.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard3.png
index aed2d0052..8af03eb4a 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard3.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard3.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard4.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard4.png
index 123b428e9..10fdfc676 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard4.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/mcard4.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard.png
index d4116ea58..3819e501a 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard2.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard2.png
index 0e332f4ad..f3dc25950 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard2.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard3.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard3.png
index 661d0fef3..bb6e3e2df 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard3.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard3.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard4.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard4.png
index 0d7f48587..41e3e3b03 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard4.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/rcard4.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard.png
index bc32ea18a..0288ba43d 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard2.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard2.png
index 9b3bba512..7e4c20adf 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard2.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard3.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard3.png
index d8bab1b30..c9d7faa91 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard3.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard3.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard4.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard4.png
index 420a77e75..4c9581298 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard4.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/ucard4.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard.png
index 68118d742..073450744 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard2.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard2.png
index a86a0666a..32556a5a7 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard2.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard2.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard3.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard3.png
index 1c9aa4463..01c5cdfac 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard3.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard3.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard4.png b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard4.png
index 59ae83627..007480ee1 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard4.png and b/data/magic-m15-mainframe-dfc.mse-style/planeswalker/wcard4.png differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/style b/data/magic-m15-mainframe-dfc.mse-style/style
index 30c7b1f58..add711854 100644
--- a/data/magic-m15-mainframe-dfc.mse-style/style
+++ b/data/magic-m15-mainframe-dfc.mse-style/style
@@ -44,9 +44,9 @@ init script:
mask_hybrid_with_land := { styling.grey_hybrid_name }
d20_filter := replace@(match:"^(|[Ee]lse ?|[Oo]ther ?|(()?[-0-9 ,+>\<]()?)+)[|]", replace:"\\1|")
text_filter := text_filter + d20_filter + {apply_margins(input, name:margin_code)} + {add_spacers(input, name:margin_code)} + {if is_modal(input) then bump_text(softline_ripper(input)) else input}
-
+
####### Create images
-
+
template_prefix := [card: "normal/" card2: "normal/" card3: "planeswalker/" card4: "planeswalker/" card5: "planeswalker/" card6: "planeswalker/" arrow: "arrows/", slide: "masks/", slide2: "masks/", slide5: "masks/", slide3: "mask_back/", slide4: "mask_back/", slide6: "mask_back/", nyx: "nyx/" miracle: "miracles/" miracle2: "miracles/" legend: "legend/" legend2: "legend/" curtain: "curtains/" map: "maps/" mappt: "maps/" pt: "normal/" pt2: "normal/" saga:"saga/" stamp2: "normal/" stamp3: "planeswalker/" stamp: "" identity: "/magic-identity-new.mse-include/" identity2: "/magic-identity-new.mse-include/" snow:"snow/" snowtexture:"snow/" alias:"" alias2:"" icon:"icons/" icon2:"icons/" flag:"flags/" flag2:"flags/" mark:"bookmarks/" unnotch:"unnotched/"]
template_suffix := [card: "card.jpg" card2: "card2.jpg" card3: "card.png" card4: "card2.png" card5: "card3.png" card6: "card4.png" arrow: "arrow.png", slide: "slide.png", slide2: "slide2.png", slide5: "slide3.png", slide3: "slide.png", slide4: "slide2.png", slide6: "slide3.png", nyx: "nyx.png" miracle: "miracle.png" miracle2: "miracle2.png" legend: "crown.png" legend2: "crown.png" curtain: "card.png" map: "card.png" mappt: "pt.png" saga:"card.jpg", stamp: "stamp.jpg" stamp2: "stamp.jpg" stamp3: "stamp.png" pt: "pt.png" pt2: "pt2.png" identity: "identity.png" identity2: "identity.png" snow:"card.jpg" snowtexture:"snow.png" alias:"alias.png" alias2:"alias.png" icon:"arrow.png" icon2:"arrow2.png" flag:"flag.png" flag2:"flag2.png" mark:"mark.png" unnotch:"card.jpg"]
template := { switch_lead(type) + template_prefix[type] + input + switch_follow(type) + template_suffix[type] }
@@ -70,7 +70,9 @@ init script:
}
switch_follow := {
if (input == "legend" or input == "legend2") then (
- if styling.legend_crown == "nyx" or (check_nyx(input) and chosen(styling.other_options, choice:"auto nyx crowns"))
+ if is_full()
+ then "bl"
+ else if styling.legend_crown == "nyx" or (check_nyx(input) and chosen(styling.other_options, choice:"auto nyx crowns"))
then "nyx"
else if styling.legend_crown == "companion"
then "com"
@@ -90,7 +92,7 @@ init script:
else if contains(input, match: "-") then "loyaltydown.png"
else "loyaltynaught.png"
}
-
+
# The normal backface
card_background2 := { color_background(type:"card2", base_hybrid:card_hybrid) }
# The planeswalker front face
@@ -131,8 +133,8 @@ init script:
# modal dfc flag scripts
front_flag_image := { color_background(type:"flag", base_hybrid:card_hybrid) }
back_flag_image := { color_background(type:"flag2", base_hybrid:card_hybrid) }
- front_arrow_image := { color_background(type:"icon", base_hybrid:card_hybrid) }
- back_arrow_image := { color_background(type:"icon2", base_hybrid:card_hybrid) }
+ front_arrow_image := { color_background(type:"icon", base_hybrid:flip_pt_hybrid2) }
+ back_arrow_image := { color_background(type:"icon2", base_hybrid:flip_pt_hybrid2) }
# Use the normal tap symbol
mana_t := {
@@ -140,18 +142,18 @@ init script:
else if styling.tap_symbol == "diagonal T" then "older"
else "new"
}
-
+
# Use guild mana symbols?
- guild_mana := { styling.use_guild_mana_symbols }
-
-
+ guild_mana := { styling.use_guild_mana_symbols }
+
+
# Loyalty cost arrows
loyalty_image := {
if contains(input, match: "+") then "loyalty up"
else if contains(input, match: "-") then "loyalty down"
else "loyalty naught"
}
-
+
####### Shape things
card_shape := {"double faced"}
a_saga := {is_saga() or is_class()}
@@ -163,13 +165,13 @@ init script:
####### Promo stuff
is_promo := { chosen(styling.other_options, choice:"promo") }
- is_full := { chosen(styling.other_options, choice:"mythic edition") and not is_map() and not back_map()}
+ is_full := { chosen(styling.other_options, choice:"mythic edition") and not is_map() and not back_map() and not front_clear() and not back_clear() }
is_unsorted := {chosen(styling.other_options, choice:"remove from autocount")}
comma_count := filter_text@(match:",")
- paragraph_count :=
+ paragraph_count :=
replace@(match:"\n", replace:"")+
filter_text@(match:"\n")
-
+
######## General Stuff
is_stamped := { is_rare() and chosen(styling.other_options, choice:"use holofoil stamps") }
is_normal_size := { not chosen(styling.other_options, choice:"wider planeswalker images") }
@@ -215,7 +217,7 @@ init script:
back_leveler := {styling.back_style == "leveler"}
back_skinned := {not back_saga() and chosen(styling.other_options, choice:"godzilla style alias")}
-
+
top_of_textbox := {(if is_class() then 60 else if mainframe_walker() then (if has_four_abilities() then 292+(if front_clear() then 5 else 0) else 329) else if is_map() then 340 else if is_mutate() then 395 else 327)-lv_chop(styling.level_1_chop, cell:0)}
bottom_of_textbox := {(if is_class() then 437 else if mainframe_walker() then 477-(if is_modal_dfc() then 5 else if is_stamped() then 2 else 0) else if is_map() then 475 else 481)-lv_chop(styling.level_1_chop, cell:1)}
@@ -223,28 +225,22 @@ init script:
bottom_of_textbox2 := {(if back_class() then 437 else if mainframe_walkerb() then 477-(if is_modal_dfc() then 5 else 0) else if back_map() then 475 else 481)-lv_chop(styling.level_5_chop, cell:1)}
mask_script := { if contains(styling.custom_mask, match:".png") then "/magic-mainframe-extras.mse-include/" + styling.custom_mask
- else if is_full() and is_normal() and not is_saga() and not is_map() then (if is_stamped() then "rare_" else "")+"front_mythic_mask.png"
+ else if a_saga() then ""
+ else if is_full() and is_normal() and not is_saga() and not is_map() then "borderless_mask" + (if is_stamped() then "_rare" else "") + (if not is_modal_dfc() then "_transform" else "") + ".png"
else if front_clear() and is_normal() then "imagemask_clear_normal.png"
else if front_clear() then "imagemask_clear.png"
else if is_mutate() then "mutate_mask.png"
else if not mainframe_walker() then ""
- else "planeswalker/guidelines/"
- + (if front_clear() then "clear_" else if is_normal_size() or is_full() then "" else "wide_")
- + (if max_level() > 3 or force_tall() then "four_" else "")
- + (if front_clear() then "frame_mask" else if is_full() then (if is_stamped() then "mythic_image_rare_mask" else "mythic_mask") else "frame_mask")
- + ".png"
+ else "planeswalker/guidelines/" + walker_mask_front()
}
back_mask_script := { if contains(styling.custom_mask_2, match:".png") then "/magic-mainframe-extras.mse-include/" + styling.custom_mask
- else if is_full() and back_normal() and not back_saga() and not back_map() then "normal_mythic_mask.png"
+ else if b_saga() then ""
+ else if is_full() and back_normal() and not back_saga() and not back_map() then "borderless_mask" + (if not is_modal_dfc() then "_transform_back" else "") + ".png"
else if back_clear() and back_normal() then "imagemask_clear_normal.png"
else if back_clear() then "imagemask_clear.png"
else if back_mutate() then "mutate_mask.png"
else if not mainframe_walkerb() then ""
- else "planeswalker/guidelines/"
- + (if back_clear() then "clear_" else if is_normal_size() or is_full() then "" else "wide_")
- + (if max_levelb() > 3 or force_tallb() then "four_" else "")
- + (if back_clear() then "frame_mask" else if is_full() then (if is_stamped() then "mythic_image_rare_mask" else "mythic_mask") else "frame_mask")
- + ".png"
+ else "planeswalker/guidelines/" + walker_mask_back()
}
####### Planeswalker stuff
@@ -263,7 +259,7 @@ init script:
abil_center := { if card_style.text.layout.blocks[input].bottom or else 0 > 0 then
card_style.text.top + card_style.text.layout.blocks[input].middle + overlap_check(input)
- else -30
+ else -30
}
overlap_check := {
if input == 0
@@ -286,16 +282,16 @@ init script:
]
max_level := {max_level_function[force_level()]()}
mainframe_walker_text_script := {
- if max_level() == 1 or (max_level() == 2 and card.level_2_text == "") or force_level() == "two" then
+ if max_level() == 1 or (max_level() == 2 and card.level_2_text == "") or force_level() == "two" then
combined_editor(field1: card.level_1_text, separator1: "\n", field2: card.level_2_text)
- else if max_level() == 2 or force_level() == "three" then
+ else if max_level() == 2 or force_level() == "three" then
combined_editor(field1: card.level_1_text, separator1: "\n", field2: card.level_2_text, separator2: "\n", field3: card.level_3_text)
- else if max_level() >= 3 or force_level() == "four" then
+ else if max_level() >= 3 or force_level() == "four" then
combined_editor(field1: card.level_1_text, separator1: "\n", field2: card.level_2_text, separator2: "\n", field3: card.level_3_text, separator3: "\n", field4: card.level_4_text)
else
combined_editor(field1: card.level_1_text, separator1: "\n", field2: card.level_2_text, separator2: "\n", field3: card.level_3_text)
}
- loyal_move := {
+ loyal_move := {
if input == 2 and (card.level_2_text == "" or card.level_2_text == "") then -15
else if input == 3 and (card.level_3_text == "" or card.level_3_text == "") then -5
else if input == 6 and (card.level_6_text == "" or card.level_6_text == "") then -15
@@ -306,7 +302,7 @@ init script:
loyal_moveb := {loyal_move(input+4)}
abil_centerb := { if card_style.text_2.layout.blocks[input].bottom or else 0 > 0 then
card_style.text_2.top + card_style.text_2.layout.blocks[input].middle + overlap_checkb(input)
- else -30
+ else -30
}
overlap_checkb := {
if input == 0
@@ -329,11 +325,11 @@ init script:
]
max_levelb := {max_level_functionb[force_levelb()]()}
mainframe_walker_text_scriptb := {
- if max_levelb() == 1 or (max_levelb() == 2 and card.level_6_text == "") or force_levelb() == "two" then
+ if max_levelb() == 1 or (max_levelb() == 2 and card.level_6_text == "") or force_levelb() == "two" then
combined_editor(field1: card.level_5_text, separator1: "\n", field2: card.level_6_text)
- else if max_levelb() == 2 or force_levelb() == "three" then
+ else if max_levelb() == 2 or force_levelb() == "three" then
combined_editor(field1: card.level_5_text, separator1: "\n", field2: card.level_6_text, separator2: "\n", field3: card.level_7_text)
- else if max_levelb() >= 3 or force_levelb() == "four" then
+ else if max_levelb() >= 3 or force_levelb() == "four" then
combined_editor(field1: card.level_5_text, separator1: "\n", field2: card.level_6_text, separator2: "\n", field3: card.level_7_text, separator3: "\n", field4: card.level_8_text)
else
combined_editor(field1: card.level_5_text, separator1: "\n", field2: card.level_6_text, separator2: "\n", field3: card.level_7_text)
@@ -353,7 +349,7 @@ init script:
}
margin_top := {
if is_class() and (input == "lv2" or (input == "lv3" and card.level_3_text != "") or (input == "lv4" and card.level_4_text != "")) and (input == "lv1" or input == "lv2" or input == "lv3" or input == "lv4") then
- 30
+ 30
else if input == "lv1" or input == "lv2" or input == "lv3" or input == "lv4" then
lv_chop(styling.level_1_chop, cell:3)
else if back_class() and (input == "lv6" or (input == "lv7" and card.level_7_text != "") or (input == "lv8" and card.level_8_text != "")) and (input == "lv5" or input == "lv6" or input == "lv7" or input == "lv8") then
@@ -396,6 +392,18 @@ init script:
has_two_abilities := { max_level() < 3 and max_level() > 0}
back_four_abilities := { max_levelb() > 3 or force_tallb()}
back_two_abilities := { max_levelb() < 3 and max_levelb() > 0}
+ walker_mask_front := {
+ (if front_clear() then "clear_" else if is_normal_size() or is_full() then "" else "wide_")
+ + (if is_full() then ("mythic_mask" + (if max_level() > 3 or force_tall() then "_four" else "") + (if is_stamped() then "_rare" else "")))
+ + (if not is_full() then ((if max_level() > 3 or force_tall() then "four_" else "") + "frame_mask") else "")
+ + ".png"
+ }
+ walker_mask_back := {
+ (if back_clear() then "clear_" else if is_normal_size() or is_full() then "" else "wide_")
+ + (if is_full() then ("mythic_mask" + (if max_levelb() > 3 or force_tallb() then "_four" else "") + "_back"))
+ + (if not is_full() then ((if max_levelb() > 3 or force_tallb() then "four_" else "") + "frame_mask") else "")
+ + ".png"
+ }
##### leveler stuff
@@ -560,7 +568,7 @@ init script:
else if (back_four_boxes() or back_three_boxes()) and input +17 >= (if split_23b() != "" then split_23b() else 343) then 3
else if input +17 >= (if split_12b() != "" then split_12b() else 249) then 2
else if input +17 <= (if split_12b() != "" then split_12b() else 249) then 1
- else 0
+ else 0
}
level_leader2 := {
alt := alt_leaders()
@@ -578,7 +586,7 @@ init script:
is_d20 := {styling.d20_dividers != "off" and not is_leveler()}
is_all_break := {contains(styling.d20_dividers, match:"all breaks")}
d20string := "^()?((()?[-0-9 ,+>\<]()?)+|[Ee]lse|[Oo]ther) ?()?[|]"
- d20_array :=
+ d20_array :=
filter_text@(match:"(\n|"+d20string+")")
+split_text@(match:d20string)
number_of_rolls := {if is_all_break() then 1+length(filter_text(card.rule_text, match:"\n"))-rolls_start(card.text) else length(d20_array(input))-1}
@@ -678,15 +686,15 @@ init script:
###### future
is_shifted := {false}
back_shifted := {false}
-
+
special_text := {
- if styling.front_style == "saga" then (
+ if contains(styling.front_style, match:"saga") then (
card.chapter_text
+(if card.level_1_text != "" then "\n" + end_leader(level_leader(1)) + card.level_1_text else "")
+(if card.level_2_text != "" then "\n" + end_leader(level_leader(2)) + card.level_2_text else "")
+(if card.level_3_text != "" then "\n" + end_leader(level_leader(3)) + card.level_3_text else "")
+(if card.level_4_text != "" then "\n" + end_leader(level_leader(4)) + card.level_4_text else "")
- )
+ )
else if is_class() then (
card.chapter_text
+(if card.level_1_text != "" then "\n" + card.level_1_text)
@@ -699,7 +707,7 @@ init script:
+ (if card.level_1 != "" then "[" + level_label(1) + " " + card.level_1 + "] " else "") + card.level_2_text + (if card.pt_2 != "" then " [" + card.pt_2 + "]" else "") + "\n"
+ (if card.level_2 != "" then "[" + level_label(2) + " " + card.level_2 + "] " else "") + card.level_3_text + (if card.pt_3 != "" then " [" + card.pt_3 + "]" else "") + (if card.level_4_text != "" then "\n" else "")
+ (if card.level_3 != "" then "[" + level_label(3) + " " + card.level_3 + "] " else "") + card.level_4_text + (if card.pt_7 != "" then " [" + card.pt_7 + "]" else "")
- )
+ )
else if is_mutate() then card.level_1_text + "\n" + card.text
else if not contains(styling.front_style, match:"planeswalker") then "" else
(if card.loyalty_cost_1 != "" then "[" + card.loyalty_cost_1 + "]: " else "") +(if card.level_1_text != "" and card.level_1_text != card.rule_text then card.level_1_text+"\n" else split_text(match:"\n", card.rule_text).0+"\n")
@@ -714,7 +722,7 @@ init script:
+(if card.level_6_text != "" then "\n" + end_leader(level_leader2(2)) + card.level_6_text else "")
+(if card.level_7_text != "" then "\n" + end_leader(level_leader2(3)) + card.level_7_text else "")
+(if card.level_8_text != "" then "\n" + end_leader(level_leader2(4)) + card.level_8_text else "")
- )
+ )
else if back_class() then (
card.chapter_text_2
+(if card.level_5_text != "" then "\n" + card.level_5_text)
@@ -727,7 +735,7 @@ init script:
+ (if card.level_6 != "" then "[" + level_label(5) + " " + card.level_6 + "] " else "") + card.level_6_text + (if card.pt_5 != "" then " [" + card.pt_5 + "]" else "") + "\n"
+ (if card.level_7 != "" then "[" + level_label(6) + " " + card.level_7 + "] " else "") + card.level_7_text + (if card.pt_6 != "" then " [" + card.pt_6 + "]" else "") + (if card.level_8_text != "" then "\n" else "")
+ (if card.level_8 != "" then "[" + level_label(7) + " " + card.level_8 + "] " else "") + card.level_8_text + (if card.pt_8 != "" then " [" + card.pt_8 + "]" else "")
- )
+ )
else if back_mutate() then card.level_5_text + "\n" + card.text_2
else if not contains(styling.back_style, match:"planeswalker") then "" else
(if card.loyalty_cost_5 != "" then "[" + card.loyalty_cost_5 + "]: " else "") +(if card.level_5_text != "" and card.level_5_text != card.rule_text_2 then card.level_5_text+"\n" else split_text(match:"\n", card.rule_text_2).0+"\n")
@@ -1135,7 +1143,7 @@ card style:
image: { if back_clear() or back_map() or mainframe_walkerb() then "" else if back_saga() or back_class() then saga_background() else if chosen(styling.other_options, choice:"normal back face") then unnotched_background() else card_background2() }
############################# Name line
name:
- left: { if is_map() then 65 else if is_normal() then 58 else 60 }
+ left: { if is_map() then 65 else if is_normal() then 58 else 62 }
top: { if is_map() then 27 else if is_normal() then 30 else if front_clear() then 22 else 22 }
right: { (if is_map() then 344 else 339) - card_style.casting_cost.content_width }
height: {23 - (0.5 * shrink_name())}
@@ -1147,7 +1155,7 @@ card style:
size: { if is_map() then 14.8 - shrink_name() else 16 - shrink_name() }
color: black
name 2:
- left: { if back_map() then 442 else if back_normal() then 435 else 437 }
+ left: { if back_map() then 442 else if back_normal() then 435 else 439 }
top: { (if back_map() then 27 else if back_normal() then 30 else if back_clear() then 22 else 22) - 0.5*shrink_name2() }
right: { (if back_map() then 719 else 714) - card_style.casting_cost_2.content_width }
height: {23 - (0.5 * shrink_name2())}
@@ -2192,7 +2200,7 @@ card style:
color: white
weight: bold
############################## Alias
- alias:
+ alias:
left: {if is_saga() then 188 else if is_skinned() then 45 else if poke_walker() then 36 else if is_map() then 17 else 33}
top: {if mainframe_walker() then 47 else if is_map() then 58 else 53}
width: {if is_skinned() then 285 else if use_evobar() then max(100, card_style.alias.content_width) else 0}
@@ -2206,7 +2214,7 @@ card style:
style: {if use_evobar() then "italic" else "bold"}
weight: {if use_evobar() then "italic" else "bold"}
color: {if use_evobar() then "black" else "white"}
- alias 2:
+ alias 2:
left: { if back_saga() then 565 else if back_skinned() then 422 else if back_poke_walker() then 413 else if back_map() then 394 else 410}
top: {if mainframe_walkerb() then 47 else if back_map() then 58 else 53}
width: {if back_skinned() then 285 else if use_evobar() then max(100, card_style.alias_2.content_width) else 0}
@@ -2724,6 +2732,20 @@ extra card field:
save value: false
editable: false
script: card.card_color_2
+extra card field:
+ type: choice
+ name: class paper
+ choice: bookmark
+ save value: false
+ editable: false
+ script: card.card_color_2
+extra card field:
+ type: choice
+ name: class paper 2
+ choice: bookmark
+ save value: false
+ editable: false
+ script: card.card_color_2
extra card field:
type: choice
name: curtain 2
@@ -3296,7 +3318,7 @@ extra card style:
visible: { is_stamped() and not front_clear() }
render style: image
image: { if is_saga() then "saga_stamp.png" else if is_map() then "maps/holo_stamp.png" else if mainframe_walker() then walker_stamp() else if is_normal() then card_stamp2() else card_stamp() }
- mask: { (if is_full() then (if mainframe_walker() then "mythic" else "med_full_") else "") + (if mainframe_walker() then "walker_" else "") + "stamp_mask.png" }
+ mask: { (if is_full() and mainframe_walker() then "mythic" else "") + (if mainframe_walker() then "walker_" else "") + "stamp_mask.png" }
foil stamp:
left: {if front_clear() then 168 else if is_normal() then 165 else 169 }
top: { if front_clear() then 471 else if is_normal() then 472 else 473 }
@@ -3745,10 +3767,10 @@ extra card style:
color: white
weight: bold
corner:
- left: { (if is_map() then 22 else 19)-(if is_modal_dfc() then (if front_clear() then 9 else 6) else 0)}
- top: { (if is_normal() then 25 else 18) - (if is_modal_dfc() then (if front_clear() then 2 else 3) else 0)}
- height: { if is_modal_dfc() then 36 else if is_normal() then 31 else 32}
- width: { if is_modal_dfc() then 43 else if is_normal() then 31 else 32}
+ left: { (if is_map() then 22 else if is_normal() then 19 else 21) - (if is_modal_dfc() then 9 else 0)}
+ top: { (if is_normal() then 25 else 17) - (if is_modal_dfc() then 2 else 0)}
+ height: { if is_modal_dfc() then 35 else if is_normal() then 31 else 32}
+ width: { if is_modal_dfc() then 42 else if is_normal() then 31 else 32}
z index: 5
render style: image
choice images:
@@ -3780,10 +3802,10 @@ extra card style:
modal: {front_arrow_image(card.card_color)}
corner 2:
- left: { (if back_map() then 399 else 396)-(if is_modal_dfc() then (if back_clear() then 9 else 6) else 0)}
- top: { (if back_normal() then 25 else 18) - (if is_modal_dfc() then (if back_clear() then 2 else 3) else 0)}
- height: { if is_modal_dfc() then 36 else if back_normal() then 31 else 32}
- width: { if is_modal_dfc() then 43 else if back_normal() then 31 else 32}
+ left: { (if back_map() then 399 else if back_normal() then 396 else 398) - (if is_modal_dfc() then 9 else 0)}
+ top: { (if back_normal() then 25 else 17) - (if is_modal_dfc() then 2 else 0)}
+ height: { if is_modal_dfc() then 35 else if back_normal() then 31 else 32}
+ width: { if is_modal_dfc() then 42 else if back_normal() then 31 else 32}
z index: 5
render style: image
choice images:
@@ -3862,7 +3884,7 @@ extra card style:
image: {if front_clear() then "xcrown.png" else legend_background()}
z index: 3
visible: {is_legend()}
- mask: { if is_curtains() or is_full() then "curtainmask.png" else if not front_clear() then "nodemask.png"}
+ mask: { if is_curtains() then "curtainmask.png" else if not front_clear() then "nodemask.png"}
miracle overlay:
left: 0
top: 0
@@ -3922,7 +3944,7 @@ extra card style:
image: {if back_clear() then "xcrown.png" else legend_background2()}
z index: 3
visible: {back_legend()}
- mask: { if is_curtains() or is_full() then "curtainmask.png" else if not back_clear() then "nodemask.png"}
+ mask: { if is_curtains() then "curtainmask.png" else if not back_clear() then "nodemask.png"}
vehicle overlay 2:
left: 377
top: 0
@@ -3942,7 +3964,7 @@ extra card style:
render style: image
image: {if is_map() then map_background() else if front_clear() then ((if is_normal() then "clear" else if has_four_abilities() then "planeswalker/xcard3" else "planeswalker/xcard") + (if is_stamped() then "_rare") + ".png") else if has_four_abilities() then card_background5() else card_background3()}
visible: {is_map() or front_clear() or mainframe_walker()}
- mask: {if is_map() then "maps/frame_mask.png" else if front_clear() then "" else (if max_level() > 3 or force_tall() then "four_" else "") + (if is_full() then (if is_stamped() then "mythic_image_rare_mask" else "mythic_mask") else "frame_mask") + ".png"}
+ mask: {if is_map() then "maps/frame_mask.png" else walker_mask_front()}
floating frame 2:
left: 377
top: 0
@@ -3952,7 +3974,7 @@ extra card style:
render style: image
image: {if back_map() then map_background() else if chosen(styling.other_options, choice:"normal back face") then (if back_clear() then ((if back_normal() then "clear" else if back_four_abilities() then "planeswalker/xcard3" else "planeswalker/xcard") + ".png") else if back_four_abilities() then card_background5() else card_background3()) else if back_clear() then ((if back_normal() then "clear2" else if back_four_abilities() then "planeswalker/xcard4" else "planeswalker/xcard2") + ".png") else if back_four_abilities() then card_background6() else card_background4()}
visible: {back_map() or back_clear() or mainframe_walkerb()}
- mask: {if back_map() then "maps/frame_mask.png" else if back_clear() then "" else (if max_levelb() > 3 or force_tallb() then "four_" else "") + (if is_full() then (if is_stamped() then "mythic_image_rare_mask" else "mythic_mask") else "frame_mask") + ".png"}
+ mask: {if back_map() then "maps/frame_mask.png" else walker_mask_back()}
front modal flag:
left: {if mainframe_walker() then 10 else 14}
top: 468
@@ -4145,7 +4167,7 @@ extra card style:
width: {if is_mutate() then 317 else 156}
height: {if is_mutate() or is_class() then 2 else 3}
render style: image
- z index: 3
+ z index: 4
image: {if is_class() then "bar.png" else if is_mutate() then "mutbar.png" else "line.png"}
visible: {is_saga() or is_mutate() or is_class()}
linebreak 2:
@@ -4154,7 +4176,7 @@ extra card style:
width: {if is_class() and card.level_2_text == "" then 0 else 156}
height: {if is_class() then 25 else 3}
render style: image
- z index: 3
+ z index: 4
image: {if is_class() then "level.png" else "line.png"}
visible: {is_saga() or is_class()}
linebreak 3:
@@ -4163,14 +4185,14 @@ extra card style:
width: {if is_class() and card.level_3_text == "" then 0 else 156}
height: {if is_class() then 25 else 3}
render style: image
- z index: 3
+ z index: 4
image: {if is_class() then "level.png" else "line.png"}
visible: {three_boxes() or four_boxes() or is_class()}
linebreak 4:
left: {if is_class() then 188 else 30}
top: {if is_class() then lev4() else if split_34() == "" then 600 else split_34()-1}
width: {if is_class() and card.level_4_text == "" then 0 else 156}
- height: 3
+ height: 4
render style: image
height: {if is_class() then 25 else 3}
image: {if is_class() then "level.png" else "line.png"}
@@ -4245,7 +4267,7 @@ extra card style:
width: {if back_mutate() then 317 else 156}
height: {if back_mutate() or back_class() then 2 else 3}
render style: image
- z index: 3
+ z index: 4
image: {if back_class() then "bar.png" else if back_mutate() then "mutbar.png" else "line.png"}
visible: {back_saga() or back_mutate() or back_class()}
linebreak 2b:
@@ -4254,7 +4276,7 @@ extra card style:
width: {if back_class() and card.level_6_text == "" then 0 else 156}
height: {if back_class() then 25 else 3}
render style: image
- z index: 3
+ z index: 4
image: {if back_class() then "level.png" else "line.png"}
visible: {back_saga() or back_class()}
linebreak 3b:
@@ -4263,7 +4285,7 @@ extra card style:
width: {if back_class() and card.level_7_text == "" then 0 else 156}
height: {if back_class() then 25 else 3}
render style: image
- z index: 3
+ z index: 4
image: {if back_class() then "level.png" else "line.png"}
visible: {back_three_boxes() or back_four_boxes() or back_class()}
linebreak 4b:
@@ -4272,7 +4294,7 @@ extra card style:
width: {if back_class() and card.level_8_text == "" then 0 else 156}
height: {if back_class() then 25 else 3}
render style: image
- z index: 3
+ z index: 4
image: {if back_class() then "level.png" else "line.png"}
visible: {back_four_boxes() or back_class()}
opac filter:
@@ -4403,7 +4425,7 @@ extra card style:
lvl label 3:
left: {if is_class() then 270 else if box_leveler() then 8 else if loy_leveler() then 48 else 21}
top: {if is_class() then lev4()+4 else l4_center() - (if loy_leveler() then 2 else 10) + arrow_offset(3)}
- width: {if is_class() and card.level_4_text != "" then 70 else if is_leveler() or card.level_2 != "" then (if loy_leveler() then 10 else 34 + (if box_leveler() then 30 else 0)) else 0}
+ width: {if is_class() and card.level_4_text != "" then 70 else if is_class() then 0 else if is_leveler() or card.level_2 != "" then (if loy_leveler() then 10 else 34 + (if box_leveler() then 30 else 0)) else 0}
height: {if is_class() then 20 else if loy_leveler() then 10 else if center_label(3) then 0 else 10}
z index: 6
alignment: {if is_class() then "center right" else "center middle"}
@@ -4590,23 +4612,41 @@ extra card style:
image: {if loy_leveler2() then loyalty_image_name(card.level_8) else if box_leveler2() then card_ptbox() else arrow_background()}
visible: {not back_class()}
bookmark:
- left: {if is_class() then 186 else 15}
- top: {if is_class() then 58 else 60}
- width: {if is_class() then 160 else 27}
- height: {if is_class() then 380 else 372}
+ left: 15
+ top: 60
+ width: 27
+ height: 372
render style: image
- image: {if is_class() then "paper.png" else bookmark_background()}
- z index: 4
- visible: {is_saga() or is_class()}
+ image: {bookmark_background()}
+ z index: 5
+ visible: {is_saga()}
bookmark 2:
- left: {if back_class() then 563 else 392}
- top: {if back_class() then 58 else 60}
- width: {if back_class() then 160 else 27}
- height: {if back_class() then 380 else 372}
+ left: 392
+ top: 60
+ width: 27
+ height: 372
render style: image
- image: {if back_class() then "paper.png" else bookmark_background()}
+ image: {bookmark_background()}
+ z index: 5
+ visible: {back_saga()}
+ class paper:
+ left: 186
+ top: 58
+ width: 160
+ height: 380
+ render style: image
+ image: paper.png
z index: 4
- visible: {back_saga() or back_class()}
+ visible: {is_class()}
+ class paper 2:
+ left: 563
+ top: 58
+ width: 160
+ height: 380
+ render style: image
+ image: paper.png
+ z index: 4
+ visible: {back_class()}
stripe:
left: 15
top: 60
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/acard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/acard.jpg
index 2920fac2a..f2ca8e0c3 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/acard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/acard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/bcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/bcard.jpg
index 87b763ac6..dfbfb7bae 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/bcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/bcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/blcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/blcard.jpg
index eadeaec8c..26e579506 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/blcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/blcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/ccard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/ccard.jpg
index 73df266f4..0a8065eb7 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/ccard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/ccard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/clcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/clcard.jpg
index e55f7cae0..78dec32dd 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/clcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/clcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/gcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/gcard.jpg
index e26d96cd0..a38b82b91 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/gcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/gcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/glcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/glcard.jpg
index 09e7f5170..6ff74ca92 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/glcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/glcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/mcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/mcard.jpg
index b80a27c69..52ec2c592 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/mcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/mcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/mlcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/mlcard.jpg
index add32ca43..8bc3e9a27 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/mlcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/mlcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/rcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/rcard.jpg
index 279a3a531..89d64b8bc 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/rcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/rcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/rlcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/rlcard.jpg
index e8fd25941..5236810dd 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/rlcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/rlcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/ucard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/ucard.jpg
index 7bce0654b..4709e7520 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/ucard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/ucard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/ulcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/ulcard.jpg
index dc977d8a6..68c215229 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/ulcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/ulcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/wcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/wcard.jpg
index 272e6ee56..06f655477 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/wcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/wcard.jpg differ
diff --git a/data/magic-m15-mainframe-dfc.mse-style/unnotched/wlcard.jpg b/data/magic-m15-mainframe-dfc.mse-style/unnotched/wlcard.jpg
index c77292054..d7e473518 100644
Binary files a/data/magic-m15-mainframe-dfc.mse-style/unnotched/wlcard.jpg and b/data/magic-m15-mainframe-dfc.mse-style/unnotched/wlcard.jpg differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/acard3.png b/data/magic-m15-mainframe-planeswalker.mse-style/acard3.png
new file mode 100644
index 000000000..03e50d9c5
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/acard3.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/acard4.png b/data/magic-m15-mainframe-planeswalker.mse-style/acard4.png
new file mode 100644
index 000000000..98b731b3f
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/acard4.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/artifact_blend_card3.png b/data/magic-m15-mainframe-planeswalker.mse-style/artifact_blend_card3.png
new file mode 100644
index 000000000..257908f48
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/artifact_blend_card3.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/artifact_blend_card4.png b/data/magic-m15-mainframe-planeswalker.mse-style/artifact_blend_card4.png
new file mode 100644
index 000000000..e7f0a8330
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/artifact_blend_card4.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/artifact_blend_page.png b/data/magic-m15-mainframe-planeswalker.mse-style/artifact_blend_page.png
index a764cd57b..17cf869a9 100644
Binary files a/data/magic-m15-mainframe-planeswalker.mse-style/artifact_blend_page.png and b/data/magic-m15-mainframe-planeswalker.mse-style/artifact_blend_page.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/artifact_blend_page2.png b/data/magic-m15-mainframe-planeswalker.mse-style/artifact_blend_page2.png
new file mode 100644
index 000000000..81cc3d3e4
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/artifact_blend_page2.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/bcard3.png b/data/magic-m15-mainframe-planeswalker.mse-style/bcard3.png
new file mode 100644
index 000000000..9f3e6e83a
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/bcard3.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/bcard4.png b/data/magic-m15-mainframe-planeswalker.mse-style/bcard4.png
new file mode 100644
index 000000000..f83567f44
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/bcard4.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/ccard3.png b/data/magic-m15-mainframe-planeswalker.mse-style/ccard3.png
new file mode 100644
index 000000000..f1c4df7d6
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/ccard3.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/ccard4.png b/data/magic-m15-mainframe-planeswalker.mse-style/ccard4.png
new file mode 100644
index 000000000..01e7289f8
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/ccard4.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/gcard3.png b/data/magic-m15-mainframe-planeswalker.mse-style/gcard3.png
new file mode 100644
index 000000000..ee09412d6
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/gcard3.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/gcard4.png b/data/magic-m15-mainframe-planeswalker.mse-style/gcard4.png
new file mode 100644
index 000000000..72a2c8f9f
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/gcard4.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/hybrid_blend_card3.png b/data/magic-m15-mainframe-planeswalker.mse-style/hybrid_blend_card3.png
new file mode 100644
index 000000000..3e8ba0c7a
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/hybrid_blend_card3.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/hybrid_blend_card4.png b/data/magic-m15-mainframe-planeswalker.mse-style/hybrid_blend_card4.png
new file mode 100644
index 000000000..daa3ba61f
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/hybrid_blend_card4.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/hybrid_blend_page.png b/data/magic-m15-mainframe-planeswalker.mse-style/hybrid_blend_page.png
index 4db3b0a9d..1cee8f92a 100644
Binary files a/data/magic-m15-mainframe-planeswalker.mse-style/hybrid_blend_page.png and b/data/magic-m15-mainframe-planeswalker.mse-style/hybrid_blend_page.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/hybrid_blend_page2.png b/data/magic-m15-mainframe-planeswalker.mse-style/hybrid_blend_page2.png
new file mode 100644
index 000000000..1235ae991
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/hybrid_blend_page2.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/mcard3.png b/data/magic-m15-mainframe-planeswalker.mse-style/mcard3.png
new file mode 100644
index 000000000..dda51d59c
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/mcard3.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/mcard4.png b/data/magic-m15-mainframe-planeswalker.mse-style/mcard4.png
new file mode 100644
index 000000000..bb417039b
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/mcard4.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/multicolor_blend_card3.png b/data/magic-m15-mainframe-planeswalker.mse-style/multicolor_blend_card3.png
new file mode 100644
index 000000000..0fb8a932d
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/multicolor_blend_card3.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/multicolor_blend_card4.png b/data/magic-m15-mainframe-planeswalker.mse-style/multicolor_blend_card4.png
new file mode 100644
index 000000000..fcdb43369
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/multicolor_blend_card4.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/multicolor_blend_page.png b/data/magic-m15-mainframe-planeswalker.mse-style/multicolor_blend_page.png
index 06e011b9e..107f3fc37 100644
Binary files a/data/magic-m15-mainframe-planeswalker.mse-style/multicolor_blend_page.png and b/data/magic-m15-mainframe-planeswalker.mse-style/multicolor_blend_page.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/multicolor_blend_page2.png b/data/magic-m15-mainframe-planeswalker.mse-style/multicolor_blend_page2.png
new file mode 100644
index 000000000..c97abec7a
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/multicolor_blend_page2.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/acard.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/acard.png
new file mode 100644
index 000000000..92f5fd996
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/page/acard.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/acard2.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/acard2.png
index 3c04cfa17..8d20344e2 100644
Binary files a/data/magic-m15-mainframe-planeswalker.mse-style/page/acard2.png and b/data/magic-m15-mainframe-planeswalker.mse-style/page/acard2.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/bcard.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/bcard.png
new file mode 100644
index 000000000..74cf7105c
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/page/bcard.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/bcard2.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/bcard2.png
index 13be8091b..e8de5f6dd 100644
Binary files a/data/magic-m15-mainframe-planeswalker.mse-style/page/bcard2.png and b/data/magic-m15-mainframe-planeswalker.mse-style/page/bcard2.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/ccard.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/ccard.png
new file mode 100644
index 000000000..035496013
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/page/ccard.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/ccard2.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/ccard2.png
index 082d504bc..805310ab6 100644
Binary files a/data/magic-m15-mainframe-planeswalker.mse-style/page/ccard2.png and b/data/magic-m15-mainframe-planeswalker.mse-style/page/ccard2.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/gcard.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/gcard.png
new file mode 100644
index 000000000..41a997325
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/page/gcard.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/gcard2.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/gcard2.png
index 99485c356..ad9eb1062 100644
Binary files a/data/magic-m15-mainframe-planeswalker.mse-style/page/gcard2.png and b/data/magic-m15-mainframe-planeswalker.mse-style/page/gcard2.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/mcard.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/mcard.png
new file mode 100644
index 000000000..1e572b47c
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/page/mcard.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/mcard2.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/mcard2.png
index fd58bebdb..6cc913bbe 100644
Binary files a/data/magic-m15-mainframe-planeswalker.mse-style/page/mcard2.png and b/data/magic-m15-mainframe-planeswalker.mse-style/page/mcard2.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/rcard.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/rcard.png
new file mode 100644
index 000000000..cfebd0a11
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/page/rcard.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/rcard2.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/rcard2.png
index 1e116fc22..4e189167c 100644
Binary files a/data/magic-m15-mainframe-planeswalker.mse-style/page/rcard2.png and b/data/magic-m15-mainframe-planeswalker.mse-style/page/rcard2.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/ucard.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/ucard.png
new file mode 100644
index 000000000..8088bd418
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/page/ucard.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/ucard2.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/ucard2.png
index 9e99bcb7c..67f16777a 100644
Binary files a/data/magic-m15-mainframe-planeswalker.mse-style/page/ucard2.png and b/data/magic-m15-mainframe-planeswalker.mse-style/page/ucard2.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/wcard.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/wcard.png
new file mode 100644
index 000000000..4ffd5bbc4
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/page/wcard.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/page/wcard2.png b/data/magic-m15-mainframe-planeswalker.mse-style/page/wcard2.png
index 580505761..0c08d730a 100644
Binary files a/data/magic-m15-mainframe-planeswalker.mse-style/page/wcard2.png and b/data/magic-m15-mainframe-planeswalker.mse-style/page/wcard2.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/rcard3.png b/data/magic-m15-mainframe-planeswalker.mse-style/rcard3.png
new file mode 100644
index 000000000..a0bb2a8d2
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/rcard3.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/rcard4.png b/data/magic-m15-mainframe-planeswalker.mse-style/rcard4.png
new file mode 100644
index 000000000..6a17db349
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/rcard4.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/style b/data/magic-m15-mainframe-planeswalker.mse-style/style
index 255b7a984..e89bf1b84 100644
--- a/data/magic-m15-mainframe-planeswalker.mse-style/style
+++ b/data/magic-m15-mainframe-planeswalker.mse-style/style
@@ -40,19 +40,22 @@ init script:
mask_hybrid_with_land := { styling.grey_hybrid_name }
mainframe_walker := {true}
text_filter := text_filter + {apply_margins(input, name:margin_code)} + {add_spacers(input, name:margin_code)}
- template_prefix := [card: "" card2: "" card3: "fullart/" card4: "fullart/" page:"page/" nyx:"nyx/" stamp: "" alias: "alias/" snowtexture:"snow/" identity: "/magic-identity-new.mse-include/"]
- template_suffix := [card: "card.png" card2: "card2.png" card3: "card.jpg" card4: "card2.jpg" page:"card2.png" nyx:"nyx.png" stamp: "stamp.png" snowtexture:"snow.png" alias:"alias.png", identity: "identity.png"]
+ template_prefix := [card: "" card2: "" card3: "" card3: "" card4: "" page:"page/" page2: "page/" nyx:"nyx/" stamp: "" alias: "alias/" snowtexture:"snow/" identity: "/magic-identity-new.mse-include/"]
+ template_suffix := [card: "card.png" card2: "card2.png" card3: "card3.png" card4: "card4.png" page:"card.png" page2:"card2.png" nyx:"nyx.png" stamp: "stamp.png" snowtexture:"snow.png" alias:"alias.png", 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) }
+ card_background4 := { color_background(type:"card4", base_hybrid:card_hybrid) }
alias_bar := { color_background(type:"alias", base_hybrid:card_hybrid) }
nyx_background := { color_background(type:"nyx", base_hybrid:card_hybrid) }
snow_texture := { color_background(type:"snowtexture", base_hybrid:card_hybrid) }
card_background_page := { color_background(type:"page", base_hybrid:card_hybrid) }
+ card_background_page2 := { color_background(type:"page2", base_hybrid:card_hybrid) }
# Use the normal tap symbol
mana_t := {
@@ -81,7 +84,7 @@ init script:
is_promo := { styling.promo }
# Does the card have four abilities?
- has_four_abilities := { max_level() > 3 or force_tall()}
+ has_four_abilities := { not force_short() and max_level() > 3 or force_tall()}
has_two_abilities := { max_level() < 3 }
is_stamped := { is_rare() and styling.holofoil_stamped_rares }
is_normal_size := { styling.default_image_size }
@@ -103,7 +106,7 @@ init script:
global_chop_top := { to_int(pull_comma_array(styling.combined_chop, cell:0, end:0, default:0))}
global_chop_bot := { to_int(pull_comma_array(styling.combined_chop, cell:1, end:0, default:0))}
- global_chop_right := { to_int(pull_comma_array(styling.combined_chop, cell:3, end:0, default:0)) + (if is_adventure() then 150 else 0)}
+ global_chop_right := { to_int(pull_comma_array(styling.combined_chop, cell:3, end:0, default:0)) + (if use_adv() then 150 else 0)}
top_of_textbox := {if has_four_abilities() then 292+global_chop_top()+(if is_clear() then 5 else 0) else 329+global_chop_top()}
use_full_art := { contains(styling.other_options, match:"mythic edition fullart") }
mask_script := {
@@ -190,6 +193,7 @@ init script:
else "auto"
}
force_tall := { contains(styling.other_options, match:"use taller frame")}
+ force_short := { contains(styling.other_options, match:"use short frame")}
has_identity := { styling.color_indicator_dot}
is_unsorted := {styling.remove_from_autocount}
##shrink_type := {if styling.shrink_typeline_text != "" then to_int(styling.shrink_typeline_text) else 0 }
@@ -207,6 +211,8 @@ init script:
is_clear := {styling.clear or contains(styling.other_options, match:"clear frame")}
is_nyx := {chosen(styling.other_options, choice:"nyx")}
is_adventure := {chosen(styling.other_options, choice:"adventure")}
+ is_tale := {chosen(styling.other_options, choice:"reversed adventure")}
+ use_adv := {is_adventure() or is_tale()}
is_snow := {chosen(styling.other_options, choice:"snow")}
is_vehicle := {chosen(styling.other_options, choice:"vehicle")}
is_pinned := {chosen(styling.other_options, choice:"pride pinlines")}
@@ -220,6 +226,7 @@ init script:
+ (if card.loyalty_cost_5 != "" then "[" + card.loyalty_cost_5 + "]" + ": " else "") + (if card.level_5_text != "" then card.level_5_text+"\n" else if contains(paragraph_count(card.rule_text), match:"~~~~") then split_text(match:"\n", card.rule_text).4+"\n" else "")
+ (if card.loyalty_cost_6 != "" then "[" + card.loyalty_cost_6 + "]" + ": " else "") + (if card.level_6_text != "" then card.level_6_text+"\n" else if contains(paragraph_count(card.rule_text), match:"~~~~~") then split_text(match:"\n", card.rule_text).5 else "")
out := replace(out, match:"\n\n+", replace:"")
+ out := replace(out, match:"\n+$", replace:"")
out
}
pw_font_size := { if styling.font_size != "" then styling.font_size else 12 }
@@ -243,7 +250,12 @@ init script:
output
}
alt_symbol := {symbol_variation(symbol:set.symbol, border_radius: alt_rarity_color().12, fill_type: "linear gradient", fill_color_1: rgb(alt_rarity_color().0, alt_rarity_color().1, alt_rarity_color().2), fill_color_2: rgb(alt_rarity_color().3, alt_rarity_color().4, alt_rarity_color().5), border_color_1: rgb(alt_rarity_color().6, alt_rarity_color().7, alt_rarity_color().8), border_color_2: rgb(alt_rarity_color().9, alt_rarity_color().10, alt_rarity_color().11), center_x:0.5, center_y:0.5, end_x:1, end_y:1)}
-
+ card_shape := {if use_adv() then "adventure" else "planeswalker"}
+ page_image := {
+ page := if has_four_abilities() then card_background_page2() else card_background_page()
+ if is_tale() then page := flip_horizontal(page)
+ page
+ }
############################################################## Set info fields
set info style:
symbol:
@@ -298,6 +310,7 @@ styling field:
name: other options
choice: clear frame
choice: use taller frame
+ choice: use short frame
choice: ancestral generic mana
choice: prerelease stamp
choice: un-indent nonloyalty abilities
@@ -308,6 +321,7 @@ styling field:
choice: snow
choice: vehicle
choice: adventure
+ choice: reversed adventure
choice: pride pinlines
initial: un-indent nonloyalty abilities
styling field:
@@ -435,7 +449,7 @@ card style:
render style: image
popup style: in place
image: { if is_clear() then "" else if has_four_abilities() then card_background2() else card_background() }
- mask: {if contains(styling.custom_mask, match:".png") then invert_image("/magic-mainframe-extras.mse-include/" + styling.custom_mask) else (if max_level() > 3 or force_tall() then "four_" else "") + (if use_full_art() then (if is_stamped() then "mythic_image_rare_mask" else "mythic_mask") else "frame_mask") + ".png"}
+ mask: {if contains(styling.custom_mask, match:".png") then invert_image("/magic-mainframe-extras.mse-include/" + styling.custom_mask) else (if not force_short() and max_level() > 3 or force_tall() then "four_" else "") + (if use_full_art() then (if is_stamped() then "mythic_image_rare_mask" else "mythic_mask") else "frame_mask") + ".png"}
############################# Name line
name:
left: { if card.card_symbol=="none" then 31 else 48 }
@@ -492,7 +506,7 @@ card style:
width: { if use_full_art() or is_clear() then 375 else if is_normal_size() then 324 else 345 }
height: { if use_full_art() or is_clear() then 523 else if is_normal_size() then 427.5 else 493 }
z index: -1
- mask: {if contains(styling.custom_mask, match:".png") then "" else "guidelines/" + (if is_clear() then "clear_" else if is_normal_size() or use_full_art() then "" else "wide_") + (if max_level() > 3 or force_tall() then "four_" else "") + (if is_clear() then "frame_mask" else if use_full_art() then (if is_stamped() then "mythic_image_rare_mask" else "mythic_mask") else "frame_mask") + ".png"}
+ mask: {if contains(styling.custom_mask, match:".png") then "" else "guidelines/" + (if is_clear() then "clear_" else if is_normal_size() or use_full_art() then "" else "wide_") + (if not force_short() and max_level() > 3 or force_tall() then "four_" else "") + (if is_clear() then "frame_mask" else if use_full_art() then (if is_stamped() then "mythic_image_rare_mask" else "mythic_mask") else "frame_mask") + ".png"}
image 2:
left: {if comma_count(styling.popout_image_style) == ",,,," then split_text(match:",", styling.popout_image_style).0 else "0"}
top: {if comma_count(styling.popout_image_style) == ",,,," then split_text(match:",", styling.popout_image_style).1 else "0"}
@@ -570,7 +584,7 @@ card style:
else symbol_variation(symbol: set.masterpiece_symbol, variation: "mythic rare")
############################# Text box
text:
- left: 48
+ left: {if is_adventure() then 198 else 48}
top: { top_of_textbox() }
width: {300 - global_chop_right()}
bottom: {477-global_chop_bot()-(if is_stamped() then 2 else 0)}
@@ -625,7 +639,7 @@ card style:
color: white
loyalty cost 1:
z index: 7
- left: 28
+ left: {if is_adventure() then 178 else 28}
top: { abil_center(0) - 17.3 - 2 - loyal_move() }
width: 18
height: 35
@@ -636,7 +650,7 @@ card style:
color: white
loyalty cost 2:
z index: 7
- left: 28
+ left: {if is_adventure() then 178 else 28}
top: { abil_center(1) - 17.3 - 2 - loyal_move2() }
width: 18
height: 35
@@ -647,7 +661,7 @@ card style:
color: white
loyalty cost 3:
z index: 7
- left: 28
+ left: {if is_adventure() then 178 else 28}
top: { abil_center(2) - 17.3 - 2 - loyal_move3() }
width: {if card.loyalty_cost_3 != "" or max_level() > 1 then 18 else 0}
height: 35
@@ -658,7 +672,7 @@ card style:
color: white
loyalty cost 4:
z index: 7
- left: 28
+ left: {if is_adventure() then 178 else 28}
top: { abil_center(3) - 17.3 - 2 - loyal_move4() }
width: {if card.loyalty_cost_4 != "" or max_level() > 2 then 18 else 0}
height: 35
@@ -669,7 +683,7 @@ card style:
color: white
loyalty cost 5:
z index: 7
- left: 28
+ left: {if is_adventure() then 178 else 28}
top: { abil_center(4) - 17.3 - 2 - loyal_move5() }
width: {if card.loyalty_cost_5 != "" or max_level() > 3 then 18 else 0}
height: 35
@@ -680,7 +694,7 @@ card style:
color: white
loyalty cost 6:
z index: 7
- left: 28
+ left: {if is_adventure() then 178 else 28}
top: { abil_center(5) - 17.3 - 2 - loyal_move6() }
width: {if card.loyalty_cost_6 != "" or max_level() > 4 then 18 else 0}
height: 35
@@ -726,10 +740,10 @@ card style:
weight: bold
################################### Adventure stuff
name 2:
- left: 202
- top: {323+shrink_name2()}
- right: { 35 + card_style.casting_cost_2.content_width }
- height: {if is_adventure() then 20-shrink_name2() else 0}
+ left: {if is_adventure() then 22 else 202}
+ top: {324+(0.5*shrink_name2())-(if has_four_abilities() then 36 else 0)}
+ width: { 139 - card_style.casting_cost_2.content_width }
+ height: {if use_adv() then 20-shrink_name2() else 0}
alignment: bottom shrink-overflow
z index: 4
font:
@@ -737,10 +751,10 @@ card style:
size: {12 - shrink_name2() }
color: white
casting cost 2:
- right: 345
- top: 323
+ right: {if is_adventure() then 165 else 345}
+ top: {if has_four_abilities() then 288 else 323}
width: { max(30, card_style.casting_cost_2.content_width) + 5 }
- height: {if is_adventure() then 23 else 0}
+ height: {if use_adv() then 23 else 0}
alignment: middle right
symbol font:
name: magic-mana-large
@@ -750,10 +764,10 @@ card style:
z index: 4
padding top: 0
type 2:
- left: 202
- top: {347+ shrink_type2()}
+ left: {if is_adventure() then 22 else 202}
+ top: {348+ shrink_type2()-(if has_four_abilities() then 36 else 0)}
width: 151
- height: {if is_adventure() then 20 else 0}
+ height: {if use_adv() then 20 else 0}
alignment: top shrink-overflow
z index: 4
padding top: 2
@@ -763,10 +777,10 @@ card style:
color: white
separator color: red
text 2:
- left: 198
- top: 367
- width: {if is_adventure() then 149 else 0}
- bottom: 479
+ left: {if is_adventure() then 20 else 198}
+ top: {if has_four_abilities() then 332 else 372}
+ width: {if use_adv() then 149 else 0}
+ bottom: {if is_tale() then 475 else 479}
font:
name: MPlantin
italic name: MPlantin-Italic
@@ -794,14 +808,14 @@ card style:
line height hard max: 1.3
line height line max: 1.6
card color 2:
- left: 193
- top: 322
- width: {if is_adventure() then 165 else 0}
- height: 155
- z index: 3
+ left: {if is_adventure() then 10 else 193}
+ top: {if has_four_abilities() then 287 else 322}
+ width: {if use_adv() then 165 else 0}
+ height: {if has_four_abilities() then 195 else 160}
+ z index: 4
render style: image
popup style: in place
- image: { card_background_page() }
+ image: { page_image() }
############################################################## Extra card fields
extra card field:
@@ -1065,6 +1079,12 @@ extra card field:
save value: true
editable: true
description: Where they put mtgstory.com on story spotlights.
+extra card field:
+ type: choice
+ name: adventure cover
+ script: card.card_color
+ save value: false
+ editable: false
extra card style:
card code:
left: 24
@@ -1123,7 +1143,7 @@ extra card style:
render style: image
image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"}
loyalty cost box 1:
- left: 15
+ left: {if is_adventure() then 165 else 15}
top: { abil_center(0) - 17.3 - 2 - loyal_move() }
width: 45
height: 36
@@ -1135,7 +1155,7 @@ extra card style:
loyalty down: loyaltydown.png
loyalty naught: loyaltynaught.png
loyalty cost box 2:
- left: 15
+ left: {if is_adventure() then 165 else 15}
top: { abil_center(1) - 17.3 - 2 - loyal_move2() }
width: 45
height: 36
@@ -1147,7 +1167,7 @@ extra card style:
loyalty down: loyaltydown.png
loyalty naught: loyaltynaught.png
loyalty cost box 3:
- left: 15
+ left: {if is_adventure() then 165 else 15}
top: { abil_center(2) - 17.3 - 2 - loyal_move3() }
width: 45
height: 36
@@ -1159,7 +1179,7 @@ extra card style:
loyalty down: loyaltydown.png
loyalty naught: loyaltynaught.png
loyalty cost box 4:
- left: 15
+ left: {if is_adventure() then 165 else 15}
top: { abil_center(3) - 17.3 - 2 - loyal_move4() }
width: 45
height: 36
@@ -1171,7 +1191,7 @@ extra card style:
loyalty down: loyaltydown.png
loyalty naught: loyaltynaught.png
loyalty cost box 5:
- left: 15
+ left: {if is_adventure() then 165 else 15}
top: { abil_center(4) - 17.3 - 2 - loyal_move5() }
width: 45
height: 36
@@ -1183,7 +1203,7 @@ extra card style:
loyalty down: loyaltydown.png
loyalty naught: loyaltynaught.png
loyalty cost box 6:
- left: 15
+ left: {if is_adventure() then 165 else 15}
top: { abil_center(5) - 17.3 - 2 - loyal_move6() }
width: 45
height: 36
@@ -1195,7 +1215,7 @@ extra card style:
loyalty down: loyaltydown.png
loyalty naught: loyaltynaught.png
colon 1:
- left: 59
+ left: {if is_adventure() then 209 else 59}
top: { abil_center(0) - 17.3 + 10 - loyal_move() }
width: 5
height: 10
@@ -1208,7 +1228,7 @@ extra card style:
alignment: middle center
visible: { card.loyalty_cost_1 != "" }
colon 2:
- left: 59
+ left: {if is_adventure() then 209 else 59}
top: { abil_center(1) - 17.3 + 10 - loyal_move2() }
width: 5
height: 10
@@ -1221,7 +1241,7 @@ extra card style:
alignment: middle center
visible: { card.loyalty_cost_2 != "" }
colon 3:
- left: 59
+ left: {if is_adventure() then 209 else 59}
top: { abil_center(2) - 17.3 + 10 - loyal_move3() }
width: {if has_two_abilities() then 0 else 5}
height: 10
@@ -1234,7 +1254,7 @@ extra card style:
alignment: middle center
visible: { card.loyalty_cost_3 != "" }
colon 4:
- left: 59
+ left: {if is_adventure() then 209 else 59}
top: { abil_center(3) - 17.3 + 10 - loyal_move4() }
width: { if has_four_abilities() then 5 else 0 }
height: 10
@@ -1247,7 +1267,7 @@ extra card style:
alignment: middle center
visible: { card.loyalty_cost_4 != "" }
colon 5:
- left: 59
+ left: {if is_adventure() then 209 else 59}
top: { abil_center(4) - 17.3 + 10 - loyal_move5() }
width: { if has_four_abilities() then 5 else 0 }
height: 10
@@ -1260,7 +1280,7 @@ extra card style:
alignment: middle center
visible: { card.loyalty_cost_5 != "" }
colon 6:
- left: 59
+ left: {if is_adventure() then 209 else 59}
top: { abil_center(5) - 17.3 + 10 - loyal_move6() }
width: { if has_four_abilities() then 5 else 0 }
height: 10
@@ -1500,3 +1520,12 @@ extra card style:
size: 7
color: white
weight: bold
+ adventure cover:
+ left: 0
+ top: {if has_four_abilities() then 288 else 324}
+ width: 375
+ height: {if has_four_abilities() then 200 else 164}
+ z index: 2
+ image: {if has_four_abilities() then card_background4() else card_background3()}
+ visible: {is_adventure()}
+ render style: image
\ No newline at end of file
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/stylec b/data/magic-m15-mainframe-planeswalker.mse-style/stylec
new file mode 100644
index 000000000..102aff2f8
--- /dev/null
+++ b/data/magic-m15-mainframe-planeswalker.mse-style/stylec
@@ -0,0 +1,1364 @@
+mse version: 2.0.0
+game: magic
+short name: Mainframe Walkers
+full name: M15 Planeswalkers
+installer group: magic/m15 style/planeswalkers
+icon: card-sample.png
+position hint: 003
+
+version: 2020-03-19
+depends on:
+ package: magic.mse-game
+ version: 2014-06-25
+depends on:
+ package: magic-watermarks.mse-include
+ version: 2007-09-23
+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-identity-new.mse-include
+ version: 2012-01-22
+depends on:
+ package: magic-mainframe-extras.mse-include
+ version: 2017-05-05
+
+card width: 375
+card height: 523
+card dpi: 150
+########## new frames by silverback_ape
+############################################################## Extra scripts
+init script:
+ # Should hybrids have a grey name?
+ mask_hybrid_with_land := { styling.grey_hybrid_name }
+ mainframe_walker := {true}
+ text_filter := text_filter + {apply_margins(input, name:margin_code)} + {add_spacers(input, name:margin_code)}
+ template_prefix := [card: "" card2: "" card3: "fullart/" card4: "fullart/" nyx:"nyx/" stamp: "" alias: "alias/" snowtexture:"snow/" identity: "/magic-identity-new.mse-include/"]
+ template_suffix := [card: "card.png" card2: "card2.png" card3: "card.jpg" card4: "card2.jpg" nyx:"nyx.png" stamp: "stamp.png" snowtexture:"snow.png" alias:"alias.png", 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) }
+ alias_bar := { color_background(type:"alias", base_hybrid:card_hybrid) }
+ nyx_background := { color_background(type:"nyx", base_hybrid:card_hybrid) }
+ snow_texture := { color_background(type:"snowtexture", 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 := { max_level() > 3 or force_tall()}
+ has_two_abilities := { max_level() < 3 }
+ is_stamped := { is_rare() and styling.holofoil_stamped_rares }
+ is_normal_size := { styling.default_image_size }
+ loyal_move := { pull_comma_array(styling.shift_loyalty_costs, cell:0, end:0, default:0)}
+ loyal_move2 := { if card.level_2_text == "" or card.level_2_text == "" then -15 else pull_comma_array(styling.shift_loyalty_costs, cell:1, end:0, default:0)}
+ loyal_move3 := { if card.level_3_text == "" or card.level_3_text == "" then -5 else pull_comma_array(styling.shift_loyalty_costs, cell:2, end:0, default:0)}
+ loyal_move4 := { pull_comma_array(styling.shift_loyalty_costs, cell:3, end:0, default:0)}
+ loyal_move5 := { pull_comma_array(styling.shift_loyalty_costs, cell:4, end:0, default:0)}
+ loyal_move6 := { pull_comma_array(styling.shift_loyalty_costs, cell:5, end:0, default:0)}
+
+
+ is_level_walker := { true }
+ unindent := { contains(styling.other_options, match:"un-indent nonloyalty abilities")}
+
+ comma_count := filter_text@(match:",")
+ paragraph_count :=
+ replace@(match:"\n", replace:"")+
+ filter_text@(match:"\n")
+
+ global_chop_top := { to_int(pull_comma_array(styling.combined_chop, cell:0, end:0, default:0))}
+ global_chop_bot := { to_int(pull_comma_array(styling.combined_chop, cell:1, end:0, default:0))}
+ top_of_textbox := {if has_four_abilities() then 292+global_chop_top()+(if is_clear() then 5 else 0) else 329+global_chop_top()}
+ use_full_art := { contains(styling.other_options, match:"mythic edition fullart") }
+ mask_script := {
+ if use_full_art() then "fortress_imagemask.png"
+ else ""
+ }
+ text_size := { 14 -(if styling.font_size == "" then 0 else if contains(styling.font_size, match: ".5") then to_int(split_text(match:".5", styling.font_size).0) else styling.font_size) }
+ stripe01 := {if length(card_style.text.layout.separators) or else 0 > 0 then card_style.text.top + card_style.text.layout.separators[0] + stripe_adj(top:0, bot:1) else 0}
+ stripe12 := {if length(card_style.text.layout.separators) or else 0 > 1 then card_style.text.top + card_style.text.layout.separators[1] + stripe_adj(top:0, bot:1) else 0}
+ stripe23 := {if length(card_style.text.layout.separators) or else 0 > 2 then card_style.text.top + card_style.text.layout.separators[2] + stripe_adj(top:0, bot:1) else 0}
+ stripe34 := {if length(card_style.text.layout.separators) or else 0 > 3 then card_style.text.top + card_style.text.layout.separators[3] + stripe_adj(top:0, bot:1) else 0}
+ stripe45 := {if length(card_style.text.layout.separators) or else 0 > 4 then card_style.text.top + card_style.text.layout.separators[4] + stripe_adj(top:0, bot:1) else 0}
+ stripe_adj := {-4}
+
+ abil_center := { if card_style.text.layout.blocks[input].bottom or else 0 > 0 then
+ card_style.text.top + card_style.text.layout.blocks[input].middle + overlap_check(input)
+ else -30
+ }
+ overlap_check := {
+ if input == 0
+ then 0
+ else if card_style.text.layout.blocks[input].middle == card_style.text.layout.blocks[input-1].middle
+ then 40*(input-1)
+ else 0
+ }
+ max_level_function := [
+ "auto": {
+ if card.level_6_text != "" and card.level_6_text != "" then 6
+ else if card.level_5_text != "" and card.level_5_text != "" then 5
+ else if card.level_4_text != "" and card.level_4_text != "" then 4
+ else if card.level_3_text != "" and card.level_3_text != "" then 3
+ else 2
+ },
+ "one": {1},
+ "two": {2},
+ "three": {3},
+ "four": {4},
+ "five": {5},
+ "six": {6},
+ ]
+ max_level := {max_level_function[force_level()]()}
+ mainframe_walker_text_script := {
+ if max_level() == 1 or (max_level() == 2 and card.level_2_text == "") or force_level() == "two" then
+ combined_editor(field1: card.level_1_text, separator1: "\n", field2: card.level_2_text)
+ else if max_level() == 2 or force_level() == "three" then
+ combined_editor(field1: card.level_1_text, separator1: "\n", field2: card.level_2_text, separator2: "\n", field3: card.level_3_text)
+ else if max_level() == 3 or force_level() == "four" then
+ combined_editor(field1: card.level_1_text, separator1: "\n", field2: card.level_2_text, separator2: "\n", field3: card.level_3_text, separator3: "\n", field4: card.level_4_text)
+ else if max_level() == 4 or force_level() == "five" then
+ combined_editor(field1: card.level_1_text, separator1: "\n", field2: card.level_2_text, separator2: "\n", field3: card.level_3_text, separator3: "\n", field4: card.level_4_text, separator4: "\n", field5: card.level_5_text)
+ else if max_level() > 4 or force_level() == "six" then
+ combined_editor(field1: card.level_1_text, separator1: "\n", field2: card.level_2_text, separator2: "\n", field3: card.level_3_text, separator3: "\n", field4: card.level_4_text, separator4: "\n", field5: card.level_5_text, separator5: "\n", field6: card.level_6_text)
+ else
+ combined_editor(field1: card.level_1_text, separator1: "\n", field2: card.level_2_text, separator2: "\n", field3: card.level_3_text)
+ }
+ margin_left := {
+ if input == "lv1" then (if card.loyalty_cost_1 == "" and unindent() then 0 else 130)
+ else if input == "lv2" then (if card.loyalty_cost_2 == "" and unindent() then 0 else 130)
+ else if input == "lv3" then (if card.loyalty_cost_3 == "" and unindent() then 0 else 130)
+ else if input == "lv4" then (if card.loyalty_cost_4 == "" and unindent() then 0 else 130)
+ else if input == "lv5" then (if card.loyalty_cost_5 == "" and unindent() then 0 else 130)
+ else if input == "lv6" then (if card.loyalty_cost_6 == "" and unindent() then 0 else 130)
+ else 0
+ }
+ margin_top := {to_int(pull_comma_array(styling.combined_chop, cell:2, end:0, default:0))}
+ add_spacers := { if input == "" and inner_level(name) then "" else input}
+ inner_level := {
+ if input == "lv5" and max_level() > 5 then true
+ else if input == "lv4" and max_level() > 4 then true
+ else if input == "lv3" and max_level() > 3 then true
+ else if input == "lv2" and max_level() > 2 then true
+ else if input == "lv1" and max_level() > 1 then true
+ else false
+ }
+
+ force_level := {
+ if styling.override_levels == "one ability" then "one"
+ else if styling.override_levels == "two abilities" then "two"
+ else if styling.override_levels == "three abilities" then "three"
+ else if styling.override_levels == "four abilities" then "four"
+ else if styling.override_levels == "five abilities" then "five"
+ else if styling.override_levels == "six abilities" then "six"
+ else "auto"
+ }
+ force_tall := { contains(styling.other_options, match:"use taller frame")}
+ has_identity := { styling.color_indicator_dot}
+ is_unsorted := {styling.remove_from_autocount}
+ shrink_type := {if styling.shrink_typeline_text != "" then to_int(styling.shrink_typeline_text) else 0 }
+ shrink_name := {if styling.shrink_name_text != "" then to_int(styling.shrink_name_text) else 0 }
+ use_main_rarity := { contains(set.mainframe_rarity_name, match: ".png")}
+ un_png := replace@(match:".png", replace: "")
+ ancestral_mana := { contains(styling.other_options, match:"ancestral generic")}
+ opacity := {pull_comma_array(styling.opacity, cell:input, end:false, default:50)}
+ is_skinned := {contains(styling.other_options, match:"godzilla style alias")}
+ use_evobar := {contains(styling.other_options, match: "pokemon evobar") and not is_skinned()}
+ is_clear := {styling.clear or contains(styling.other_options, match:"clear frame")}
+ is_nyx := {chosen(styling.other_options, choice:"nyx")}
+ is_snow := {chosen(styling.other_options, choice:"snow")}
+ is_vehicle := {chosen(styling.other_options, choice:"vehicle")}
+ use_vorthos := { chosen(styling.other_options, choice: "vorthos box") }
+ paragraph_count := replace@(match:"\n", replace:"~")+
+ filter_text@(match:"~")
+ special_text := {
+ out := (if card.loyalty_cost_1 != "" then "[" + card.loyalty_cost_1 + "]: " else "") + (if card.level_1_text != "" and card.level_1_text != card.rule_text then card.level_1_text+"\n" else split_text(match:"\n", card.rule_text).0+"\n")
+ + (if card.loyalty_cost_2 != "" then "[" + card.loyalty_cost_2 + "]" + ": " else "") + (if card.level_2_text != "" then card.level_2_text+"\n" else if contains(paragraph_count(card.rule_text), match:"~") then split_text(match:"\n", card.rule_text).1+"\n" else "")
+ + (if card.loyalty_cost_3 != "" then "[" + card.loyalty_cost_3 + "]" + ": " else "") + (if card.level_3_text != "" then card.level_3_text+"\n" else if contains(paragraph_count(card.rule_text), match:"~~") then split_text(match:"\n", card.rule_text).2+"\n" else "")
+ + (if card.loyalty_cost_4 != "" then "[" + card.loyalty_cost_4 + "]" + ": " else "") + (if card.level_4_text != "" then card.level_4_text+"\n" else if contains(paragraph_count(card.rule_text), match:"~~~") then split_text(match:"\n", card.rule_text).3+"\n" else "")
+ + (if card.loyalty_cost_5 != "" then "[" + card.loyalty_cost_5 + "]" + ": " else "") + (if card.level_5_text != "" then card.level_5_text+"\n" else if contains(paragraph_count(card.rule_text), match:"~~~~") then split_text(match:"\n", card.rule_text).4+"\n" else "")
+ + (if card.loyalty_cost_6 != "" then "[" + card.loyalty_cost_6 + "]" + ": " else "") + (if card.level_6_text != "" then card.level_6_text+"\n" else if contains(paragraph_count(card.rule_text), match:"~~~~") then split_text(match:"\n", card.rule_text).5 else "")
+ out := replace(out, match:"\n\n+", replace:"")
+ out
+ }
+ pw_font_size := { if styling.font_size != "" then styling.font_size else 12 }
+############################################################## 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: popout image style
+ description: The styling instructions for the popout image field, formatted as "left,top,width,height,". The text MUST end with a comma.
+styling field:
+ type: text
+ name: combined chop
+ description: Formatted "X,Y,Z", shrinks the top X pixels, shrinks bottom Y pixels toward center, widens small stripes Z pixels.
+styling field:
+ type: text
+ name: shift loyalty costs
+ description: Moves loyalty costs up the specified amount. Use negative to move down. Formatted as "1,2,3,4,"
+styling field:
+ type: text
+ name: opacity
+ description: set opacity for stripes, from 0 to 255.
+styling field:
+ type: text
+ name: shrink name text
+ description: reduces the name text N points.
+styling field:
+ type: text
+ name: shrink typeline text
+ description: reduces the typeline text N points.
+styling field:
+ type: text
+ name: font size
+ description: Use to overwrite the font size. Default is size 12.
+styling field:
+ type: choice
+ name: override levels
+ choice: automatic
+ choice: one ability
+ choice: two abilities
+ choice: three abilities
+ choice: four abilities
+ choice: five abilities
+ choice: six abilities
+ description: Automatically apply layers, force four abilities, or force one ability
+styling field:
+ type: multiple choice
+ name: other options
+ choice: clear frame
+ choice: use taller frame
+ choice: ancestral generic mana
+ choice: prerelease stamp
+ choice: un-indent nonloyalty abilities
+ choice: mythic edition fullart
+ choice: godzilla style alias
+ choice: pokemon evobar
+ choice: nyx
+ choice: snow
+ choice: vehicle
+ choice: vorthos box
+ initial: un-indent nonloyalty abilities
+styling field:
+ type: text
+ name: custom mask
+ description: Uses a custom mask from data/magic-mainframe-extras.mse-include
+styling field:
+ type: boolean
+ name: default image size
+ description: Use the default Planeswalker template image size, disable for easier popout art options.
+styling field:
+ type: boolean
+ name: holofoil stamped rares
+ description: Use holofoil stamped rares
+styling field:
+ type: boolean
+ name: color indicator dot
+ description: Use the color indicator dot
+ initial: no
+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: 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: clear
+ description: Use the clear frame. (depreciated)
+ initial: no
+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") }
+ other options:
+ render style: checklist
+ direction: vertical
+ ############################################################## Card fields
+card style:
+ ############################# Background stuff
+ border color:
+ left: 0
+ top : 0
+ width: { if use_full_art() then 0 else 375 }
+ height: { if use_full_art() then 0 else 523 }
+ radius: 18
+ left width: 17
+ right width: 17
+ top width: 17
+ bottom width: 18
+ z index: 4
+ mask: {"border_mask" + (if card.border_color == rgb(200,200,200) then "_silver") + ".png"}
+ card color:
+ left: 0
+ top: 0
+ width: 375
+ height: 523
+ z index: 0
+ render style: image
+ popup style: in place
+ image: { if is_clear() then "" else if has_four_abilities() then card_background2() else card_background() }
+ mask: {(if max_level() > 3 or force_tall() then "four_" else "") + (if use_full_art() then (if is_stamped() then "mythic_image_rare_mask" else "mythic_mask") else "frame_mask") + ".png"}
+ ############################# Name line
+ name:
+ left: { if card.card_symbol=="none" then 31 else 48 }
+ top: 22
+ right: { 339 - card_style.casting_cost.content_width }
+ height: { 23 - (0.5 * shrink_name()) }
+ alignment: bottom shrink-overflow
+ padding bottom: 0
+ z index: 2
+ font:
+ name: Beleren Bold
+ size: {16 - shrink_name() }
+ color: black
+ alias:
+ left: {if is_skinned() then 45 else 36}
+ top: 47
+ width: {if is_skinned() then 285 else if use_evobar() then max(100, card_style.alias.content_width) else 0}
+ height: 20
+ alignment: { (if is_skinned() then "center") + "bottom shrink-overflow"}
+ padding bottom: 0
+ z index: 3
+ font:
+ name: {if use_evobar() then "Matrix" else "MPlantin-Italic"}
+ size: {if use_evobar() then 10 else 9}
+ style: {if use_evobar() then "italic" else "bold"}
+ weight: {if use_evobar() then "italic" else "bold"}
+ color: {if use_evobar() then "black" else "white"}
+ casting cost:
+ right: 347
+ top: 21
+ 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
+ card symbol:
+ left: {if card.card_symbol=="none" then 20 else 29}
+ top: 23
+ height: 18
+ width: 14
+ z index: 1
+ render style: image
+ choice images:
+ tombstone: tombstone.png
+ ############################# Image
+ image:
+ left: { if use_full_art() or is_clear() then 0 else if is_normal_size() then 25 else 15 }
+ top: { if use_full_art() or is_clear() then 0 else if is_normal_size() then 52 else 15 }
+ width: { if use_full_art() or is_clear() then 375 else if is_normal_size() then 324 else 345 }
+ height: { if use_full_art() or is_clear() then 523 else if is_normal_size() then 427.5 else 493 }
+ z index: -1
+ mask: {"guidelines/" + (if is_clear() then "clear_" else if is_normal_size() or use_full_art() then "" else "wide_") + (if max_level() > 3 or force_tall() then "four_" else "") + (if is_clear() then "frame_mask" else if use_full_art() then (if is_stamped() then "mythic_image_rare_mask" else "mythic_mask") else "frame_mask") + ".png"}
+ image 2:
+ left: {if comma_count(styling.popout_image_style) == ",,,," then split_text(match:",", styling.popout_image_style).0 else "0"}
+ top: {if comma_count(styling.popout_image_style) == ",,,," then split_text(match:",", styling.popout_image_style).1 else "0"}
+ width: {if comma_count(styling.popout_image_style) == ",,,," then split_text(match:",", styling.popout_image_style).2 else "0"}
+ height: {if comma_count(styling.popout_image_style) == ",,,," then split_text(match:",", styling.popout_image_style).3 else "0"}
+ z index: 8
+ ############################# Card type
+ indicator:
+ left: 30
+ top: { if has_four_abilities() then 265 else 299 }
+ width: 17
+ height: 17
+ z index: 2
+ render style: image
+ visible: { has_identity()}
+ image: { card_identity() }
+ type:
+ left: { if has_identity() then "53" else "33" }
+ top: { (if has_four_abilities() then 261 else 296) + shrink_type() }
+ width: { 309 - max(22,card_style.rarity.content_width) }
+ height: { 20 - shrink_type() }
+ alignment: top shrink-overflow
+ z index: 2
+ padding top: 2
+ font:
+ name: Beleren Bold
+ size: { 13 - shrink_type() }
+ color: black
+ separator color: red
+ rarity:
+ right: 344
+ top: { if has_four_abilities() then 261 else 297 }
+ width: {if set.shorten_types_for_rarity then 44 else 0}
+ height: 22
+ z index: 2
+ render style: image
+ alignment: middle right
+ choice images:
+ # Images based on the set symbol
+ basic land:
+ script:
+ if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "c.png"
+ else if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
+ else symbol_variation(symbol: set.symbol, variation: "common")
+ common:
+ script:
+ if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "c.png"
+ else if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
+ else symbol_variation(symbol: set.symbol, variation: "common")
+ uncommon:
+ script:
+ if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "u.png"
+ else symbol_variation(symbol: set.symbol, variation: "uncommon")
+ rare:
+ script:
+ if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "r.png"
+ else symbol_variation(symbol: set.symbol, variation: "rare")
+ mythic rare:
+ script:
+ if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "m.png"
+ else symbol_variation(symbol: set.symbol, variation: "mythic rare")
+ special:
+ script:
+ if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "s.png"
+ else symbol_variation(symbol: set.symbol, variation: "special")
+ masterpiece:
+ script:
+ if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "mp.png"
+ else symbol_variation(symbol: set.masterpiece_symbol, variation: "mythic rare")
+ ############################# Text box
+ text:
+ left: 48
+ top: { top_of_textbox() }
+ width: 300
+ bottom: {477-global_chop_bot()-(if is_stamped() then 2 else 0)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: { if styling.font_size != "" then styling.font_size else if has_four_abilities() then 13.8 else 14 }
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: { if styling.font_size != "" then styling.font_size else if has_four_abilities() then 13.8 else 14 }
+ 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"
+ mask: {"walker_text_mask.png"}
+ z index: 6
+ padding left: 6
+ padding right: 4
+ padding top: 4
+ line height hard: 1.2
+ line height line: 1.3
+ line height soft: { if has_four_abilities() then 0.85 else 0.9 }
+ line height hard max: 1.4
+ line height line max: 2.2
+ watermark:
+ left: 19
+ top : { if has_four_abilities() then 314 else 331 }
+ width: 334
+ height: 150
+ z index: 4
+ render style: image
+ alignment: middle center
+ include file: /magic-watermarks.mse-include/watermarks
+ ############################# Loyalty
+ loyalty:
+ z index: 7
+ left: 328
+ top: 466
+ width: 13.16
+ height: 34.63
+ alignment: center middle
+ font:
+ name: Beleren Bold
+ size: 14
+ color: white
+ loyalty cost 1:
+ z index: 7
+ left: 28
+ top: { abil_center(0) - 17.3 - 2 - loyal_move() }
+ width: 18
+ height: 35
+ alignment: center middle
+ font:
+ name: Beleren Bold
+ size: 11
+ color: white
+ loyalty cost 2:
+ z index: 7
+ left: 28
+ top: { abil_center(1) - 17.3 - 2 - loyal_move2() }
+ width: 18
+ height: 35
+ alignment: center middle
+ font:
+ name: Beleren Bold
+ size: 11
+ color: white
+ loyalty cost 3:
+ z index: 7
+ left: 28
+ top: { abil_center(2) - 17.3 - 2 - loyal_move3() }
+ width: {if card.loyalty_cost_3 != "" or max_level() > 1 then 18 else 0}
+ height: 35
+ alignment: center middle
+ font:
+ name: Beleren Bold
+ size: 11
+ color: white
+ loyalty cost 4:
+ z index: 7
+ left: 28
+ top: { abil_center(3) - 17.3 - 2 - loyal_move4() }
+ width: {if card.loyalty_cost_4 != "" or max_level() > 2 then 18 else 0}
+ height: 35
+ alignment: center middle
+ font:
+ name: Beleren Bold
+ size: 11
+ color: white
+ loyalty cost 5:
+ z index: 7
+ left: 28
+ top: { abil_center(4) - 17.3 - 2 - loyal_move5() }
+ width: {if card.loyalty_cost_5 != "" or max_level() > 3 then 18 else 0}
+ height: 35
+ alignment: center middle
+ font:
+ name: Beleren Bold
+ size: 11
+ color: white
+ loyalty cost 6:
+ z index: 7
+ left: 28
+ top: { abil_center(5) - 17.3 - 2 - loyal_move6() }
+ width: {if card.loyalty_cost_6 != "" or max_level() > 4 then 18 else 0}
+ height: 35
+ alignment: center middle
+ font:
+ name: Beleren Bold
+ size: 11
+ color: white
+ ############################# Card sorting / numbering
+ set code:
+ left: 24
+ top: 498
+ width: 40
+ height: 10
+ z index: 6
+ font:
+ name: Relay-Medium
+ size: 7
+ color: white
+ weight: bold
+ ############################# Copyright stuff
+ illustrator:
+ left: { 44 + card_style.set_code.content_width }
+ top: 497.5
+ width: 200
+ height: 10
+ z index: 2
+ font:
+ name: Beleren Small Caps Bold
+ size: 7.25
+ color: white
+ copyright:
+ right: 350
+ top: 500
+ width: {if set.automatic_copyright then 0 else 140}
+ height: 10
+ z index: 6
+ alignment: middle right
+ font:
+ name: Matrix
+ size: 7
+ color: white
+ weight: bold
+############################################################## Extra card fields
+extra card field:
+ type: text
+ name: card code
+ save value: false
+ script:
+ if set.automatic_card_numbers and not styling.remove_from_autocount then
+ forward_editor(prefix: card_number_m15() + "/" + card_count_m15() + " " + rarity_code() + " ", field: card.card_code_text)
+ else
+ combined_editor(field1: card.custom_card_number, separator: " " + rarity_code() + " ", field2: card.card_code_text)
+extra card field:
+ type: choice
+ name: artist arrow
+ editable: false
+ save value: false
+ choice: white
+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 stamp
+ choice: stamp
+ save value: false
+ editable: 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: choice
+ name: loyalty cost box 5
+ editable: false
+ script: loyalty_image(card.loyalty_cost_5)
+ save value: false
+extra card field:
+ type: choice
+ name: loyalty cost box 6
+ editable: false
+ script: loyalty_image(card.loyalty_cost_6)
+ 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: colon 5
+ editable: false
+ script: ":"
+ save value: false
+extra card field:
+ type: text
+ name: colon 6
+ editable: false
+ script: ":"
+ save value: false
+extra card field:
+ type: choice
+ name: bottom first
+ editable: false
+ save value: false
+ choice: stripe
+extra card field:
+ type: choice
+ name: top third
+ editable: false
+ save value: false
+ choice: stripe
+extra card field:
+ type: choice
+ name: bottom third
+ editable: false
+ save value: false
+ choice: stripe
+extra card field:
+ type: choice
+ name: top fifth
+ editable: false
+ save value: false
+ choice: stripe
+extra card field:
+ type: choice
+ name: bottom fifth
+ editable: false
+ save value: false
+ choice: stripe
+extra card field:
+ type: color
+ name: top color
+ script: if is_clear() then rgb(230,230,230) else rgb(200,200,200)
+ editable: false
+ save value: false
+extra card field:
+ type: color
+ name: bottom color
+ script: if is_clear() then rgb(230,230,230) else rgb(200,200,200)
+ editable: false
+ save value: false
+extra card field:
+ type: color
+ name: stripe color
+ script: if is_clear() then rgb(230,230,230) else rgb(200,200,200)
+ editable: false
+ save value: false
+extra card field:
+ type: color
+ name: stripe color 2
+ script: if is_clear() then rgb(230,230,230) else rgb(200,200,200)
+ editable: false
+ save value: false
+extra card field:
+ type: color
+ name: stripe color 3
+ script: if is_clear() then rgb(230,230,230) else rgb(200,200,200)
+ editable: false
+ save value: false
+extra card field:
+ type: text
+ name: auto copyright
+ script: set.copyright
+ save value: false
+ editable: false
+ show statistics: false
+extra card field:
+ type: choice
+ name: clear frame
+ choice: frame
+ editable: false
+ save value: false
+ show statistics: false
+extra card field:
+ type: text
+ name: promo label
+ save value: true
+ description: The golden promo label.
+extra card field:
+ type: text
+ name: filler text
+ editable: true
+ save value: true
+ show statistics: false
+ multi line: true
+ script:
+ forward_editor(field: card.special_text)
+ special_text()
+extra card field:
+ type: color
+ name: opac filter
+ script: rgb(opacity(0), opacity(0), opacity(0))
+ save value: false
+extra card field:
+ type: choice
+ name: alias bar
+ script: card.card_color
+ save value: false
+ editable: false
+extra card field:
+ type: choice
+ name: vehicle overlay
+ choice: car door
+ save value: false
+ editable: false
+extra card field:
+ type: choice
+ name: snow overlay
+ choice: snow
+ save value: false
+ editable: false
+ script: card.card_color
+extra card field:
+ type: choice
+ name: nyx overlay
+ choice: nyx
+ save value: false
+ editable: false
+ script: card.card_color
+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: evobar start
+ choice: evo
+ save value: false
+ editable: false
+extra card field:
+ type: text
+ name: vorthos box
+ save value: true
+ editable: true
+ description: Where they put mtgstory.com on story spotlights.
+extra card style:
+ card code:
+ left: 24
+ top: 488
+ width: 120
+ height: 10
+ z index: 6
+ font:
+ name: Relay-Medium
+ size: 7
+ color: white
+ weight: bold
+ artist arrow:
+ left: { 28 + card_style.set_code.content_width }
+ top: 500
+ width: 12
+ height: 7
+ z index: 6
+ render style: image
+ image: artist_arrow.png
+ loyalty box:
+ right: 364
+ top: 464
+ width: 60
+ height: 38
+ z index: 6
+ render style: image
+ visible: { card.loyalty != "" }
+ choice images:
+ loyalty: loyalty.png
+ stamp:
+ left: 166
+ top: 471.5
+ width: 43.5
+ height: 23
+ z index: 6
+ visible: { is_stamped() and not is_clear() }
+ render style: image
+ image: { card_stamp() }
+ mask: {(if use_full_art() then "mythic" else "") + "stamp_mask.png"}
+ foil stamp:
+ left: 169
+ top: 473
+ width: 37
+ height: 22.5
+ z index: 7
+ visible: { is_stamped() and not is_clear() }
+ render style: image
+ image: foil_stamp.png
+ foil layer:
+ left: 0
+ top : 0
+ width: 375
+ height: 523
+ z index: 10
+ render style: image
+ image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"}
+ loyalty cost box 1:
+ left: 15
+ top: { abil_center(0) - 17.3 - 2 - loyal_move() }
+ width: 45
+ height: 36
+ 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: 15
+ top: { abil_center(1) - 17.3 - 2 - loyal_move2() }
+ width: 45
+ height: 36
+ 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: 15
+ top: { abil_center(2) - 17.3 - 2 - loyal_move3() }
+ width: 45
+ height: 36
+ 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: 15
+ top: { abil_center(3) - 17.3 - 2 - loyal_move4() }
+ width: 45
+ height: 36
+ 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
+ loyalty cost box 5:
+ left: 15
+ top: { abil_center(4) - 17.3 - 2 - loyal_move5() }
+ width: 45
+ height: 36
+ z index: 6
+ render style: image
+ visible: { card.loyalty_cost_5 != "" }
+ choice images:
+ loyalty up: loyaltyup.png
+ loyalty down: loyaltydown.png
+ loyalty naught: loyaltynaught.png
+ loyalty cost box 6:
+ left: 15
+ top: { abil_center(5) - 17.3 - 2 - loyal_move6() }
+ width: 45
+ height: 36
+ z index: 6
+ render style: image
+ visible: { card.loyalty_cost_6 != "" }
+ choice images:
+ loyalty up: loyaltyup.png
+ loyalty down: loyaltydown.png
+ loyalty naught: loyaltynaught.png
+ colon 1:
+ left: 59
+ top: { abil_center(0) - 17.3 + 10 - loyal_move() }
+ 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: { abil_center(1) - 17.3 + 10 - loyal_move2() }
+ 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: { abil_center(2) - 17.3 + 10 - loyal_move3() }
+ width: {if has_two_abilities() then 0 else 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: { abil_center(3) - 17.3 + 10 - loyal_move4() }
+ 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 != "" }
+ colon 5:
+ left: 59
+ top: { abil_center(4) - 17.3 + 10 - loyal_move5() }
+ 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_5 != "" }
+ colon 6:
+ left: 59
+ top: { abil_center(5) - 17.3 + 10 - loyal_move6() }
+ 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_6 != "" }
+###Curve of first textbox
+ top color:
+ left: {if is_clear() then 28 else 26}
+ top: {if is_clear() and max_level() > 4 then 288 else if has_four_abilities() then 288 else if is_clear() then 322 else 324 }
+ width: {if is_clear() then 320 else 324}
+ height: { if is_clear() and max_level() > 4 then 19 else 21 }
+ z index: 2
+ mask: mask_top.png
+###Block of first textbox
+ stripe color:
+ left: { if is_clear() then 47 else 45}
+ top: { (if has_four_abilities() then 309 else if is_clear() then 343 else 345) }
+ width: { if is_clear() then 298 else 302}
+ bottom: { max(if force_level() == "one" then 465 else to_int(stripe01()-3)+(if is_clear() then 2 else 0), (if has_four_abilities() then 309 else 345)-(if is_clear() then 2 else 0)) }
+ z index: 2
+ mask: stripe_mask.png
+###Bottom of first textbox
+ bottom first:
+ left: { if is_clear() then 47 else 45}
+ top: { max(to_int(stripe01()-3)+(if is_clear() then 2 else 0), (if has_four_abilities() then 309 else 345)-(if is_clear() then 2 else 0)) }
+ width: { if is_clear() then 298 else 302}
+ height: 20
+ image: { (if is_clear() then "clear_" else "") + "top_stripe_test.png" }
+ render style: image
+ z index: 2
+ mask: stripe_mask.png
+ visible: { force_level() != "one" }
+###Top of third textbox
+ top third:
+ left: { if is_clear() then 47 else 45}
+ top: {to_int(stripe12()-3) }
+ width: { if is_clear() then 298 else 302}
+ height: 13
+ image: { (if is_clear() then "clear_" else "") + "bot_stripe_test.png" }
+ render style: image
+ z index: 2
+ mask: stripe_mask.png
+ visible: { card.level_3_text != ""}
+###Block of third textbox
+ stripe color 2:
+ left: { if is_clear() then 47 else 45}
+ top: { to_int(stripe12()+10) }
+ width: { if is_clear() then 298 else 302}
+ bottom: { if max_level() == 3 then 465 else to_int(min(465, stripe23()-3)) }
+ z index: 2
+ mask: stripe_mask.png
+ visible: { card.level_3_text != ""}
+###Bottom of third textbox
+ bottom third:
+ left: { if is_clear() then 47 else 45}
+ top: {to_int(min(465, stripe23()-3)) }
+ width: { if is_clear() then 298 else 302}
+ height: 20
+ image: { (if is_clear() then "clear_" else "") + "top_stripe_test.png" }
+ render style: image
+ z index: 2
+ mask: stripe_mask.png
+ visible: { max_level() > 3}
+###Top of fifth textbox
+ top fifth:
+ left: { if is_clear() then 47 else 45}
+ top: {to_int(stripe34()-3)}
+ width: { if is_clear() then 298 else 302}
+ height: 13
+ image: { (if is_clear() then "clear_" else "") + "bot_stripe_test.png" }
+ render style: image
+ z index: 2
+ mask: stripe_mask.png
+ visible: { max_level() > 4}
+###Block of fifth textbox
+ stripe color 3:
+ left: { if is_clear() then 47 else 45}
+ top: { to_int(stripe34()+10) }
+ width: { if is_clear() then 298 else 302}
+ bottom: { if max_level() == 5 then 465 else to_int(min(465, stripe45()-2)) }
+ z index: 2
+ mask: stripe_mask.png
+ visible: { max_level() > 4 and to_int(stripe34()+10) <= 465 }
+###Bottom of fifth textbox
+ bottom fifth:
+ left: { if is_clear() then 47 else 45}
+ top: {to_int(min(465, stripe45()-2)) }
+ width: { if is_clear() then 298 else 302}
+ height: 20
+ image: { (if is_clear() then "clear_" else "") + "top_stripe_test.png" }
+ render style: image
+ z index: 2
+ mask: stripe_mask.png
+ visible: { max_level() == 6}
+
+###Curve of bottom textbox
+ bottom color:
+ left: { if is_clear() then 28 else 26}
+ top: 465
+ width: {if is_clear() then 319 else 323}
+ height: 13
+ z index: 2
+ mask: {(if is_stamped() then "rare_" else "") + "mask_bot.png"}
+ visible: { force_level() == "one" or max_level() == 3 or max_level() == 5}
+ auto copyright:
+ right: 350
+ top: 500
+ width: {if set.automatic_copyright then 140 else 0}
+ height: 10
+ z index: 6
+ alignment: middle right
+ font:
+ name: MPlantin
+ size: 7
+ color: white
+ weight: bold
+ clear frame:
+ left: 0
+ top: 0
+ width: { if is_clear() then 375 else 0 }
+ height: { if is_clear() then 523 else 0 }
+ z index: 1
+ render style: image
+ popup style: in place
+ image: { (if has_four_abilities() then "xcard2" else "xcard") + "_level" + (if is_rare() and styling.holofoil_stamped_rares then "_rare") + ".png" }
+ promo label:
+ left: 40
+ top: { if has_four_abilities() then 225 else 262 }
+ width: {if contains(styling.other_options, match:"prerelease stamp") then 295 else 0}
+ height: 29
+ alignment: middle right
+ z index: 4
+ font:
+ name: ModMatrix
+ size: 14
+ color: rgb(223,169,41)
+ opac filter:
+ left: 43
+ top: {if has_four_abilities() then 290 else 325}
+ width: 305
+ height: {if has_four_abilities() then 192 else 157}
+ mask: {"opacfilter" + if has_four_abilities() then "_4.png" else ".png"}
+ z index: 1
+ visible: {styling.opacity != ""}
+ alias bar:
+ left: 34
+ top: 49
+ width: 307
+ height: 24
+ z index: 2
+ render style: image
+ image: {if is_clear() then "alias/xalias.png" else alias_bar()}
+ visible: {is_skinned() and not use_evobar()}
+ evobar:
+ left: 40
+ top: 51
+ width: {card_style.alias.content_width}
+ height: 27
+ z index: 2
+ render style: image
+ image: evobar.png
+ visible: {use_evobar()}
+ evobar tip:
+ left: {39.6 + card_style.alias.content_width}
+ top: 51
+ width: 36
+ height: 27
+ z index: 2
+ render style: image
+ image: evobar_tip.png
+ visible: {use_evobar()}
+ evobar start:
+ left: 31
+ top: 51
+ width: 9
+ height: 27
+ z index: 2
+ render style: image
+ image: evobar_start.png
+ mask: evobar_mask.png
+ visible: {use_evobar()}
+ nyx overlay:
+ left: 0
+ top: 0
+ width: 375
+ height: 523
+ render style: image
+ image: {nyx_background()}
+ z index: 0
+ visible: {is_nyx()}
+ mask: {"nyx/" + (if has_four_abilities() then "4") + "pw" + (if is_vehicle() then "_v") + "_mask.png"}
+ snow overlay:
+ left: 0
+ top: 0
+ width: 375
+ height: 523
+ render style: image
+ image: {snow_texture()}
+ z index: 0
+ visible: {is_snow()}
+ mask: {"nyx/" + (if has_four_abilities() then "4") + "pw" + (if is_vehicle() then "_v") + "_mask.png"}
+ vehicle overlay:
+ left: 0
+ top: 0
+ width: 375
+ height: 523
+ render style: image
+ image: full_voverlay.png
+ z index: 0
+ mask: {"nyx/" + (if has_four_abilities() then "4") + "pw_mask.png"}
+ visible: {is_vehicle()}
+ vorthos box:
+ right: 275
+ top: 488
+ width: 65
+ height: 10
+ z index: 3
+ alignment: middle right
+ visible: {use_vorthos()}
+ font:
+ name: Relay-Medium
+ size: 7
+ color: white
+ weight: bold
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/ucard3.png b/data/magic-m15-mainframe-planeswalker.mse-style/ucard3.png
new file mode 100644
index 000000000..89a63cf8e
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/ucard3.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/ucard4.png b/data/magic-m15-mainframe-planeswalker.mse-style/ucard4.png
new file mode 100644
index 000000000..56deedd40
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/ucard4.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/wcard3.png b/data/magic-m15-mainframe-planeswalker.mse-style/wcard3.png
new file mode 100644
index 000000000..4489fcd3a
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/wcard3.png differ
diff --git a/data/magic-m15-mainframe-planeswalker.mse-style/wcard4.png b/data/magic-m15-mainframe-planeswalker.mse-style/wcard4.png
new file mode 100644
index 000000000..1115d0f04
Binary files /dev/null and b/data/magic-m15-mainframe-planeswalker.mse-style/wcard4.png differ