diff --git a/data/magic-blends.mse-include/new-blends b/data/magic-blends.mse-include/new-blends
index 29e824248..9bd4f8e9e 100644
--- a/data/magic-blends.mse-include/new-blends
+++ b/data/magic-blends.mse-include/new-blends
@@ -864,8 +864,8 @@ color_background := {
else "radial"
# Determine background (allows styles to hook something else here)
- color_combination()
-}
+ color_combination(folder:folder)
+}@(folder: "")
color_combination := {
# The base hybrid, without the outer frame blended over it
@@ -873,72 +873,72 @@ color_combination := {
# Put a frame around it?
if land and not colored_lands then
masked_blend(
- mask: "multicolor_blend_{type}.png",
+ mask: "{folder}multicolor_blend_{type}.png",
dark: land_template("c"),
light: base,
)
else if land and multi and mask_multi_land_with_color() then
masked_blend(
- mask: "hybrid_blend_{type}.png",
+ mask: "{folder}hybrid_blend_{type}.png",
dark: base,
light: land_template("m"),
)
else if multi and artifact then
masked_blend(
- mask: "artifact_blend_{type}.png",
+ mask: "{folder}artifact_blend_{type}.png",
dark: template("a"),
light: masked_blend(
- mask: "multicolor_blend_{type}.png",
+ mask: "{folder}multicolor_blend_{type}.png",
dark: template("m"),
light: base
)
)
else if multi then
masked_blend(
- mask: "multicolor_blend_{type}.png",
+ mask: "{folder}multicolor_blend_{type}.png",
dark: template("m"),
light: base,
)
else if artifact and color_count > 1 and mask_hybrid_with_land() then
masked_blend(
- mask: "artifact_blend_{type}.png",
+ mask: "{folder}artifact_blend_{type}.png",
dark: template("a"),
light: masked_blend(
- mask: "multicolor_blend_{type}.png",
+ mask: "{folder}multicolor_blend_{type}.png",
dark: template("c"),
light: base
)
)
else if artifact and color_count > 1 and mask_hybrid_with_gold() then
masked_blend(
- mask: "artifact_blend_{type}.png",
+ mask: "{folder}artifact_blend_{type}.png",
dark: template("a"),
light: masked_blend(
- mask: "multicolor_blend_{type}.png",
+ mask: "{folder}multicolor_blend_{type}.png",
dark: template("m"),
light: base
)
)
else if artifact then
masked_blend(
- mask: "artifact_blend_{type}.png",
+ mask: "{folder}artifact_blend_{type}.png",
dark: template("a"),
light: base,
)
else if color_count > 1 and mask_hybrid_with_land() then
masked_blend(
- mask: "hybrid_blend_{type}.png",
+ mask: "{folder}hybrid_blend_{type}.png",
dark: land_template("c"),
light: base,
)
else if color_count > 1 and mask_hybrid_with_gold() then
masked_blend(
- mask: "hybrid_blend_{type}.png",
+ mask: "{folder}hybrid_blend_{type}.png",
dark: land_template("m"),
light: base,
)
else base
-}
+}@(folder: "")
########################################################################
# Specific types
diff --git a/data/magic-booster-mini.mse-style/style b/data/magic-booster-mini.mse-style/style
index 572cf7ed0..6aa0facbd 100644
--- a/data/magic-booster-mini.mse-style/style
+++ b/data/magic-booster-mini.mse-style/style
@@ -346,6 +346,7 @@ extra card field:
extra card field:
type: text
name: small name
+ multi line: true
extra card field:
type: text
name: age
diff --git a/data/magic-booster.mse-style/style b/data/magic-booster.mse-style/style
index e957b8e03..85c160a93 100644
--- a/data/magic-booster.mse-style/style
+++ b/data/magic-booster.mse-style/style
@@ -346,6 +346,7 @@ extra card field:
extra card field:
type: text
name: small name
+ multi line: true
extra card field:
type: text
name: age
diff --git a/data/magic-comicbookguy.mse-style/style b/data/magic-comicbookguy.mse-style/style
index bfe339d04..d8afb28b4 100644
--- a/data/magic-comicbookguy.mse-style/style
+++ b/data/magic-comicbookguy.mse-style/style
@@ -287,7 +287,7 @@ card style:
width: 120
height: 10
z index: 2
- alignment: bottom right shrink-overflow
+ alignment: bottom right
font:
name: MatrixBoldSmallCaps
size: 7
diff --git a/data/magic-lackeyccg.mse-export-template/export-template b/data/magic-lackeyccg.mse-export-template/export-template
index 915141343..5700dd247 100644
--- a/data/magic-lackeyccg.mse-export-template/export-template
+++ b/data/magic-lackeyccg.mse-export-template/export-template
@@ -693,6 +693,6 @@ script:
else if contains(card.shape, match:"leveler") then write_leveler()
else write_normal()
}
- write_cards := to_text(for each card in sort_list(cards, order_by: {card.card_number}) do write_card())
+ write_cards := to_text(for each card in cards do write_card())
write_images := if options.export_images then for each card in sort_list(cards, order_by: {card.card_number}) do write_image_file(card, directory: "{to_lower(options.set_code)}", file:"{if contains(card.super_type, match:"Token") or contains(card.super_type, match:"Emblem") or contains(card.shape, match:"token") or contains(card.shape, match:"emblem") or card_name() == "Morph" or card_name() == "Manifest" then options.set_code+corrected_card_number() else corrected_card_number()}{if other_face() and not contains(options.dfc_options, match:"Both faces") then "a" else if is_backface() then "b" else ""}{if card.rarity == "special" then "s" else ""}.jpg", width: image_export_width(), height: image_export_height())
to_string("Name Set ImageFile Color Cost ConvertedCost Type Power Toughness Rarity Script Text\n"+last_replace(write_cards))
diff --git a/data/magic-m15-adventure.mse-style/style b/data/magic-m15-adventure.mse-style/style
index f4a7453d7..4fdc639c1 100644
--- a/data/magic-m15-adventure.mse-style/style
+++ b/data/magic-m15-adventure.mse-style/style
@@ -520,10 +520,10 @@ card style:
z index: 2
padding left: 6
padding right: 4
- line height hard: 1.2
+ line height hard: {if is_modal(card.rule_text_2) then 0.9 else 1.2 }
line height line: 1.5
line height soft: 0.9
- line height hard max: 1.3
+ line height hard max: {if is_modal(card.rule_text_2) then 1.0 else 1.3 }
line height line max: 1.6
watermark:
left: { if is_reversed() then (if is_spot() then 30 else 20) else if is_spot() then 195 else 188}
@@ -587,7 +587,7 @@ card style:
width: {if set.automatic_copyright then 0 else 140}
height: 10
z index: 2
- alignment: middle right shrink-overflow
+ alignment: middle right
font:
name: Matrix
size: 7
diff --git a/data/magic-m15-augment.mse-style/style b/data/magic-m15-augment.mse-style/style
index c632c8128..38bd60fac 100644
--- a/data/magic-m15-augment.mse-style/style
+++ b/data/magic-m15-augment.mse-style/style
@@ -225,7 +225,7 @@ card style:
top: 300
width: 17
height: 17
- z index: 1
+ z index: 2
render style: image
visible: { has_identity() }
image: { card_identity() }
diff --git a/data/magic-m15-black.mse-style/acard.jpg b/data/magic-m15-black.mse-style/acard.jpg
new file mode 100644
index 000000000..50796e2b5
Binary files /dev/null and b/data/magic-m15-black.mse-style/acard.jpg differ
diff --git a/data/magic-m15-black.mse-style/apt.png b/data/magic-m15-black.mse-style/apt.png
new file mode 100644
index 000000000..486ba0c8f
Binary files /dev/null and b/data/magic-m15-black.mse-style/apt.png differ
diff --git a/data/magic-m15-black.mse-style/artifact_blend_card.png b/data/magic-m15-black.mse-style/artifact_blend_card.png
new file mode 100644
index 000000000..c6f8fb9da
Binary files /dev/null and b/data/magic-m15-black.mse-style/artifact_blend_card.png differ
diff --git a/data/magic-m15-black.mse-style/artifact_blend_identity.png b/data/magic-m15-black.mse-style/artifact_blend_identity.png
new file mode 100644
index 000000000..aa9aeeec0
Binary files /dev/null and b/data/magic-m15-black.mse-style/artifact_blend_identity.png differ
diff --git a/data/magic-m15-black.mse-style/artifact_blend_pt.png b/data/magic-m15-black.mse-style/artifact_blend_pt.png
new file mode 100644
index 000000000..45eb6f3b1
Binary files /dev/null and b/data/magic-m15-black.mse-style/artifact_blend_pt.png differ
diff --git a/data/magic-m15-black.mse-style/artifact_blend_stamp.png b/data/magic-m15-black.mse-style/artifact_blend_stamp.png
new file mode 100644
index 000000000..857df552a
Binary files /dev/null and b/data/magic-m15-black.mse-style/artifact_blend_stamp.png differ
diff --git a/data/magic-m15-black.mse-style/artist_arrow.png b/data/magic-m15-black.mse-style/artist_arrow.png
new file mode 100644
index 000000000..ea39aa438
Binary files /dev/null and b/data/magic-m15-black.mse-style/artist_arrow.png differ
diff --git a/data/magic-m15-black.mse-style/astamp.jpg b/data/magic-m15-black.mse-style/astamp.jpg
new file mode 100644
index 000000000..ba9d102ab
Binary files /dev/null and b/data/magic-m15-black.mse-style/astamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/bcard.jpg b/data/magic-m15-black.mse-style/bcard.jpg
new file mode 100644
index 000000000..08a48998b
Binary files /dev/null and b/data/magic-m15-black.mse-style/bcard.jpg differ
diff --git a/data/magic-m15-black.mse-style/blcard.jpg b/data/magic-m15-black.mse-style/blcard.jpg
new file mode 100644
index 000000000..14944d757
Binary files /dev/null and b/data/magic-m15-black.mse-style/blcard.jpg differ
diff --git a/data/magic-m15-black.mse-style/blpt.png b/data/magic-m15-black.mse-style/blpt.png
new file mode 100644
index 000000000..9533e18fa
Binary files /dev/null and b/data/magic-m15-black.mse-style/blpt.png differ
diff --git a/data/magic-m15-black.mse-style/blstamp.jpg b/data/magic-m15-black.mse-style/blstamp.jpg
new file mode 100644
index 000000000..750f0c39d
Binary files /dev/null and b/data/magic-m15-black.mse-style/blstamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/border_mask.png b/data/magic-m15-black.mse-style/border_mask.png
new file mode 100644
index 000000000..4a53f2699
Binary files /dev/null and b/data/magic-m15-black.mse-style/border_mask.png differ
diff --git a/data/magic-m15-black.mse-style/bpt.png b/data/magic-m15-black.mse-style/bpt.png
new file mode 100644
index 000000000..73cf87e5c
Binary files /dev/null and b/data/magic-m15-black.mse-style/bpt.png differ
diff --git a/data/magic-m15-black.mse-style/bstamp.jpg b/data/magic-m15-black.mse-style/bstamp.jpg
new file mode 100644
index 000000000..125f0498a
Binary files /dev/null and b/data/magic-m15-black.mse-style/bstamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/build.bat b/data/magic-m15-black.mse-style/build.bat
new file mode 100644
index 000000000..ea3687d15
--- /dev/null
+++ b/data/magic-m15-black.mse-style/build.bat
@@ -0,0 +1,7 @@
+cd ..
+
+cd ..
+
+mse --create-installer magic-m15.mse-style magic.mse-game magic-blends.mse-include magic-mana-small.mse-symbol-font magic-mana-large.mse-symbol-font magic-watermarks.mse-include magic-default-image.mse-include magic-identity-new.mse-include
+
+ren "magic-m15.mse-installer" "Magic - M15 Style.mse-installer"
\ No newline at end of file
diff --git a/data/magic-m15-black.mse-style/card-sample.png b/data/magic-m15-black.mse-style/card-sample.png
new file mode 100644
index 000000000..2f582140e
Binary files /dev/null and b/data/magic-m15-black.mse-style/card-sample.png differ
diff --git a/data/magic-m15-black.mse-style/ccard.jpg b/data/magic-m15-black.mse-style/ccard.jpg
new file mode 100644
index 000000000..8f066cc43
Binary files /dev/null and b/data/magic-m15-black.mse-style/ccard.jpg differ
diff --git a/data/magic-m15-black.mse-style/clcard.jpg b/data/magic-m15-black.mse-style/clcard.jpg
new file mode 100644
index 000000000..cb032e28c
Binary files /dev/null and b/data/magic-m15-black.mse-style/clcard.jpg differ
diff --git a/data/magic-m15-black.mse-style/clpt.png b/data/magic-m15-black.mse-style/clpt.png
new file mode 100644
index 000000000..5533ca035
Binary files /dev/null and b/data/magic-m15-black.mse-style/clpt.png differ
diff --git a/data/magic-m15-black.mse-style/clstamp.jpg b/data/magic-m15-black.mse-style/clstamp.jpg
new file mode 100644
index 000000000..e6156cbc5
Binary files /dev/null and b/data/magic-m15-black.mse-style/clstamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/corner_mask.jpg b/data/magic-m15-black.mse-style/corner_mask.jpg
new file mode 100644
index 000000000..0b0be9764
Binary files /dev/null and b/data/magic-m15-black.mse-style/corner_mask.jpg differ
diff --git a/data/magic-m15-black.mse-style/cpt.png b/data/magic-m15-black.mse-style/cpt.png
new file mode 100644
index 000000000..9a0f3f7e5
Binary files /dev/null and b/data/magic-m15-black.mse-style/cpt.png differ
diff --git a/data/magic-m15-black.mse-style/cstamp.jpg b/data/magic-m15-black.mse-style/cstamp.jpg
new file mode 100644
index 000000000..a5dc4d7ce
Binary files /dev/null and b/data/magic-m15-black.mse-style/cstamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/foil_mask.png b/data/magic-m15-black.mse-style/foil_mask.png
new file mode 100644
index 000000000..3f647e2d3
Binary files /dev/null and b/data/magic-m15-black.mse-style/foil_mask.png differ
diff --git a/data/magic-m15-black.mse-style/foil_mask_rare.png b/data/magic-m15-black.mse-style/foil_mask_rare.png
new file mode 100644
index 000000000..2633ea6d1
Binary files /dev/null and b/data/magic-m15-black.mse-style/foil_mask_rare.png differ
diff --git a/data/magic-m15-black.mse-style/foil_stamp.png b/data/magic-m15-black.mse-style/foil_stamp.png
new file mode 100644
index 000000000..375256851
Binary files /dev/null and b/data/magic-m15-black.mse-style/foil_stamp.png differ
diff --git a/data/magic-m15-black.mse-style/gcard.jpg b/data/magic-m15-black.mse-style/gcard.jpg
new file mode 100644
index 000000000..a5217574e
Binary files /dev/null and b/data/magic-m15-black.mse-style/gcard.jpg differ
diff --git a/data/magic-m15-black.mse-style/glcard.jpg b/data/magic-m15-black.mse-style/glcard.jpg
new file mode 100644
index 000000000..cf73f21ad
Binary files /dev/null and b/data/magic-m15-black.mse-style/glcard.jpg differ
diff --git a/data/magic-m15-black.mse-style/glpt.png b/data/magic-m15-black.mse-style/glpt.png
new file mode 100644
index 000000000..cf621d717
Binary files /dev/null and b/data/magic-m15-black.mse-style/glpt.png differ
diff --git a/data/magic-m15-black.mse-style/glstamp.jpg b/data/magic-m15-black.mse-style/glstamp.jpg
new file mode 100644
index 000000000..510b6acfe
Binary files /dev/null and b/data/magic-m15-black.mse-style/glstamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/gpt.png b/data/magic-m15-black.mse-style/gpt.png
new file mode 100644
index 000000000..9016dba2e
Binary files /dev/null and b/data/magic-m15-black.mse-style/gpt.png differ
diff --git a/data/magic-m15-black.mse-style/gstamp.jpg b/data/magic-m15-black.mse-style/gstamp.jpg
new file mode 100644
index 000000000..97671c664
Binary files /dev/null and b/data/magic-m15-black.mse-style/gstamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/hybrid_blend_card.png b/data/magic-m15-black.mse-style/hybrid_blend_card.png
new file mode 100644
index 000000000..5c7f03699
Binary files /dev/null and b/data/magic-m15-black.mse-style/hybrid_blend_card.png differ
diff --git a/data/magic-m15-black.mse-style/hybrid_blend_identity.png b/data/magic-m15-black.mse-style/hybrid_blend_identity.png
new file mode 100644
index 000000000..aa9aeeec0
Binary files /dev/null and b/data/magic-m15-black.mse-style/hybrid_blend_identity.png differ
diff --git a/data/magic-m15-black.mse-style/hybrid_blend_pt.png b/data/magic-m15-black.mse-style/hybrid_blend_pt.png
new file mode 100644
index 000000000..b209ddfbf
Binary files /dev/null and b/data/magic-m15-black.mse-style/hybrid_blend_pt.png differ
diff --git a/data/magic-m15-black.mse-style/hybrid_blend_stamp.png b/data/magic-m15-black.mse-style/hybrid_blend_stamp.png
new file mode 100644
index 000000000..4fa69d857
Binary files /dev/null and b/data/magic-m15-black.mse-style/hybrid_blend_stamp.png differ
diff --git a/data/magic-m15-black.mse-style/mcard.jpg b/data/magic-m15-black.mse-style/mcard.jpg
new file mode 100644
index 000000000..d96b40446
Binary files /dev/null and b/data/magic-m15-black.mse-style/mcard.jpg differ
diff --git a/data/magic-m15-black.mse-style/mlcard.jpg b/data/magic-m15-black.mse-style/mlcard.jpg
new file mode 100644
index 000000000..7f3b194b2
Binary files /dev/null and b/data/magic-m15-black.mse-style/mlcard.jpg differ
diff --git a/data/magic-m15-black.mse-style/mlpt.png b/data/magic-m15-black.mse-style/mlpt.png
new file mode 100644
index 000000000..f352194de
Binary files /dev/null and b/data/magic-m15-black.mse-style/mlpt.png differ
diff --git a/data/magic-m15-black.mse-style/mlstamp.jpg b/data/magic-m15-black.mse-style/mlstamp.jpg
new file mode 100644
index 000000000..12bf45134
Binary files /dev/null and b/data/magic-m15-black.mse-style/mlstamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/mpt.png b/data/magic-m15-black.mse-style/mpt.png
new file mode 100644
index 000000000..a57a57fdd
Binary files /dev/null and b/data/magic-m15-black.mse-style/mpt.png differ
diff --git a/data/magic-m15-black.mse-style/mstamp.jpg b/data/magic-m15-black.mse-style/mstamp.jpg
new file mode 100644
index 000000000..0c5b3a0bf
Binary files /dev/null and b/data/magic-m15-black.mse-style/mstamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/multicolor_blend_card.png b/data/magic-m15-black.mse-style/multicolor_blend_card.png
new file mode 100644
index 000000000..2d6985879
Binary files /dev/null and b/data/magic-m15-black.mse-style/multicolor_blend_card.png differ
diff --git a/data/magic-m15-black.mse-style/multicolor_blend_identity.png b/data/magic-m15-black.mse-style/multicolor_blend_identity.png
new file mode 100644
index 000000000..aa9aeeec0
Binary files /dev/null and b/data/magic-m15-black.mse-style/multicolor_blend_identity.png differ
diff --git a/data/magic-m15-black.mse-style/multicolor_blend_pt.png b/data/magic-m15-black.mse-style/multicolor_blend_pt.png
new file mode 100644
index 000000000..b209ddfbf
Binary files /dev/null and b/data/magic-m15-black.mse-style/multicolor_blend_pt.png differ
diff --git a/data/magic-m15-black.mse-style/multicolor_blend_stamp.png b/data/magic-m15-black.mse-style/multicolor_blend_stamp.png
new file mode 100644
index 000000000..bb0de72d6
Binary files /dev/null and b/data/magic-m15-black.mse-style/multicolor_blend_stamp.png differ
diff --git a/data/magic-m15-black.mse-style/rcard.jpg b/data/magic-m15-black.mse-style/rcard.jpg
new file mode 100644
index 000000000..5fdcf1e69
Binary files /dev/null and b/data/magic-m15-black.mse-style/rcard.jpg differ
diff --git a/data/magic-m15-black.mse-style/rlcard.jpg b/data/magic-m15-black.mse-style/rlcard.jpg
new file mode 100644
index 000000000..12ca973b0
Binary files /dev/null and b/data/magic-m15-black.mse-style/rlcard.jpg differ
diff --git a/data/magic-m15-black.mse-style/rlpt.png b/data/magic-m15-black.mse-style/rlpt.png
new file mode 100644
index 000000000..b0309a924
Binary files /dev/null and b/data/magic-m15-black.mse-style/rlpt.png differ
diff --git a/data/magic-m15-black.mse-style/rlstamp.jpg b/data/magic-m15-black.mse-style/rlstamp.jpg
new file mode 100644
index 000000000..74e305943
Binary files /dev/null and b/data/magic-m15-black.mse-style/rlstamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/rpt.png b/data/magic-m15-black.mse-style/rpt.png
new file mode 100644
index 000000000..f8be17649
Binary files /dev/null and b/data/magic-m15-black.mse-style/rpt.png differ
diff --git a/data/magic-m15-black.mse-style/rstamp.jpg b/data/magic-m15-black.mse-style/rstamp.jpg
new file mode 100644
index 000000000..10f236751
Binary files /dev/null and b/data/magic-m15-black.mse-style/rstamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/style b/data/magic-m15-black.mse-style/style
new file mode 100644
index 000000000..a179351c8
--- /dev/null
+++ b/data/magic-m15-black.mse-style/style
@@ -0,0 +1,493 @@
+mse version: 2.0.0
+game: magic
+short name: M15 Black Promo
+full name: M15 Sleek
+icon: card-sample.png
+installer group: magic/m15 style/normal cards
+position hint: 001
+
+version: 2015-12-20
+depends on:
+ package: magic.mse-game
+ version: 2014-06-25
+depends on:
+ package: magic-default-image.mse-include
+ version: 2007-09-23
+depends on:
+ package: magic-watermarks.mse-include
+ version: 2007-09-23
+depends on:
+ package: magic-identity-new.mse-include
+ version: 2012-01-22
+depends on:
+ package: magic-mana-large.mse-symbol-font
+ version: 2007-09-23
+depends on:
+ package: magic-mana-small.mse-symbol-font
+ version: 2007-09-23
+
+card width: 375
+card height: 523
+card dpi: 150
+############################################################## Extra scripts
+init script:
+ # Load scripts for image box
+ include file: /magic-default-image.mse-include/scripts
+
+ # Should hybrids have a grey name?
+ mask_hybrid_with_land := { styling.grey_hybrid_name }
+
+ #Should multicolor lands with basic land types have a colored name?
+ mask_multi_land_with_color := { styling.colored_multicolor_land_name }
+
+ template_prefix := [card: "" pt: "" stamp: "" identity: "/magic-identity-new.mse-include/"]
+ template_suffix := [card: "card.jpg" pt: "pt.png", stamp: "stamp.jpg" identity: "identity.png"]
+ template := { template_prefix[type] + input + template_suffix[type] }
+ land_template := { template_prefix[type] + (if input == "a" then "c" else input) + "l" + template_suffix[type] }
+ # Use land templates for previews because they show more contrast
+ hybrid_previews := "land,hybrid"
+
+ # Use the normal tap symbol
+ mana_t := {
+ if styling.tap_symbol == "old" then "old"
+ else if styling.tap_symbol == "diagonal T" then "older"
+ else "new"
+ }
+
+ # Use guild mana symbols?
+ guild_mana := { styling.use_guild_mana_symbols }
+
+ # Is the card a promo card?
+ is_promo := { styling.promo }
+ has_identity := { styling.color_indicator_dot }
+ chop_top := {if styling.chop_top == "" then 0 else if comma_count(styling.chop_top) == "," or comma_count(styling.chop_top) == ",," then split_text(match:",", styling.chop_top).0 else styling.chop_top}
+ chop_bot := {if comma_count(styling.chop_top) == ",," then split_text(match:",", styling.chop_top).1 else if styling.chop_bottom == "" then 0 else styling.chop_bottom}
+ custom_watermark_a := {if styling.card_watermark == "" or not contains(styling.card_watermark, match:".png") then "/magic-watermarks.mse-include/planeswalker.png" else "/magic-watermarks.mse-include/" + styling.card_watermark}
+############################################################## 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: chop top
+ description: Shrinks the textbox X pixels from the top OR shrinks "top,bottom,"
+styling field:
+ type: text
+ name: chop bottom
+ description: Shrinks the textbox X pixels from the bottom.
+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: card watermark
+ description: Filename in magic-watermarks to use for standalone card watermark
+styling field:
+ type: boolean
+ name: color indicator dot
+ description: Use the color indicator dot for this card.
+ 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: colored multicolor land name
+ description: Use a colored background for the name and type on multicolor land cards with a basic land type. This is done on real cards.
+styling field:
+ type: boolean
+ name: use guild mana symbols
+ description: Use the Ravnica guild symbols instead of the official half/half circles for hybrid mana.
+ initial: no
+styling field:
+ type: choice
+ name: tap symbol
+ description: What tap and untap symbols should be used on cards?
+ initial: modern
+ choice: modern
+ choice: old
+ choice: diagonal T
+styling field:
+ type: package choice
+ name: text box mana symbols
+ match: magic-mana-*.mse-symbol-font
+ initial: magic-mana-small.mse-symbol-font
+styling field:
+ type: choice
+ name: center text
+ description: When to center text (short text only means only on one-line cards with no flavor text)
+ choice: always
+ choice: short text only
+ choice: never
+ initial: never
+styling field:
+ type: boolean
+ name: promo
+ description: Is this card a promo card, with the "P" rarity?
+ initial: no
+styling field:
+ type: boolean
+ name: inverted common symbol
+ description: Should the common rarity symbol be inverted, like in Coldsnap?
+ initial: no
+styling field:
+ type: package choice
+ name: overlay
+ description: Should there be an overlay applied, such as foil?
+ match: magic-overlay-*.mse-include
+ required: false
+styling style:
+ use guild mana symbols:
+ choice images:
+ yes: /magic-mana-small.mse-symbol-font/mana_guild_rg.png
+ no: /magic-mana-small.mse-symbol-font/mana_rg.png
+ tap symbol:
+ render style: both
+ choice images:
+ modern: /magic-mana-large.mse-symbol-font/mana_t.png
+ old: /magic-mana-large.mse-symbol-font/mana_t_old.png
+ diagonal T: /magic-mana-large.mse-symbol-font/mana_t_older.png
+ center text:
+ render style: both
+ choice images:
+ always: /magic.mse-game/icons/center-all-text.png
+ short text only: /magic.mse-game/icons/center-short-text.png
+ never: /magic.mse-game/icons/center-no-text.png
+ inverted common symbol:
+ choice images:
+ no: { symbol_variation(symbol: set.symbol, variation: "common") }
+ yes: { symbol_variation(symbol: set.symbol, variation: "invertedcommon") }
+############################################################## Card fields
+card style:
+ ############################# Background stuff
+ border color:
+ left: 0
+ top : 0
+ width: 375
+ height: 523
+ radius: 18
+ left width: 17
+ right width: 17
+ top width: 17
+ bottom width: 18
+ z index: 4
+ mask: border_mask.png
+ card color:
+ left: 0
+ top: 0
+ width: 375
+ height: 523
+ z index: 0
+ render style: image
+ popup style: in place
+ image: { card_background() }
+ mask: corner_mask.jpg
+ ############################# Name line
+ name:
+ left: { if card.card_symbol=="none" then 32 else 50 }
+ top: 30
+ right: { 341 - card_style.casting_cost.content_width }
+ height: 23
+ alignment: bottom shrink-overflow
+ padding bottom: 0
+ z index: 1
+ font:
+ name: Beleren Bold
+ size: 16
+ color: rgb(140,140,140)
+ casting cost:
+ right: 346
+ top: 29
+ width: { max(30, card_style.casting_cost.content_width) + 5 }
+ height: 23
+ alignment: middle right
+ font:
+ name: MPlantin
+ size: 15
+ symbol font:
+ name: magic-mana-large
+ size: 15
+ alignment: middle right
+ always symbol: true
+ z index: 2
+ padding top: 0
+ card symbol:
+ left: {if card.card_symbol=="none" then 20 else 30}
+ top: 29
+ height: 20
+ width: 14
+ z index: 1
+ render style: image
+ choice images:
+ tombstone: tombstone.png
+ ############################# Image
+ image:
+ left: 29
+ top: 60
+ width: 316
+ height: 231
+ z index: 1
+ default: {default_image(card.card_color)}
+ mainframe image:
+ 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: 31
+ top: 300
+ width: 17
+ height: 17
+ z index: 2
+ render style: image
+ visible: { has_identity() }
+ image: { card_identity() }
+ type:
+ left: { if has_identity() then "52" else "32" }
+ top: 296
+ width: { (if has_identity() then "290" else "310") - max(22,card_style.rarity.content_width) }
+ height: 20
+ alignment: top shrink-overflow
+ z index: 1
+ padding top: 2
+ font:
+ name: Beleren Bold
+ size: 13
+ color: rgb(140,140,140)
+ separator color: red
+ rarity:
+ right: 344
+ top: 297
+ width: 44
+ height: 22
+ z index: 2
+ render style: image
+ alignment: middle right
+ choice images:
+ # Images based on the set symbol
+ basic land:
+ script:
+ if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
+ else symbol_variation(symbol: set.symbol, variation: "common")
+ common:
+ script:
+ if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
+ else symbol_variation(symbol: set.symbol, variation: "common")
+ uncommon: script: symbol_variation(symbol: set.symbol, variation: "uncommon")
+ rare: script: symbol_variation(symbol: set.symbol, variation: "rare")
+ mythic rare: script: symbol_variation(symbol: set.symbol, variation: "mythic rare")
+ special: script: symbol_variation(symbol: set.symbol, variation: "special")
+ ############################# Text box
+ text:
+ left: 29
+ top : { 327 - (-chop_top()) }
+ width: 314
+ bottom: { 481 - chop_bot()}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: 14
+ scale down to: 6
+ color: rgb(140,140,140)
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: 14
+ alignment:
+ script:
+ if (styling.center_text == "short text only" and
+ not contains(match:"\n", card.rule_text) and
+ card.flavor_text == "" and
+ card_style.text.content_lines <= 2) or
+ styling.center_text == "always"
+ then "middle center"
+ else "middle left"
+ z index: 2
+ padding left: 6
+ padding right: 4
+ line height hard: 1.2
+ line height line: 1.5
+ line height soft: 0.9
+ line height hard max: 1.3
+ line height line max: 1.6
+ watermark:
+ left: 19
+ top: 330
+ width: 334
+ height: 152
+ z index: 1
+ render style: image
+ popup style: in place
+ alignment: middle center
+ include file: /magic-watermarks.mse-include/watermarks
+ ############################# PT
+ pt:
+ z index: 2
+ left: 286
+ top: 469
+ width: 60
+ height: 28
+ alignment: center middle shrink-overflow
+ font:
+ name: Beleren Bold
+ size: 16
+ color: rgb(140,140,140)
+ separator color: red
+ ############################# 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
+ illustrator:
+ left: { 44 + card_style.set_code.content_width }
+ top: 497.5
+ width: 200
+ height: 10
+ z index: 1
+ font:
+ name: Beleren Small Caps Bold
+ size: 7.25
+ color: white
+ copyright:
+ right: 350
+ top: { if card.pt != "" then 500 else 488 }
+ width: 140
+ height: 10
+ z index: 2
+ 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 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: pt box
+ script: card.card_color
+ editable: false
+ 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: 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: 1
+ 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: 1
+ render style: image
+ image: artist_arrow.png
+ pt box:
+ left: 273
+ top: 466
+ width: 81
+ height: 42
+ z index: 1
+ visible: { card.pt != "" }
+ render style: image
+ image: { card_ptbox() }
+ stamp:
+ left: 165
+ top: 472
+ width: 46
+ height: 26
+ z index: 1
+ visible: { is_rare() }
+ render style: image
+ image: { card_stamp() }
+ foil stamp:
+ left: 165
+ top: 472
+ width: 46
+ height: 26
+ z index: 1
+ visible: { is_rare() }
+ render style: image
+ image: foil_stamp.png
+ foil layer:
+ left: 0
+ top : 0
+ width: 375
+ height: 523
+ z index: 3
+ render style: image
+ image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"}
+ mask: { if is_rare() then "foil_mask_rare.png" else "foil_mask.png" }
+ vorthos box:
+ right: { if card.pt != "" then 275 else 350 }
+ top: 488
+ left: 210
+ height: 10
+ z index: 3
+ alignment: middle right
+ font:
+ name: Relay-Medium
+ size: 7
+ color: white
+ weight: bold
\ No newline at end of file
diff --git a/data/magic-m15-black.mse-style/tombstone.png b/data/magic-m15-black.mse-style/tombstone.png
new file mode 100644
index 000000000..d5508a6d3
Binary files /dev/null and b/data/magic-m15-black.mse-style/tombstone.png differ
diff --git a/data/magic-m15-black.mse-style/ucard.jpg b/data/magic-m15-black.mse-style/ucard.jpg
new file mode 100644
index 000000000..736eca229
Binary files /dev/null and b/data/magic-m15-black.mse-style/ucard.jpg differ
diff --git a/data/magic-m15-black.mse-style/ulcard.jpg b/data/magic-m15-black.mse-style/ulcard.jpg
new file mode 100644
index 000000000..fd95e4f6a
Binary files /dev/null and b/data/magic-m15-black.mse-style/ulcard.jpg differ
diff --git a/data/magic-m15-black.mse-style/ulpt.png b/data/magic-m15-black.mse-style/ulpt.png
new file mode 100644
index 000000000..fee5032af
Binary files /dev/null and b/data/magic-m15-black.mse-style/ulpt.png differ
diff --git a/data/magic-m15-black.mse-style/ulstamp.jpg b/data/magic-m15-black.mse-style/ulstamp.jpg
new file mode 100644
index 000000000..2d16d2255
Binary files /dev/null and b/data/magic-m15-black.mse-style/ulstamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/upt.png b/data/magic-m15-black.mse-style/upt.png
new file mode 100644
index 000000000..55dc866cb
Binary files /dev/null and b/data/magic-m15-black.mse-style/upt.png differ
diff --git a/data/magic-m15-black.mse-style/ustamp.jpg b/data/magic-m15-black.mse-style/ustamp.jpg
new file mode 100644
index 000000000..016d0c8a2
Binary files /dev/null and b/data/magic-m15-black.mse-style/ustamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/wcard.jpg b/data/magic-m15-black.mse-style/wcard.jpg
new file mode 100644
index 000000000..ed9dd8894
Binary files /dev/null and b/data/magic-m15-black.mse-style/wcard.jpg differ
diff --git a/data/magic-m15-black.mse-style/wlcard.jpg b/data/magic-m15-black.mse-style/wlcard.jpg
new file mode 100644
index 000000000..64f63860f
Binary files /dev/null and b/data/magic-m15-black.mse-style/wlcard.jpg differ
diff --git a/data/magic-m15-black.mse-style/wlpt.png b/data/magic-m15-black.mse-style/wlpt.png
new file mode 100644
index 000000000..ba1fcacad
Binary files /dev/null and b/data/magic-m15-black.mse-style/wlpt.png differ
diff --git a/data/magic-m15-black.mse-style/wlstamp.jpg b/data/magic-m15-black.mse-style/wlstamp.jpg
new file mode 100644
index 000000000..ab4e359c4
Binary files /dev/null and b/data/magic-m15-black.mse-style/wlstamp.jpg differ
diff --git a/data/magic-m15-black.mse-style/wpt.png b/data/magic-m15-black.mse-style/wpt.png
new file mode 100644
index 000000000..a437cc965
Binary files /dev/null and b/data/magic-m15-black.mse-style/wpt.png differ
diff --git a/data/magic-m15-black.mse-style/wstamp.jpg b/data/magic-m15-black.mse-style/wstamp.jpg
new file mode 100644
index 000000000..363990078
Binary files /dev/null and b/data/magic-m15-black.mse-style/wstamp.jpg differ
diff --git a/data/magic-m15-dungeons.mse-style/acard.png b/data/magic-m15-dungeons.mse-style/acard.png
new file mode 100644
index 000000000..0488ed550
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/acard.png differ
diff --git a/data/magic-m15-dungeons.mse-style/arrow.png b/data/magic-m15-dungeons.mse-style/arrow.png
new file mode 100644
index 000000000..d8efe8b4d
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/arrow.png differ
diff --git a/data/magic-m15-dungeons.mse-style/arrowD.png b/data/magic-m15-dungeons.mse-style/arrowD.png
new file mode 100644
index 000000000..8d76e53d8
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/arrowD.png differ
diff --git a/data/magic-m15-dungeons.mse-style/arrowL.png b/data/magic-m15-dungeons.mse-style/arrowL.png
new file mode 100644
index 000000000..5182696de
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/arrowL.png differ
diff --git a/data/magic-m15-dungeons.mse-style/arrowLR.png b/data/magic-m15-dungeons.mse-style/arrowLR.png
new file mode 100644
index 000000000..c3fcf2091
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/arrowLR.png differ
diff --git a/data/magic-m15-dungeons.mse-style/arrowR.png b/data/magic-m15-dungeons.mse-style/arrowR.png
new file mode 100644
index 000000000..f346a2526
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/arrowR.png differ
diff --git a/data/magic-m15-dungeons.mse-style/arrowU.png b/data/magic-m15-dungeons.mse-style/arrowU.png
new file mode 100644
index 000000000..403b2b6c4
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/arrowU.png differ
diff --git a/data/magic-m15-dungeons.mse-style/arrowUD.png b/data/magic-m15-dungeons.mse-style/arrowUD.png
new file mode 100644
index 000000000..7bd58d555
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/arrowUD.png differ
diff --git a/data/magic-m15-dungeons.mse-style/artifact_blend_card.png b/data/magic-m15-dungeons.mse-style/artifact_blend_card.png
new file mode 100644
index 000000000..bbd674ea2
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/artifact_blend_card.png differ
diff --git a/data/magic-m15-dungeons.mse-style/artifact_blend_dark.png b/data/magic-m15-dungeons.mse-style/artifact_blend_dark.png
new file mode 100644
index 000000000..9fad2e2dc
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/artifact_blend_dark.png differ
diff --git a/data/magic-m15-dungeons.mse-style/artifact_blend_grid.png b/data/magic-m15-dungeons.mse-style/artifact_blend_grid.png
new file mode 100644
index 000000000..8b1a57ccb
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/artifact_blend_grid.png differ
diff --git a/data/magic-m15-dungeons.mse-style/artifact_blend_light.png b/data/magic-m15-dungeons.mse-style/artifact_blend_light.png
new file mode 100644
index 000000000..9fad2e2dc
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/artifact_blend_light.png differ
diff --git a/data/magic-m15-dungeons.mse-style/artifact_blend_wall.png b/data/magic-m15-dungeons.mse-style/artifact_blend_wall.png
new file mode 100644
index 000000000..9fad2e2dc
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/artifact_blend_wall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/base.png b/data/magic-m15-dungeons.mse-style/base.png
new file mode 100644
index 000000000..b2f1291a2
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/base.png differ
diff --git a/data/magic-m15-dungeons.mse-style/bcard.png b/data/magic-m15-dungeons.mse-style/bcard.png
new file mode 100644
index 000000000..ebc5f20a5
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/bcard.png differ
diff --git a/data/magic-m15-dungeons.mse-style/bool_no.png b/data/magic-m15-dungeons.mse-style/bool_no.png
new file mode 100644
index 000000000..aad513940
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/bool_no.png differ
diff --git a/data/magic-m15-dungeons.mse-style/bool_yes.png b/data/magic-m15-dungeons.mse-style/bool_yes.png
new file mode 100644
index 000000000..12936af64
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/bool_yes.png differ
diff --git a/data/magic-m15-dungeons.mse-style/bwalls.png b/data/magic-m15-dungeons.mse-style/bwalls.png
new file mode 100644
index 000000000..6b335c4d8
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/bwalls.png differ
diff --git a/data/magic-m15-dungeons.mse-style/card-old.png b/data/magic-m15-dungeons.mse-style/card-old.png
new file mode 100644
index 000000000..d88a69856
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/card-old.png differ
diff --git a/data/magic-m15-dungeons.mse-style/card-sample.png b/data/magic-m15-dungeons.mse-style/card-sample.png
index 7f484dcc8..da00bf19d 100644
Binary files a/data/magic-m15-dungeons.mse-style/card-sample.png 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
index d88a69856..7cfb52062 100644
Binary files a/data/magic-m15-dungeons.mse-style/card.png and b/data/magic-m15-dungeons.mse-style/card.png differ
diff --git a/data/magic-m15-dungeons.mse-style/ccard.png b/data/magic-m15-dungeons.mse-style/ccard.png
new file mode 100644
index 000000000..9b23a6cde
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/ccard.png differ
diff --git a/data/magic-m15-dungeons.mse-style/corners.png b/data/magic-m15-dungeons.mse-style/corners.png
new file mode 100644
index 000000000..7cfe992ae
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/corners.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/1_1.png b/data/magic-m15-dungeons.mse-style/door_masks/1_1.png
new file mode 100644
index 000000000..94de338b4
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/1_1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/1_12.png b/data/magic-m15-dungeons.mse-style/door_masks/1_12.png
new file mode 100644
index 000000000..cfa9b07a7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/1_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/1_2.png b/data/magic-m15-dungeons.mse-style/door_masks/1_2.png
new file mode 100644
index 000000000..8fe45a75c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/1_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/2_1.png b/data/magic-m15-dungeons.mse-style/door_masks/2_1.png
new file mode 100644
index 000000000..94de338b4
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/2_1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/2_12.png b/data/magic-m15-dungeons.mse-style/door_masks/2_12.png
new file mode 100644
index 000000000..5b6450c7b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/2_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/2_123.png b/data/magic-m15-dungeons.mse-style/door_masks/2_123.png
new file mode 100644
index 000000000..640cbfbf5
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/2_123.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/2_13.png b/data/magic-m15-dungeons.mse-style/door_masks/2_13.png
new file mode 100644
index 000000000..cfa9b07a7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/2_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/2_2.png b/data/magic-m15-dungeons.mse-style/door_masks/2_2.png
new file mode 100644
index 000000000..490c2cb54
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/2_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/2_23.png b/data/magic-m15-dungeons.mse-style/door_masks/2_23.png
new file mode 100644
index 000000000..875c17f79
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/2_23.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/2_3.png b/data/magic-m15-dungeons.mse-style/door_masks/2_3.png
new file mode 100644
index 000000000..8fe45a75c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/2_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_1.png b/data/magic-m15-dungeons.mse-style/door_masks/3_1.png
new file mode 100644
index 000000000..94de338b4
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_12.png b/data/magic-m15-dungeons.mse-style/door_masks/3_12.png
new file mode 100644
index 000000000..82395b5b2
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_123.png b/data/magic-m15-dungeons.mse-style/door_masks/3_123.png
new file mode 100644
index 000000000..38c1ba451
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_123.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_1234.png b/data/magic-m15-dungeons.mse-style/door_masks/3_1234.png
new file mode 100644
index 000000000..8f47b561c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_1234.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_124.png b/data/magic-m15-dungeons.mse-style/door_masks/3_124.png
new file mode 100644
index 000000000..9ced7a272
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_124.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_13.png b/data/magic-m15-dungeons.mse-style/door_masks/3_13.png
new file mode 100644
index 000000000..526680127
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_134.png b/data/magic-m15-dungeons.mse-style/door_masks/3_134.png
new file mode 100644
index 000000000..5e54a3278
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_134.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_14.png b/data/magic-m15-dungeons.mse-style/door_masks/3_14.png
new file mode 100644
index 000000000..cfa9b07a7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_14.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_2.png b/data/magic-m15-dungeons.mse-style/door_masks/3_2.png
new file mode 100644
index 000000000..5b1371773
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_23.png b/data/magic-m15-dungeons.mse-style/door_masks/3_23.png
new file mode 100644
index 000000000..bd942373e
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_23.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_24.png b/data/magic-m15-dungeons.mse-style/door_masks/3_24.png
new file mode 100644
index 000000000..d70feff6c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_24.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_3.png b/data/magic-m15-dungeons.mse-style/door_masks/3_3.png
new file mode 100644
index 000000000..6be6cca1e
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_34.png b/data/magic-m15-dungeons.mse-style/door_masks/3_34.png
new file mode 100644
index 000000000..6860310d9
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_34.png differ
diff --git a/data/magic-m15-dungeons.mse-style/door_masks/3_4.png b/data/magic-m15-dungeons.mse-style/door_masks/3_4.png
new file mode 100644
index 000000000..8fe45a75c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/door_masks/3_4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/gcard.png b/data/magic-m15-dungeons.mse-style/gcard.png
new file mode 100644
index 000000000..ed55bc1dc
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/gcard.png differ
diff --git a/data/magic-m15-dungeons.mse-style/green.png b/data/magic-m15-dungeons.mse-style/green.png
new file mode 100644
index 000000000..198acc5c8
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/green.png differ
diff --git a/data/magic-m15-dungeons.mse-style/grid/agrid.png b/data/magic-m15-dungeons.mse-style/grid/agrid.png
new file mode 100644
index 000000000..b6be959c1
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/grid/agrid.png differ
diff --git a/data/magic-m15-dungeons.mse-style/grid/bgrid.png b/data/magic-m15-dungeons.mse-style/grid/bgrid.png
new file mode 100644
index 000000000..d4aead8b7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/grid/bgrid.png differ
diff --git a/data/magic-m15-dungeons.mse-style/grid/cgrid.png b/data/magic-m15-dungeons.mse-style/grid/cgrid.png
new file mode 100644
index 000000000..309f9491f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/grid/cgrid.png differ
diff --git a/data/magic-m15-dungeons.mse-style/grid/floor.png b/data/magic-m15-dungeons.mse-style/grid/floor.png
new file mode 100644
index 000000000..97db95630
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/grid/floor.png differ
diff --git a/data/magic-m15-dungeons.mse-style/grid/ggrid.png b/data/magic-m15-dungeons.mse-style/grid/ggrid.png
new file mode 100644
index 000000000..fd63a9de7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/grid/ggrid.png differ
diff --git a/data/magic-m15-dungeons.mse-style/grid/mgrid.png b/data/magic-m15-dungeons.mse-style/grid/mgrid.png
new file mode 100644
index 000000000..32300ede7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/grid/mgrid.png differ
diff --git a/data/magic-m15-dungeons.mse-style/grid/rgrid.png b/data/magic-m15-dungeons.mse-style/grid/rgrid.png
new file mode 100644
index 000000000..c171375ac
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/grid/rgrid.png differ
diff --git a/data/magic-m15-dungeons.mse-style/grid/ugrid.png b/data/magic-m15-dungeons.mse-style/grid/ugrid.png
new file mode 100644
index 000000000..b01ec9349
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/grid/ugrid.png differ
diff --git a/data/magic-m15-dungeons.mse-style/grid/wgrid.png b/data/magic-m15-dungeons.mse-style/grid/wgrid.png
new file mode 100644
index 000000000..6f280bafe
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/grid/wgrid.png differ
diff --git a/data/magic-m15-dungeons.mse-style/gridmask.png b/data/magic-m15-dungeons.mse-style/gridmask.png
new file mode 100644
index 000000000..b84230310
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/gridmask.png differ
diff --git a/data/magic-m15-dungeons.mse-style/hybrid_blend_card.png b/data/magic-m15-dungeons.mse-style/hybrid_blend_card.png
new file mode 100644
index 000000000..c7f73bb76
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/hybrid_blend_card.png differ
diff --git a/data/magic-m15-dungeons.mse-style/hybrid_blend_dark.png b/data/magic-m15-dungeons.mse-style/hybrid_blend_dark.png
new file mode 100644
index 000000000..1c2e2d343
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/hybrid_blend_dark.png differ
diff --git a/data/magic-m15-dungeons.mse-style/hybrid_blend_grid.png b/data/magic-m15-dungeons.mse-style/hybrid_blend_grid.png
new file mode 100644
index 000000000..fa1dd52d1
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/hybrid_blend_grid.png differ
diff --git a/data/magic-m15-dungeons.mse-style/hybrid_blend_light.png b/data/magic-m15-dungeons.mse-style/hybrid_blend_light.png
new file mode 100644
index 000000000..1c2e2d343
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/hybrid_blend_light.png differ
diff --git a/data/magic-m15-dungeons.mse-style/hybrid_blend_wall.png b/data/magic-m15-dungeons.mse-style/hybrid_blend_wall.png
new file mode 100644
index 000000000..1c2e2d343
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/hybrid_blend_wall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/key.png b/data/magic-m15-dungeons.mse-style/key.png
new file mode 100644
index 000000000..fd79e5a38
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/key.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/1.png b/data/magic-m15-dungeons.mse-style/lane_masks/1.png
new file mode 100644
index 000000000..fbe7eb085
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/1e1.png b/data/magic-m15-dungeons.mse-style/lane_masks/1e1.png
new file mode 100644
index 000000000..4a1743f53
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/1e1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2.png b/data/magic-m15-dungeons.mse-style/lane_masks/2.png
new file mode 100644
index 000000000..249bf64cc
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2d1.png b/data/magic-m15-dungeons.mse-style/lane_masks/2d1.png
new file mode 100644
index 000000000..e42dad486
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2d1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2d1d2.png b/data/magic-m15-dungeons.mse-style/lane_masks/2d1d2.png
new file mode 100644
index 000000000..cd249f120
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2d1d2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2d1d2d3.png b/data/magic-m15-dungeons.mse-style/lane_masks/2d1d2d3.png
new file mode 100644
index 000000000..540c8ea43
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2d1d2d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2d1d3.png b/data/magic-m15-dungeons.mse-style/lane_masks/2d1d3.png
new file mode 100644
index 000000000..d7a006645
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2d1d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2d2.png b/data/magic-m15-dungeons.mse-style/lane_masks/2d2.png
new file mode 100644
index 000000000..9f2c98cba
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2d2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2d2d3.png b/data/magic-m15-dungeons.mse-style/lane_masks/2d2d3.png
new file mode 100644
index 000000000..de5ae1be3
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2d2d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2d3.png b/data/magic-m15-dungeons.mse-style/lane_masks/2d3.png
new file mode 100644
index 000000000..bd1236926
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2e1.png b/data/magic-m15-dungeons.mse-style/lane_masks/2e1.png
new file mode 100644
index 000000000..3049dd1e7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2e1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2e1e2.png b/data/magic-m15-dungeons.mse-style/lane_masks/2e1e2.png
new file mode 100644
index 000000000..61c15ea10
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2e1e2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2e1e2e3.png b/data/magic-m15-dungeons.mse-style/lane_masks/2e1e2e3.png
new file mode 100644
index 000000000..2dbf87459
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2e1e2e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2e1e3.png b/data/magic-m15-dungeons.mse-style/lane_masks/2e1e3.png
new file mode 100644
index 000000000..1daeb9149
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2e1e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2e2.png b/data/magic-m15-dungeons.mse-style/lane_masks/2e2.png
new file mode 100644
index 000000000..0e25ec72a
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2e2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/2e2e3.png b/data/magic-m15-dungeons.mse-style/lane_masks/2e2e3.png
new file mode 100644
index 000000000..be9318476
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/2e2e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3.png b/data/magic-m15-dungeons.mse-style/lane_masks/3.png
new file mode 100644
index 000000000..57dd9fc5c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3d1.png b/data/magic-m15-dungeons.mse-style/lane_masks/3d1.png
new file mode 100644
index 000000000..b8fdb008d
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3d1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3d1d2.png b/data/magic-m15-dungeons.mse-style/lane_masks/3d1d2.png
new file mode 100644
index 000000000..df0f763ae
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3d1d2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3d1d2d3.png b/data/magic-m15-dungeons.mse-style/lane_masks/3d1d2d3.png
new file mode 100644
index 000000000..0dca4da4c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3d1d2d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3d1d3.png b/data/magic-m15-dungeons.mse-style/lane_masks/3d1d3.png
new file mode 100644
index 000000000..efc9e2a71
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3d1d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3d2.png b/data/magic-m15-dungeons.mse-style/lane_masks/3d2.png
new file mode 100644
index 000000000..319ac4372
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3d2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3d2d3.png b/data/magic-m15-dungeons.mse-style/lane_masks/3d2d3.png
new file mode 100644
index 000000000..dc2ea8b5e
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3d2d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3d3.png b/data/magic-m15-dungeons.mse-style/lane_masks/3d3.png
new file mode 100644
index 000000000..41e8f3c80
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3e1.png b/data/magic-m15-dungeons.mse-style/lane_masks/3e1.png
new file mode 100644
index 000000000..942ec85a3
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3e1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3e1e2.png b/data/magic-m15-dungeons.mse-style/lane_masks/3e1e2.png
new file mode 100644
index 000000000..6e56082e7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3e1e2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3e1e2e3.png b/data/magic-m15-dungeons.mse-style/lane_masks/3e1e2e3.png
new file mode 100644
index 000000000..d011ccedf
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3e1e2e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3e1e3.png b/data/magic-m15-dungeons.mse-style/lane_masks/3e1e3.png
new file mode 100644
index 000000000..e44dc877e
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3e1e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3e2.png b/data/magic-m15-dungeons.mse-style/lane_masks/3e2.png
new file mode 100644
index 000000000..953b304a1
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3e2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3e2e3.png b/data/magic-m15-dungeons.mse-style/lane_masks/3e2e3.png
new file mode 100644
index 000000000..616b0e1d5
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3e2e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/3e3.png b/data/magic-m15-dungeons.mse-style/lane_masks/3e3.png
new file mode 100644
index 000000000..288961c27
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/3e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4.png b/data/magic-m15-dungeons.mse-style/lane_masks/4.png
new file mode 100644
index 000000000..2c7a55a77
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4e1.png b/data/magic-m15-dungeons.mse-style/lane_masks/4e1.png
new file mode 100644
index 000000000..c6cc401ff
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4e1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4e1e2.png b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e2.png
new file mode 100644
index 000000000..961e23d4a
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4e1e2e3.png b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e2e3.png
new file mode 100644
index 000000000..80c7dc832
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e2e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4e1e2e3e4.png b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e2e3e4.png
new file mode 100644
index 000000000..a156a0f02
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e2e3e4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4e1e2e4.png b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e2e4.png
new file mode 100644
index 000000000..ffb15615a
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e2e4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4e1e3.png b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e3.png
new file mode 100644
index 000000000..54bfe2d26
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4e1e3e4.png b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e3e4.png
new file mode 100644
index 000000000..6d3ead889
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e3e4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4e1e4.png b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e4.png
new file mode 100644
index 000000000..5be0370ed
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4e1e4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4e2.png b/data/magic-m15-dungeons.mse-style/lane_masks/4e2.png
new file mode 100644
index 000000000..cf8115e33
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4e2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4e2e3.png b/data/magic-m15-dungeons.mse-style/lane_masks/4e2e3.png
new file mode 100644
index 000000000..41360d70c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4e2e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4e3.png b/data/magic-m15-dungeons.mse-style/lane_masks/4e3.png
new file mode 100644
index 000000000..74753f444
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4e3e4.png b/data/magic-m15-dungeons.mse-style/lane_masks/4e3e4.png
new file mode 100644
index 000000000..1e7645282
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4e3e4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lane_masks/4e4.png b/data/magic-m15-dungeons.mse-style/lane_masks/4e4.png
new file mode 100644
index 000000000..6cee2c57d
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lane_masks/4e4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/lock.png b/data/magic-m15-dungeons.mse-style/lock.png
new file mode 100644
index 000000000..26c0822e1
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/lock.png differ
diff --git a/data/magic-m15-dungeons.mse-style/mcard.png b/data/magic-m15-dungeons.mse-style/mcard.png
new file mode 100644
index 000000000..5c382572a
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/mcard.png differ
diff --git a/data/magic-m15-dungeons.mse-style/multicolor_blend_card.png b/data/magic-m15-dungeons.mse-style/multicolor_blend_card.png
new file mode 100644
index 000000000..54c882cc4
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/multicolor_blend_card.png differ
diff --git a/data/magic-m15-dungeons.mse-style/multicolor_blend_dark.png b/data/magic-m15-dungeons.mse-style/multicolor_blend_dark.png
new file mode 100644
index 000000000..b81cb1f0b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/multicolor_blend_dark.png differ
diff --git a/data/magic-m15-dungeons.mse-style/multicolor_blend_grid.png b/data/magic-m15-dungeons.mse-style/multicolor_blend_grid.png
new file mode 100644
index 000000000..db45467bf
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/multicolor_blend_grid.png differ
diff --git a/data/magic-m15-dungeons.mse-style/multicolor_blend_light.png b/data/magic-m15-dungeons.mse-style/multicolor_blend_light.png
new file mode 100644
index 000000000..b81cb1f0b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/multicolor_blend_light.png differ
diff --git a/data/magic-m15-dungeons.mse-style/multicolor_blend_wall.png b/data/magic-m15-dungeons.mse-style/multicolor_blend_wall.png
new file mode 100644
index 000000000..b81cb1f0b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/multicolor_blend_wall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/dark_lines.png b/data/magic-m15-dungeons.mse-style/new_masks/dark_lines.png
new file mode 100644
index 000000000..66fe25e25
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/dark_lines.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/door.png b/data/magic-m15-dungeons.mse-style/new_masks/door.png
new file mode 100644
index 000000000..196f0be26
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/door.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/door_mask.png b/data/magic-m15-dungeons.mse-style/new_masks/door_mask.png
new file mode 100644
index 000000000..abd523772
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/door_mask.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/door_mini.png b/data/magic-m15-dungeons.mse-style/new_masks/door_mini.png
new file mode 100644
index 000000000..5e9ba5958
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/door_mini.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/door_mini_mask.png b/data/magic-m15-dungeons.mse-style/new_masks/door_mini_mask.png
new file mode 100644
index 000000000..4165b0e75
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/door_mini_mask.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/door_short.png b/data/magic-m15-dungeons.mse-style/new_masks/door_short.png
new file mode 100644
index 000000000..675bbb096
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/door_short.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/door_short_mask.png b/data/magic-m15-dungeons.mse-style/new_masks/door_short_mask.png
new file mode 100644
index 000000000..ad0cd79c0
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/door_short_mask.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane.png b/data/magic-m15-dungeons.mse-style/new_masks/lane.png
new file mode 100644
index 000000000..1054f7c7b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_1.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_1.png
new file mode 100644
index 000000000..b70451194
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_10.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_10.png
new file mode 100644
index 000000000..75d5dd3ef
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_10.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_11.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_11.png
new file mode 100644
index 000000000..b6e34fc0b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_11.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_12.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_12.png
new file mode 100644
index 000000000..e5ac3b2ce
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_13.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_13.png
new file mode 100644
index 000000000..7c3b819db
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_14.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_14.png
new file mode 100644
index 000000000..5082bbbd8
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_14.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_15.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_15.png
new file mode 100644
index 000000000..d1357e53f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_15.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_16.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_16.png
new file mode 100644
index 000000000..2641b1383
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_16.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_2.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_2.png
new file mode 100644
index 000000000..3c5927215
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_3.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_3.png
new file mode 100644
index 000000000..8b36521f7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_4.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_4.png
new file mode 100644
index 000000000..f015dbe0e
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_5.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_5.png
new file mode 100644
index 000000000..74331e9e2
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_5.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_6.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_6.png
new file mode 100644
index 000000000..793c3a986
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_6.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_7.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_7.png
new file mode 100644
index 000000000..a75bdfef3
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_7.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_8.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_8.png
new file mode 100644
index 000000000..cd7d7cf71
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_8.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_9.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_9.png
new file mode 100644
index 000000000..777dfb0c3
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_9.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_1.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_1.png
new file mode 100644
index 000000000..c89634eb9
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_10.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_10.png
new file mode 100644
index 000000000..1145517b8
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_10.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_11.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_11.png
new file mode 100644
index 000000000..3813206ad
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_11.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_12.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_12.png
new file mode 100644
index 000000000..23a1d1053
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_13.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_13.png
new file mode 100644
index 000000000..9e2f62026
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_14.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_14.png
new file mode 100644
index 000000000..bae55c25e
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_14.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_15.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_15.png
new file mode 100644
index 000000000..3b9e496b6
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_15.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_16.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_16.png
new file mode 100644
index 000000000..a40a3c20e
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_16.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_2.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_2.png
new file mode 100644
index 000000000..4103308d6
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_3.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_3.png
new file mode 100644
index 000000000..2ab46e4cc
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_4.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_4.png
new file mode 100644
index 000000000..2c4e769ee
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_5.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_5.png
new file mode 100644
index 000000000..ceb65d9bc
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_5.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_6.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_6.png
new file mode 100644
index 000000000..2a89e1602
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_6.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_7.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_7.png
new file mode 100644
index 000000000..56464acd8
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_7.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_8.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_8.png
new file mode 100644
index 000000000..f3ccd8737
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_8.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_9.png b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_9.png
new file mode 100644
index 000000000..48feb2efb
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/lane_mask_9.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/light_lines.png b/data/magic-m15-dungeons.mse-style/new_masks/light_lines.png
new file mode 100644
index 000000000..5eabf3d50
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/light_lines.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/light_stripes.png b/data/magic-m15-dungeons.mse-style/new_masks/light_stripes.png
new file mode 100644
index 000000000..a185fd684
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/light_stripes.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_10.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_10.png
new file mode 100644
index 000000000..588fc2474
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_10.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_10o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_10o.png
new file mode 100644
index 000000000..4287bd2f3
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_10o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_11.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_11.png
new file mode 100644
index 000000000..c04b0567f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_11.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_11o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_11o.png
new file mode 100644
index 000000000..291f5f960
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_11o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_12.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_12.png
new file mode 100644
index 000000000..6b02e8adf
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_12o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_12o.png
new file mode 100644
index 000000000..7d9057ae7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_12o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_13.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_13.png
new file mode 100644
index 000000000..0a0354ef3
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_13o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_13o.png
new file mode 100644
index 000000000..416575065
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_13o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_14.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_14.png
new file mode 100644
index 000000000..93bc933b7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_14.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_14o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_14o.png
new file mode 100644
index 000000000..d57dd27a3
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_14o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_15.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_15.png
new file mode 100644
index 000000000..5dce7fa15
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_15.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_15o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_15o.png
new file mode 100644
index 000000000..5dd52c3cb
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_15o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_2.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_2.png
new file mode 100644
index 000000000..2e7fb7cb5
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_2o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_2o.png
new file mode 100644
index 000000000..04b19ee0f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_2o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_3.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_3.png
new file mode 100644
index 000000000..cd1885eb6
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_3o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_3o.png
new file mode 100644
index 000000000..67c59d658
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_3o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_4.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_4.png
new file mode 100644
index 000000000..ec713df1c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_4o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_4o.png
new file mode 100644
index 000000000..085ef6ebe
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_4o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_5.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_5.png
new file mode 100644
index 000000000..5b4f4b414
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_5.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_5o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_5o.png
new file mode 100644
index 000000000..ce7e34fed
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_5o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_6.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_6.png
new file mode 100644
index 000000000..795e5e391
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_6.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_6o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_6o.png
new file mode 100644
index 000000000..d461bd722
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_6o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_7.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_7.png
new file mode 100644
index 000000000..e8767af66
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_7.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_7o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_7o.png
new file mode 100644
index 000000000..9bd99fa8d
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_7o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_8.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_8.png
new file mode 100644
index 000000000..b9614e1ee
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_8.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_8o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_8o.png
new file mode 100644
index 000000000..62a0b56bc
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_8o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_9.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_9.png
new file mode 100644
index 000000000..f71405742
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_9.png differ
diff --git a/data/magic-m15-dungeons.mse-style/new_masks/wall_9o.png b/data/magic-m15-dungeons.mse-style/new_masks/wall_9o.png
new file mode 100644
index 000000000..159585191
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/new_masks/wall_9o.png differ
diff --git a/data/magic-m15-dungeons.mse-style/preview.png b/data/magic-m15-dungeons.mse-style/preview.png
new file mode 100644
index 000000000..7d1366a50
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/preview.png differ
diff --git a/data/magic-m15-dungeons.mse-style/rcard.png b/data/magic-m15-dungeons.mse-style/rcard.png
new file mode 100644
index 000000000..ac06f168d
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/rcard.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/1_1.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/1_1.png
new file mode 100644
index 000000000..8800c41d8
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/1_1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/1_12.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/1_12.png
new file mode 100644
index 000000000..74bc53699
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/1_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/1_2.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/1_2.png
new file mode 100644
index 000000000..4efc78968
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/1_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_1.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_1.png
new file mode 100644
index 000000000..8800c41d8
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_12.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_12.png
new file mode 100644
index 000000000..c68001faa
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_123.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_123.png
new file mode 100644
index 000000000..0a4249bc9
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_123.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_13.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_13.png
new file mode 100644
index 000000000..74bc53699
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_2.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_2.png
new file mode 100644
index 000000000..0d030f75b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_23.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_23.png
new file mode 100644
index 000000000..c67e58756
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_23.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_3.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_3.png
new file mode 100644
index 000000000..4efc78968
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/2_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_1.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_1.png
new file mode 100644
index 000000000..8800c41d8
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_12.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_12.png
new file mode 100644
index 000000000..f73bf5212
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_123.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_123.png
new file mode 100644
index 000000000..d74af66ef
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_123.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_1234.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_1234.png
new file mode 100644
index 000000000..2006eeea0
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_1234.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_124.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_124.png
new file mode 100644
index 000000000..c584649a2
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_124.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_13.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_13.png
new file mode 100644
index 000000000..6fef60ca0
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_134.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_134.png
new file mode 100644
index 000000000..484298584
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_134.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_14.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_14.png
new file mode 100644
index 000000000..74bc53699
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_14.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_2.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_2.png
new file mode 100644
index 000000000..c18141286
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_23.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_23.png
new file mode 100644
index 000000000..7bd344c66
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_23.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_24.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_24.png
new file mode 100644
index 000000000..3d16d18a4
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_24.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_3.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_3.png
new file mode 100644
index 000000000..ca80be6d9
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_34.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_34.png
new file mode 100644
index 000000000..e0d056ab1
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_34.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_4.png b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_4.png
new file mode 100644
index 000000000..4efc78968
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/door_masks/3_4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/1.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/1.png
new file mode 100644
index 000000000..073bcde31
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/1e1.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/1e1.png
new file mode 100644
index 000000000..33b5dfb64
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/1e1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2.png
new file mode 100644
index 000000000..ed9441104
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d1.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d1.png
new file mode 100644
index 000000000..9e4f2b988
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d1d2.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d1d2.png
new file mode 100644
index 000000000..e6355c772
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d1d2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d1d2d3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d1d2d3.png
new file mode 100644
index 000000000..b750ed5f0
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d1d2d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d1d3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d1d3.png
new file mode 100644
index 000000000..247300e8c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d1d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d2.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d2.png
new file mode 100644
index 000000000..8fbbf6ae5
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d2d3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d2d3.png
new file mode 100644
index 000000000..e59d1a88f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d2d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d3.png
new file mode 100644
index 000000000..d1666fd02
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e1.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e1.png
new file mode 100644
index 000000000..9b874140f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e1e2.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e1e2.png
new file mode 100644
index 000000000..80a44830d
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e1e2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e1e2e3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e1e2e3.png
new file mode 100644
index 000000000..3003c7098
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e1e2e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e1e3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e1e3.png
new file mode 100644
index 000000000..ea517b234
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e1e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e2.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e2.png
new file mode 100644
index 000000000..ac399161c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e2e3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e2e3.png
new file mode 100644
index 000000000..0ebccdfc0
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/2e2e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3.png
new file mode 100644
index 000000000..240cbc3a7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d1.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d1.png
new file mode 100644
index 000000000..2cf30535f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d1d2.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d1d2.png
new file mode 100644
index 000000000..537aa0b52
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d1d2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d1d2d3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d1d2d3.png
new file mode 100644
index 000000000..0670c6200
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d1d2d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d1d3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d1d3.png
new file mode 100644
index 000000000..add1b871d
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d1d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d2.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d2.png
new file mode 100644
index 000000000..bf18c4773
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d2d3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d2d3.png
new file mode 100644
index 000000000..7b844b6aa
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d2d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d3.png
new file mode 100644
index 000000000..4cdf76629
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3d3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e1.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e1.png
new file mode 100644
index 000000000..cde06a4f7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e1e2.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e1e2.png
new file mode 100644
index 000000000..5088ba1f8
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e1e2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e1e2e3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e1e2e3.png
new file mode 100644
index 000000000..69d22704c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e1e2e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e1e3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e1e3.png
new file mode 100644
index 000000000..0433f9fbf
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e1e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e2.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e2.png
new file mode 100644
index 000000000..e8763089e
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e2e3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e2e3.png
new file mode 100644
index 000000000..f7148089a
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e2e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e3.png
new file mode 100644
index 000000000..91b37c60b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/3e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4.png
new file mode 100644
index 000000000..7da9d7749
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1.png
new file mode 100644
index 000000000..ce7c31259
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e2.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e2.png
new file mode 100644
index 000000000..0185e9a77
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e2e3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e2e3.png
new file mode 100644
index 000000000..9e5f8d720
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e2e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e2e3e4.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e2e3e4.png
new file mode 100644
index 000000000..115ed6d15
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e2e3e4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e2e4.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e2e4.png
new file mode 100644
index 000000000..624b1429a
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e2e4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e3.png
new file mode 100644
index 000000000..0fdf4bc0b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e3e4.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e3e4.png
new file mode 100644
index 000000000..1c7652049
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e3e4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e4.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e4.png
new file mode 100644
index 000000000..7ddcb18ba
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e1e4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e2.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e2.png
new file mode 100644
index 000000000..3056c0788
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e2e3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e2e3.png
new file mode 100644
index 000000000..e58ddac9c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e2e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e3.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e3.png
new file mode 100644
index 000000000..75891beda
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e3e4.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e3e4.png
new file mode 100644
index 000000000..91a4be703
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e3e4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e4.png b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e4.png
new file mode 100644
index 000000000..e9ff413e1
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/lane_masks/4e4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_10.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_10.png
new file mode 100644
index 000000000..728e10d01
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_10.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_11.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_11.png
new file mode 100644
index 000000000..9d4d582ab
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_11.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_12.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_12.png
new file mode 100644
index 000000000..a28d9cee9
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_13.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_13.png
new file mode 100644
index 000000000..5dbc9acab
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_14.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_14.png
new file mode 100644
index 000000000..ff38b4cac
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_14.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_15.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_15.png
new file mode 100644
index 000000000..215609529
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_15.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_2.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_2.png
new file mode 100644
index 000000000..2964ffe60
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_3.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_3.png
new file mode 100644
index 000000000..feddc5fd0
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_4.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_4.png
new file mode 100644
index 000000000..46f077be7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_5.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_5.png
new file mode 100644
index 000000000..c8d9f1e2f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_5.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_6.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_6.png
new file mode 100644
index 000000000..108672246
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_6.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_7.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_7.png
new file mode 100644
index 000000000..17c89286c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_7.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_8.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_8.png
new file mode 100644
index 000000000..089bd4a3f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_8.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_9.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_9.png
new file mode 100644
index 000000000..d375c0290
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/1_9.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_10.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_10.png
new file mode 100644
index 000000000..8383caf70
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_10.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_11.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_11.png
new file mode 100644
index 000000000..3e41e3fb9
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_11.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_12.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_12.png
new file mode 100644
index 000000000..2dcadce5d
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_13.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_13.png
new file mode 100644
index 000000000..3c434a119
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_14.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_14.png
new file mode 100644
index 000000000..82e4355d5
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_14.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_15.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_15.png
new file mode 100644
index 000000000..ce71415ab
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_15.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_2.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_2.png
new file mode 100644
index 000000000..4498f3e36
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_3.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_3.png
new file mode 100644
index 000000000..cfbfb3914
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_4.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_4.png
new file mode 100644
index 000000000..10fabe0d0
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_5.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_5.png
new file mode 100644
index 000000000..f634f38e2
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_5.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_6.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_6.png
new file mode 100644
index 000000000..d564bde87
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_6.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_7.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_7.png
new file mode 100644
index 000000000..958726987
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_7.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_8.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_8.png
new file mode 100644
index 000000000..43af71be2
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_8.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_9.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_9.png
new file mode 100644
index 000000000..bcc6f7c29
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/2_9.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_10.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_10.png
new file mode 100644
index 000000000..3b6d1756e
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_10.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_11.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_11.png
new file mode 100644
index 000000000..1a13cea7e
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_11.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_12.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_12.png
new file mode 100644
index 000000000..5303335b5
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_13.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_13.png
new file mode 100644
index 000000000..4a06bec79
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_14.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_14.png
new file mode 100644
index 000000000..f8e5c98ac
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_14.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_15.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_15.png
new file mode 100644
index 000000000..dac61c6b0
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_15.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_2.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_2.png
new file mode 100644
index 000000000..498fc579e
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_3.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_3.png
new file mode 100644
index 000000000..5463dca79
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_4.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_4.png
new file mode 100644
index 000000000..49d50af8c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_5.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_5.png
new file mode 100644
index 000000000..36486bb1b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_5.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_6.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_6.png
new file mode 100644
index 000000000..eaeed074e
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_6.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_7.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_7.png
new file mode 100644
index 000000000..3df0d2427
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_7.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_8.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_8.png
new file mode 100644
index 000000000..e34f25627
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_8.png differ
diff --git a/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_9.png b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_9.png
new file mode 100644
index 000000000..3476ef665
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/shadow/wall_masks/3_9.png differ
diff --git a/data/magic-m15-dungeons.mse-style/style b/data/magic-m15-dungeons.mse-style/style
index 59c2cf255..ea0f1c7f7 100644
--- a/data/magic-m15-dungeons.mse-style/style
+++ b/data/magic-m15-dungeons.mse-style/style
@@ -10,129 +10,68 @@ version: 2021-06-25
depends on:
package: magic.mse-game
version: 2014-06-25
+depends on:
+ package: magic-mainframe-extras.mse-include
+ version: 2018-01-01
+depends on:
+ package: magic-mana-small.mse-symbol-font
+ version: 2007-09-23
card width: 375
card height: 523
card dpi: 150
#################################
-##### Beta blank by CompleteIndie
+##### Blank from CardConjurer
init script:
+ max_len := 16
+ max_hei := 19
+ # theoretically make the code expandable to bigger boards
+
+ # base images
+ white := to_image("walls.png")
+ black := to_image("base.png")
+
+ # template blending
+ template_prefix := [card: "", grid:"grid/" wall:"wall_texture/" light:"wall_texture/" dark:"wall_texture/" ]
+ template_suffix := [card: "card.png" grid:"grid.png" wall:"wall.png" light:"light.png" dark:"dark.png" ]
+ template := { template_prefix[type] + input + template_suffix[type] }
+ land_template := { template_prefix[type] + (if input == "a" then "c" else input) + template_suffix[type] }
+
+ grid_background := { color_background(type:"grid", base_hybrid:card_hybrid) }
+ walls_background := { color_background(type:"wall", base_hybrid:card_hybrid) }
+ light_background := { color_background(type:"light", base_hybrid:card_hybrid) }
+ dark_background := { color_background(type:"dark", base_hybrid:card_hybrid) }
+
+ # keep the normal filter for the Undercity text
+ base_filter := text_filter
+ # bold room names
text_filter :=
text_filter +
+ remove_tag@(tag: "\\1\\2"
+ match:"^([^\n]+)(\n|[ ][ ])(.*)$"
+ replace:"\\1\\2\\3"
)
+
+ # styling stuff
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
+ font_size := {if styling.font_size != "" then styling.font_size else 12}
+ font_color := {if styling.advanced_scripts == "preview" then "white" else "black"}
+ custom_sym := {
+ c_folder := if contains(styling.arrow_replacement_folder, match:"/") then styling.arrow_replacement_folder else ""
+ if input == "1" then
+ if contains(styling.custom_symbol_one, match:".png") then "/magic-mainframe-extras.mse-include/"+c_folder+styling.custom_symbol_one
+ else "lock.png"
+ else if input == "2" then
+ if contains(styling.custom_symbol_two, match:".png") then "/magic-mainframe-extras.mse-include/"+c_folder+styling.custom_symbol_two
+ else "key.png"
+ else if c_folder != ""
+ then "/magic-mainframe-extras.mse-include/" + c_folder + input
+ else input
}
- 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"
@@ -142,30 +81,759 @@ init script:
# Use guild mana symbols?
guild_mana := { styling.use_guild_mana_symbols }
transfer_levels := {false}
+
+ # lines on level N, L0 and L8 use the real level
+ line_lanes := {
+ line := min(max(1, input), max_level())
+ min(max(1,to_int(pull_comma_array(styling.room_counts, cell:line-1, end:false))),3)
+ }
+ # max number of levels determined by room count
+ max_level := {min(7,max(3, length(filter_text(styling.room_counts, match:"[0-9]"))))}
+ # simplify our common crop script
+ wall_crop := {crop(input, height:387, width:327, offset_x:x, offset_y:offset)}@(x:0)
+ # line height for a level
+ line_height := {
+ if input == 0
+ then 0
+ else(
+ given := max(min(pull_comma_array(styling.room_heights, cell:input-1), 15), 2)
+ bump := excess_height()[input-1]
+ 20*(max(min(given+bump, 15), 2))
+ )
+ # 20 px per block; between 2 and 15 blocks, using room heights and excess height script to redistribute remainder
+ }
+ # line height for a level and all the levels above it
+ line_offset := {
+ off := for x from 1 to input do line_height(x)
+ to_int(off)
+ }
+ # total room height in our style option
+ given_height := {
+ nums := split_text(replace(styling.room_heights, match:",$", replace:""), match:",")
+ val := for x from 0 to length(nums)-1 do min(15,max(2,to_int(nums[x])))
+ miss := max_level() - length(nums)
+ if miss > 0 then val := val + 2*miss
+ val
+ }
+ # distribute any remaining of the 19 block height
+ excess_height := {
+ exc := 19 - given_height()
+ if exc == 0 then [0,0,0,0,0,0,0,0] else (
+ ml := max_level()
+ one_off := 0
+ back_off := 0
+ per := to_int(exc / ml)
+ per2 := to_int(exc / (ml-1))
+ if per2 > per then
+ one_off := -1
+ if per2 > per then
+ per := per2
+ rem := exc - per*ml - one_off
+ bump := for x from 1 to 8 do [per+(if x == ml then rem+back_off else if x == 1 then one_off else 0)]
+ bump
+ )
+ }
+ # starting x coord of the dungeon
+ max_start := {if styling.reminder_box then 95 else 70}
+ # placement of room textboxes
+ # array of where walls are placed in a lane
+ span_array := {
+ if input == 0 then input := 1
+ if input > max_level() then input := max_level()
+ # default numbers
+ lanes := line_lanes(input)
+ array := default_w[lanes]
+ # if widths are edited
+ if not use_fast() and styling["level_"+input+"_custom_widths"] != "" then (
+ shift := split_text(styling["level_"+input+"_custom_widths"]+",,,,", match:",")
+ # width of room 1
+ l1 := to_int(if shift[0] != "" then shift[0] else array[1])
+ # width of room 2
+ l2 := to_int(if shift[1] != "" then shift[1] else array[2])
+ array := [0, l1, min(l1+l2,max_len), max_len]
+ ) else (
+ array := [0, array[0]+array[1], array[0]+array[1]+array[2], max_len]
+ )
+ array
+ }
+ default_w := [
+ [0, 0, 0, 0],
+ [0, 16, 0, 0],
+ [0, 8, 8, 0],
+ [0, 5, 6, 5]
+ ]
+ long_box := {
+ if y < 2 or y > max_level()
+ then false
+ else contains(styling["level_"+y+"_long_rooms"], match:to_string(x))
+ }
+ dead_box := {
+ if y > max_level()+1
+ then false
+ else (contains(styling["level_"+(y)+"_dead_ends"], match:to_string(x)))
+ }
+ box_x := {
+ span := span_array(y)
+ if x >= length(span) or span[x-1] == 16 then 0 else 20*span[x-1]+29
+ }
+ box_y := {
+ if y == 1 then max_start()
+ else max_start()+line_offset(y-1)
+ }
+ box_w := {
+ if y > max_level() then 0 else (
+ maxy := y
+ if text and styling["level_"+(y+1)+"_long_rooms"] or else "" != "" then maxy := box_max_y(x:x, y:y)
+ blocks := max_len
+ for n from y to maxy do (
+ span := span_array(n)
+ blocks := min(blocks, span[x] - span[x-1])
+ "filler"
+ )
+ max(0,20*blocks-3)
+ )
+ }@(text:true)
+ box_max_y := {
+ multi := 1
+ maxi := for n from y+1 to 7 do (
+ if not long_box(x:x, y:n) then multi := 0;
+ multi
+ )
+ y+maxi
+ }
+ box_h := {
+ multi := 1
+ if long_box(x:x, y:y) then multi := 0
+ h := for n from y to 7 do (
+ if n > y and not long_box(x:x, y:n) then multi := 0
+ if multi == 0 then n := 7
+ multi*line_height(n)
+ )
+ h
+ }
+ # the default arrow directions
+ arrow_to_room := {
+ span := span_array(y)
+ span2 := span_array(y+1)
+ interface := sort_list(join_arrays(a1:span, a2:span2), remove_duplicates:true)
+ if x >= length(interface)
+ then 0
+ else (
+ point := 0.5*(interface[x]+interface[x-1])
+ if point >= span2[2]
+ then 3
+ else if point >= span2[1]
+ then 2
+ else 1
+ )
+ }
+ arrow_direction := {
+ x := arrow_to_room(x:x, y:y)
+ if not styling.arrows
+ then "none"
+ else if long_box(x:x, y:y+1)
+ then "none" ## Oubliette room
+ else if dead_box(x:x, y:y)
+ then "none" # this is a dead end, don't show an arrow
+ else if dead_box(x:x, y:y+1)
+ then "updown" # the next room is a dead end, allow back out
+ else "down"
+ }
+ door_direction := {
+ lanes := line_lanes(y)
+ if not styling.arrows then "none"
+ else if x == 4 then # right wall arrow out
+ if lanes == 1 and contains(styling["level_"+y+"_exits"], match:"2") then "right"
+ else if lanes == 2 and contains(styling["level_"+y+"_exits"], match:"3") then "right"
+ else if lanes == 3 and contains(styling["level_"+y+"_exits"], match:"4") then "right"
+ else "none"
+ else if not contains(styling["level_"+y+"_exits"], match:x) then "none"
+ else if x == 1 then "left"
+ else if x > line_lanes(y) then "right"
+ else if styling["level_"+y+"_dead_ends"] != "" then (
+ ldead := dead_box(x:x-1, y:y)
+ rdead := dead_box(x:x, y:y)
+ if ldead == rdead then "leftright"
+ else if ldead then "right"
+ else "left"
+ )
+ else "leftright"
+ }
+ dir_map := [
+ [168, -10, -10, -10, -10],
+ [88, 248, -10, -10, -10],
+ [64, 168, 272, -10, -10],
+ [58, 138, 198, 278, -10]
+ ]
+ arrow_x := {
+ arr := sort_list(join_arrays(a1:span_array(y), a2:span_array(y+1)), remove_duplicates:true)
+ if y >= max_level() or x >= length(arr)
+ then 0
+ else if use_fast() then (
+ openings := length(arr)-1
+ dir_map[openings-1][x-1]+10
+ )
+ else ((arr[x-1]+arr[x])*10)+18+door_offset(x:x, y:y)
+ }
+ arrow_y := {
+ max_start() + line_offset(y) - 10
+ }
+ door_x := {
+ if y > max_level() or door_direction(x:x, y:y) == "none"
+ then 0
+ else (
+ lanes := line_lanes(y)
+ span := span_array(y)
+ if x == 4 then 20*max_len + 17
+ else if x > lanes then 0
+ else span[x-1]*20 + 17
+ )
+ }
+ door_y := {
+ arrow_y(y:y-1) + (0.5*line_height(y))
+ }
+
+
+ # make sure span_arrays are min length 3, fill extras with max len
+ walls_image_slow := {
+ s := ""
+ lanes := dungeon_lanes(s:s)
+ walls := dungeon_walls(s:s)
+ dungeon := masked_blend(dark:walls, light:white, mask:lanes)
+
+ if styling.advanced_scripts == "yes" then (
+ # change the dark blue to white
+ open_mask := recolor_image(dungeon, color:rgb(180,0,0))
+ # make pure bw version of image
+ pure_mask := recolor_image(dungeon, color:rgb(100,255,0))
+ # shadows on white
+ shad := masked_blend(dark:white, light:black, mask:open_mask)
+ # dungeon over shadows
+ dungeon := masked_blend(dark:shad, light:dungeon, mask:pure_mask)
+ # color the dungeon
+ dungeon := masked_blend(dark:black, light:walls_background(card.card_color), mask:pure_mask)
+ # apply highlight/shadow
+ if s == "" then dungeon := add_texture(dungeon, lanes:lanes, walls:walls)
+ # and finally mask for transparency
+ dungeon := set_mask(image:dungeon, mask:open_mask)
+ )
+
+ dungeon
+ }
+ add_texture := {
+ highlight_mask := masked_blend(dark:masked_blend(dark:white, light:"new_masks/light_lines.png", mask:lanes), light:white, mask:walls)
+ shadow_mask := masked_blend(dark:masked_blend(dark:white, light:"new_masks/dark_lines.png", mask:lanes), light:white, mask:walls)
+ dungeon := masked_blend(light:dungeon, dark:light_background(card.card_color), mask:highlight_mask)
+ dungeon := masked_blend(light:dungeon, dark:dark_background(card.card_color), mask:shadow_mask)
+ dungeon
+ }
+ # make horizontal mask
+ dungeon_lanes := {
+ ml := max_level()
+ lanes := add_level_lanes(img:black, line:0, s:s)
+ if ml >= 1 then lanes := add_level_lanes(img:lanes, line:1, s:s)
+ if ml >= 2 then lanes := add_level_lanes(img:lanes, line:2, s:s)
+ if ml >= 3 then lanes := add_level_lanes(img:lanes, line:3, s:s)
+ if ml >= 4 then lanes := add_level_lanes(img:lanes, line:4, s:s)
+ if ml >= 5 then lanes := add_level_lanes(img:lanes, line:5, s:s)
+ if ml >= 6 then lanes := add_level_lanes(img:lanes, line:6, s:s)
+ if ml >= 7 then lanes := add_level_lanes(img:lanes, line:7, s:s)
+ lanes
+ }
+ add_level_lanes := {
+ ml := max_level()
+ walls := sort_list(join_arrays(a1:span_array(line), a2:span_array(line+1)), remove_duplicates:true)
+ len := length(walls)
+ y := 380-line_offset(line)
+ baseline := wall_crop("new_masks/"+s+"lane.png", offset:y)
+ img := masked_blend(dark:img, light:white, mask:baseline)
+ # skip dead ends, open oubliettes, open doors on rest
+ if len >= 2 and not contains(styling["level_"+line+"_dead_ends"], match:"1") then
+ if line > 0 and ml <= 6 and contains(styling["level_"+(line+1)+"_long_rooms"], match:"1")
+ then img := add_long_room(img:img, x:1, y:line, e:walls[1], s:s)
+ else img := add_door(img:img, x:1, y:line, c:0.5*(walls[0]+walls[1]), s:s, w:(walls[1]-walls[0]))
+ if len >= 3 and not contains(styling["level_"+line+"_dead_ends"], match:"2") then
+ if line > 0 and ml <= 6 and contains(styling["level_"+(line+1)+"_long_rooms"], match:"2")
+ then img := add_long_room(img:img, x:2, y:line, e:walls[2], s:s)
+ else img := add_door(img:img, x:2, y:line, c:0.5*(walls[1]+walls[2]), s:s, w:(walls[2]-walls[1]))
+ if len >= 4 and not contains(styling["level_"+line+"_dead_ends"], match:"3") then
+ if line > 0 and ml <= 6 and contains(styling["level_"+(line+1)+"_long_rooms"], match:"3")
+ then img := add_long_room(img:img, x:3, y:line, e:walls[3], s:s)
+ else img := add_door(img:img, x:3, y:line, c:0.5*(walls[2]+walls[3]), s:s, w:(walls[3]-walls[2]))
+ if len >= 5 and not contains(styling["level_"+line+"_dead_ends"], match:"4") then
+ if line > 0 and ml <= 6 and contains(styling["level_"+(line+1)+"_long_rooms"], match:"4")
+ then img := add_long_room(img:img, x:4, y:line, e:walls[4], s:s)
+ else img := add_door(img:img, x:4, y:line, c:0.5*(walls[3]+walls[4]), s:s, w:(walls[4]-walls[3]))
+ if len >= 6 and not contains(styling["level_"+line+"_dead_ends"], match:"5") then
+ if line > 0 and ml <= 6 and contains(styling["level_"+(line+1)+"_long_rooms"], match:"5")
+ then img := add_long_room(img:img, x:5, y:line, e:walls[5], s:s)
+ else img := add_door(img:img, x:5, y:line, c:0.5*(walls[4]+walls[5]), s:s, w:(walls[5]-walls[4]))
+ img
+ }
+ add_long_room := {
+ blocks := to_string(round_up(box_w(x:x, y:y, text:false)/20))
+ x:= 20*(max_len - e)
+ out := img
+ if blocks > 0 then (
+ mask_img := wall_crop("new_masks/"+s+"lane_mask_"+blocks+".png", offset:380-line_offset(y), x:x)
+ lane_img := wall_crop("new_masks/"+s+"lane_"+blocks+".png", offset:380-line_offset(y), x:x)
+ out := masked_blend(dark:img, light:lane_img, mask:mask_img)
+ )
+ out
+ }
+ door_offset := {
+ if y == 0 or styling["level_"+y+"_door_offsets"] == "" then 0 else to_int(pull_comma_array(styling["level_"+y+"_door_offsets"], cell:x-1, end:false, default:0))
+ }
+ add_door := {
+ x := 20*(max_len - c)-22-door_offset(x:x, y:y)
+ le := if w == 1 then "_mini" else if w == 2 then "_short" else ""
+ mask_img := wall_crop("new_masks/"+s+"door"+le+"_mask.png", offset:380-line_offset(y), x:x)
+ door_img := wall_crop("new_masks/"+s+"door"+le+".png", offset:380-line_offset(y), x:x)
+ masked_blend(dark:img, light:door_img, mask:mask_img)
+ }
+ # make vertical mask
+ dungeon_walls := {
+ ml := max_level()
+ walls := add_level_walls(img:black, line:1, s:s)
+ if ml >= 2 then walls := add_level_walls(img:walls, line:2, s:s)
+ if ml >= 3 then walls := add_level_walls(img:walls, line:3, s:s)
+ if ml >= 4 then walls := add_level_walls(img:walls, line:4, s:s)
+ if ml >= 5 then walls := add_level_walls(img:walls, line:5, s:s)
+ if ml >= 6 then walls := add_level_walls(img:walls, line:6, s:s)
+ if ml >= 7 then walls := add_level_walls(img:walls, line:7, s:s)
+ walls
+ }
+ add_level_walls := {
+ walls := sort_list(span_array(line), remove_duplicates:true)
+ blocks := to_string(line_height(line) / 20)
+ exits := if line == 0 or line > max_level() then 0 else styling["level_"+line+"_exits"]
+ wall := "new_masks/"+s+"wall_"+blocks+".png"
+ door := "new_masks/"+s+"wall_"+blocks+"o.png"
+ len := length(walls)
+ y := 380-line_offset(line)
+ if len > 0 then (
+ x := 320 - 20*walls[0]
+ slug := if contains(exits, match:"1") then door else wall
+ mask_img := wall_crop(slug, offset:y, x:x)
+ img := masked_blend(dark:img, light:white, mask:mask_img)
+ )
+ if len > 1 then (
+ x := 320 - 20*walls[1]
+ slug := if contains(exits, match:"2") then door else wall
+ mask_img := wall_crop(slug, offset:y, x:x)
+ img := masked_blend(dark:img, light:white, mask:mask_img)
+ )
+ if len > 2 then (
+ x := 320 - 20*walls[2]
+ slug := if contains(exits, match:"3") then door else wall
+ mask_img := wall_crop(slug, offset:y, x:x)
+ img := masked_blend(dark:img, light:white, mask:mask_img)
+ )
+ if len > 3 then (
+ x := 320 - 20*walls[3]
+ slug := if contains(exits, match:"4") then door else wall
+ mask_img := wall_crop(slug, offset:y, x:x)
+ img := masked_blend(dark:img, light:white, mask:mask_img)
+ )
+ img
+ }
+
+ use_fast := {styling.advanced_scripts == "no"}
+ walls_image := {if use_fast() then walls_image_fast(input) else walls_image_slow(input)}
+ walls_image_split := {
+ ## for loop doesn't work or images :(
+ ml := max_level()
+ folder := if input == "shadow/" then "shadow/" else ""
+ walls := black
+ lanes := lane_mask(folder, img:black, line:to_int(0))
+ lanes := lane_mask(folder, img:lanes, line:to_int(1))
+ if ml >= 1 then lanes := lane_mask(folder, img:lanes, line:2)
+ if ml >= 2 then lanes := lane_mask(folder, img:lanes, line:3)
+ if ml >= 3 then lanes := lane_mask(folder, img:lanes, line:4)
+ if ml >= 4 then lanes := lane_mask(folder, img:lanes, line:5)
+ if ml >= 5 then lanes := lane_mask(folder, img:lanes, line:6)
+ if ml >= 6 then lanes := lane_mask(folder, img:lanes, line:7)
+ if ml >= 7 then lanes := lane_mask(folder, img:lanes, line:8)
+ if ml >= 1 then walls := wall_mask(folder, img:walls, line:1)
+ if ml >= 2 then walls := wall_mask(folder, img:walls, line:2)
+ if ml >= 3 then walls := wall_mask(folder, img:walls, line:3)
+ if ml >= 4 then walls := wall_mask(folder, img:walls, line:4)
+ if ml >= 5 then walls := wall_mask(folder, img:walls, line:5)
+ if ml >= 6 then walls := wall_mask(folder, img:walls, line:6)
+ if ml >= 7 then walls := wall_mask(folder, img:walls, line:7)
+ if ml >= 1 then walls := door_mask(folder, img:walls, line:1)
+ if ml >= 2 then walls := door_mask(folder, img:walls, line:2)
+ if ml >= 3 then walls := door_mask(folder, img:walls, line:3)
+ if ml >= 4 then walls := door_mask(folder, img:walls, line:4)
+ if ml >= 5 then walls := door_mask(folder, img:walls, line:5)
+ if ml >= 6 then walls := door_mask(folder, img:walls, line:6)
+ if ml >= 7 then walls := door_mask(folder, img:walls, line:7)
+ if ml >= 0 then lanes := dead_mask(folder, img:lanes, line:0)
+ if ml >= 1 then lanes := dead_mask(folder, img:lanes, line:1)
+ if ml >= 2 then lanes := dead_mask(folder, img:lanes, line:2)
+ if ml >= 3 then lanes := dead_mask(folder, img:lanes, line:3)
+ if ml >= 4 then lanes := dead_mask(folder, img:lanes, line:4)
+ if ml >= 5 then lanes := dead_mask(folder, img:lanes, line:5)
+ if ml >= 6 then lanes := dead_mask(folder, img:lanes, line:6)
+ if ml >= 7 then lanes := dead_mask(folder, img:lanes, line:7)
+
+ dungeon := masked_blend(dark:walls, light:white, mask:lanes)
+ dungeon_img := black
+
+ if input != "shadow/" then (
+ dungeon_img := masked_blend(dark:black, light:walls_background(card.card_color), mask:dungeon)
+ dungeon_img := add_texture(dungeon:dungeon_img, lanes:lanes, walls:walls)
+ )
+ dungeon_img := set_mask(image:dungeon_img, mask:dungeon)
+
+ [dungeon_img, dungeon, walls, lanes]
+ }
+ walls_image_fast := {
+ walls_image_split(input)[cell]
+ }@(cell:0)
+ unique_elements := {
+ e1 := []
+ e2 := []
+ e1 := e1 + for x from 0 to length(of)-1 do if ar_position(of:of[x], in:from) == -1 then [of[x]]
+ }
+ dead_mask := {
+ lanes := line_lanes(line)
+ next := line_lanes(line+1)
+ base := lane_mask_base[lanes][next]
+ rooms := sort_list(break_text(styling["level_"+line+"_dead_ends"], match:"[0-9]"))
+ longs := if line > 1 and line < 7 then break_text(styling["level_"+(line+1)+"_long_rooms"], match:"[0-9]") else ["no"]
+ rooms := unique_elements(of:rooms, from:longs)
+ tail := for x from 0 to length(rooms)-1 do (
+ if rooms[x] == "1" and ar_position(of:"1", in:longs) == -1
+ then "e1"
+ else if rooms[x] == "2" and base > 1
+ then "e2"
+ else if rooms[x] == "3" and base > 2
+ then "e3"
+ else if rooms[x] == "4" and base > 3
+ then "e4"
+ else ""
+ )
+ file := input + "lane_masks/" + base + tail + ".png"
+ if tail == "" or tail == nil
+ then img
+ else masked_blend(dark:img, light:"walls.png" mask:wall_crop(file, offset:380-line_offset(line)))
+ }
+ lane_mask := {
+ lanes := line_lanes(line)
+ next := line_lanes(line+1)
+ base := lane_mask_base[lanes][next]
+ file := input+"lane_masks/"+base
+ if line > 0 and line < 7 and lanes > 1 and lanes == next then file := file + long_map(long_lanes(line))
+ mask_img := wall_crop(file+".png", offset:380-line_offset(line))
+ masked_blend(dark:img, light:"walls.png", mask:mask_img)
+ }
+ wall_mask := {
+ base := line_lanes(line)
+ blocks := line_height(line) / 20
+ if line > max_level() then blocks := line_height(line-1) / 20
+ mask_img := wall_crop(input+"wall_masks/"+base+"_"+blocks+".png", offset:380-line_offset(line))
+ masked_blend(dark:img, light:"walls.png", mask:mask_img)
+ }
+ door_mask := {
+ exits := sort_text(filter_text(styling["level_"+line+"_exits"], match:"[0-9]"))
+ verify := line_lanes(line) + "_" + exits
+ off := 380 - line_offset(line) + (0.5*line_height(line)) - 20
+ if door_check(verify) or else false
+ then masked_blend(dark:img, light:"base.png", mask:wall_crop(input+"door_masks/"+verify+".png", offset:off))
+ else img
+ }
+
+ long_lanes := {
+ if input > 7 then 0 else (
+ line := to_int(input)+1
+ long := sort_list(break_text(styling["level_"+line+"_long_rooms"], match:"[123]"), remove_duplicates:true)
+ len := length(long)
+ if len == 0 then "0" else for x from 0 to length(long)-1 do long[x]
+ )
+ }
+ lane_mask_base := [
+ [""],
+ ["", "1", "2", "3"],
+ ["", "2", "2", "4"],
+ ["", "3", "4", "3"]
+ ]
+ long_map := {
+ [
+ "": "",
+ "0": "",
+ "1": "d1",
+ "2": "d2",
+ "3": "d3",
+ "12": "d1d2",
+ "13": "d1d3",
+ "23": "d2d3",
+ "123": "d1d2d3"
+ ][input]
+ }
+
+ door_check := {
+ [
+ "1_1": true,
+ "1_2": true,
+ "1_12": true,
+ "2_1": true,
+ "2_2": true,
+ "2_3": true,
+ "2_12": true,
+ "2_13": true,
+ "2_23": true,
+ "2_123": true,
+ "3_1": true,
+ "3_2": true,
+ "3_3": true,
+ "3_4": true,
+ "3_12": true,
+ "3_13": true,
+ "3_14": true,
+ "3_23": true,
+ "3_24": true,
+ "3_34": true,
+ "3_123": true,
+ "3_124": true,
+ "3_134": true,
+ "3_234": true,
+ "3_1234": true
+ ][input]
+ }
+
############################################################## 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
+ name: Click here for help!
+ choice: Click here for help!
+ choice: Room counts -
+ choice: Put the number of rooms in each level, separated by commas, "1,2,3,1"
+ choice: Room heights -
+ choice: Room heights try to automate but can be modified
+ choice: Put the number of blocks each level is, with commas, "5,5,4,5,"
+ choice: Or leave a spot blank to keep the default number. 19 blocks total.
+ choice: If the maze doesn't reach the bottom, make sure this ends in a comma
+ choice: Long rooms -
+ choice: List room numbers to make them continations of the room above. "12"
+ choice: These can be as long as you want. Level above has to be the same number of rooms.
+ choice: Exits -
+ choice: These open vertical doors in that level of the dungeon in the numbered wall
+ choice: The left border is 1, next wall is 2, and so on
+ choice: So to make a two room level connect, type "2" here
+styling field:
+ type: text
+ name: room counts
+ description: The number of rooms on each level, 1, 2, or 3.
+styling field:
+ type: text
+ name: room heights
+ description: The height in blocks of each level. Min 2, max 15, total 19.
+styling field:
+ type: boolean
+ name: reminder box
+ initial: no
+ description: Move the dungeon to make room for reminder text, like The Undercity?
styling field:
type: text
name: font size
- description: Font size for the rooms. Default is 11.
+ description: Font size for the rooms. Default is 12.
+styling field:
+ type: boolean
+ name: custom floor
+ initial: no
+ description: Upload a custom image to replace the default floor. Clickable on the outside edges of the border walls.
+styling field:
+ type: boolean
+ name: show grid
+ description: Show the dungeon gridlines?
+styling field:
+ type: text
+ name: level 2 long rooms
+ description: Make these rooms continue from the last level, like Oubliette.
+styling field:
+ type: text
+ name: level 3 long rooms
+ description: Make these rooms continue from the last level, like Oubliette.
+styling field:
+ type: text
+ name: level 4 long rooms
+ description: Make these rooms continue from the last level, like Oubliette.
+styling field:
+ type: text
+ name: level 5 long rooms
+ description: Make these rooms continue from the last level, like Oubliette.
+styling field:
+ type: text
+ name: level 6 long rooms
+ description: Make these rooms continue from the last level, like Oubliette.
+styling field:
+ type: text
+ name: level 7 long rooms
+ description: Make these rooms continue from the last level, like Oubliette.
+styling field:
+ type: info
+ name: Dead Ends
+ description: Dead Ends
+styling field:
+ type: text
+ name: level 0 dead ends
+ description: List of doors out of this level to close, eg "12"
+styling field:
+ type: text
+ name: level 1 dead ends
+ description: List of doors out of this level to close, eg "12"
+styling field:
+ type: text
+ name: level 2 dead ends
+ description: List of doors out of this level to close, eg "12"
+styling field:
+ type: text
+ name: level 3 dead ends
+ description: List of doors out of this level to close, eg "12"
+styling field:
+ type: text
+ name: level 4 dead ends
+ description: List of doors out of this level to close, eg "12"
+styling field:
+ type: text
+ name: level 5 dead ends
+ description: List of doors out of this level to close, eg "12"
+styling field:
+ type: text
+ name: level 6 dead ends
+ description: List of doors out of this level to close, eg "12"
+styling field:
+ type: text
+ name: level 7 dead ends
+ description: List of doors out of this level to close, eg "12"
+styling field:
+ type: info
+ name: Exits
+ description: Exits
+styling field:
+ type: text
+ name: level 1 exits
+ description: Walls to put vertical doors on.
+styling field:
+ type: text
+ name: level 2 exits
+ description: Walls to put vertical doors on.
+styling field:
+ type: text
+ name: level 3 exits
+ description: Walls to put vertical doors on.
+styling field:
+ type: text
+ name: level 4 exits
+ description: Walls to put vertical doors on.
+styling field:
+ type: text
+ name: level 5 exits
+ description: Walls to put vertical doors on.
+styling field:
+ type: text
+ name: level 6 exits
+ description: Walls to put vertical doors on.
+styling field:
+ type: text
+ name: level 7 exits
+ description: Walls to put vertical doors on.
+styling field:
+ type: text
+ name: arrow replacement folder
+ description: Change the arrows to use arrows from this folder magic-mainframe-extras. named arrowU.png for U, D, UD, L, R, and LR
+styling field:
+ type: text
+ name: custom symbol one
+ description: Use this image in magic-mainframe-extras as custom symbol one
+styling field:
+ type: text
+ name: custom symbol two
+ description: Use this image in magic-mainframe-extras as custom symbol two
+styling field:
+ type: boolean
+ name: arrows
+ description: Use arrows between rooms
+styling field:
+ type: choice
+ name: advanced help
+ choice: These options below may cause editing the template to be slower
+ choice: Use the setting below to toggle if they apply or not
+ choice: Preview mode gives a faster black and white version
+ choice: You can fill in the numbers and then turn it on after
+ choice: Custom widths -
+ choice: Set rooms in a level's width, separated by commas, "10,6,"
+ choice: Door offsets -
+ choice: Move door openings on a level X pixels right, separated by commas, "10,0,-10"
+ choice: Negative numbers move left
+styling field:
+ type: choice
+ name: advanced scripts
+ choice: no
+ choice: preview
+ choice: yes
+ description: Toggle Custom Widths and Door Offsets
+styling field:
+ type: text
+ name: level 1 custom widths
+ description: Make rooms a different number of blocks wide, for example "10,6," for a double sized room
+styling field:
+ type: text
+ name: level 2 custom widths
+ description: Make rooms a different number of blocks wide, for example "10,6," for a double sized room
+styling field:
+ type: text
+ name: level 3 custom widths
+ description: Make rooms a different number of blocks wide, for example "10,6," for a double sized room
+styling field:
+ type: text
+ name: level 4 custom widths
+ description: Make rooms a different number of blocks wide, for example "10,6," for a double sized room
+styling field:
+ type: text
+ name: level 5 custom widths
+ description: Make rooms a different number of blocks wide, for example "10,6," for a double sized room
+styling field:
+ type: text
+ name: level 6 custom widths
+ description: Make rooms a different number of blocks wide, for example "10,6," for a double sized room
+styling field:
+ type: text
+ name: level 7 custom widths
+ description: Make rooms a different number of blocks wide, for example "10,6," for a double sized room
+styling field:
+ type: info
+ name: Door offsets
+ description: Door offsets
+styling field:
+ type: text
+ name: level 1 door offsets
+ description: Move doors X pixels right (use negative for left). A block is 20px
+styling field:
+ type: text
+ name: level 2 door offsets
+ description: Move doors X pixels right (use negative for left). A block is 20px
+styling field:
+ type: text
+ name: level 3 door offsets
+ description: Move doors X pixels right (use negative for left). A block is 20px
+styling field:
+ type: text
+ name: level 4 door offsets
+ description: Move doors X pixels right (use negative for left). A block is 20px
+styling field:
+ type: text
+ name: level 5 door offsets
+ description: Move doors X pixels right (use negative for left). A block is 20px
+styling field:
+ type: text
+ name: level 6 door offsets
+ description: Move doors X pixels right (use negative for left). A block is 20px
+styling field:
+ type: text
+ name: level 7 door offsets
+ description: Move doors X pixels right (use negative for left). A block is 20px
styling field:
type: boolean
name: remove from autocount
@@ -198,7 +866,13 @@ styling field:
choice: modern
choice: old
choice: diagonal T
-
+styling style:
+ advanced scripts:
+ render style: both
+ choice images:
+ no: bool_no.png
+ preview: preview.png
+ yes: bool_yes.png
############################################################## Card fields
card style:
border color:
@@ -213,430 +887,549 @@ card style:
bottom width: 18
z index: 4
mask: border_mask.png
+ card color:
+ left: 0
+ top: 0
+ width: 375
+ height: 523
+ z index: 0
+ render style: image
+ popup style: in place
+ image: {card_background()}
name:
left: 30
- top: 26
+ top: 24
width: 315
height: {28 - (0.5 * shrink_name())}
alignment: middle center
padding bottom: -2
- padding top: 2
+ padding top: 3
z index: 5
font:
name: Beleren Small Caps Bold
size: { 17 - shrink_name()}
color: rgb(222,222,222)
############################# Image
+ image:
+ left: 22
+ top: {max_start()-5}
+ width: {if styling.custom_floor then 331 else 0}
+ height: 391
+ z index: 0
############################# Textboxes
rule text:
- left: 33
- top: 79
- width: 310
- height: {box_height(0)}
+ left: {box_x(x:1, y:1)}
+ top: {box_y(x:1, y:1)}
+ width: {box_w(x:1, y:1)}
+ height: {box_h(x:1, y:1)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:2, y:1)}
+ top: {box_y(x:2, y:1)}
+ width: {box_w(x:2, y:1)}
+ height: {box_h(x:2, y:1)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
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
+ z index: 5
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:3, y:1)}
+ top: {box_y(x:3, y:1)}
+ width: {box_w(x:3, y:1)}
+ height: {box_h(x:3, y:1)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:1, y:2)}
+ top: {box_y(x:1, y:2)}
+ width: {box_w(x:1, y:2)}
+ height: {box_h(x:1, y:2)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:2, y:2)}
+ top: {box_y(x:2, y:2)}
+ width: {box_w(x:2, y:2)}
+ height: {box_h(x:2, y:2)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:3, y:2)}
+ top: {box_y(x:3, y:2)}
+ width: {box_w(x:3, y:2)}
+ height: {box_h(x:3, y:2)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:1, y:3)}
+ top: {box_y(x:1, y:3)}
+ width: {box_w(x:1, y:3)}
+ height: {box_h(x:1, y:3)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:2, y:3)}
+ top: {box_y(x:2, y:3)}
+ width: {box_w(x:2, y:3)}
+ height: {box_h(x:2, y:3)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:3, y:3)}
+ top: {box_y(x:3, y:3)}
+ width: {box_w(x:3, y:3)}
+ height: {box_h(x:3, y:3)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:1, y:4)}
+ top: {box_y(x:1, y:4)}
+ width: {box_w(x:1, y:4)}
+ height: {box_h(x:1, y:4)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:2, y:4)}
+ top: {box_y(x:2, y:4)}
+ width: {box_w(x:2, y:4)}
+ height: {box_h(x:2, y:4)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:3, y:4)}
+ top: {box_y(x:3, y:4)}
+ width: {box_w(x:3, y:4)}
+ height: {box_h(x:3, y:4)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:1, y:5)}
+ top: {box_y(x:1, y:5)}
+ width: {box_w(x:1, y:5)}
+ height: {box_h(x:1, y:5)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:2, y:5)}
+ top: {box_y(x:2, y:5)}
+ width: {box_w(x:2, y:5)}
+ height: {box_h(x:2, y:5)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:3, y:5)}
+ top: {box_y(x:3, y:5)}
+ width: {box_w(x:3, y:5)}
+ height: {box_h(x:3, y:5)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
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)}
+ left: {box_x(x:1, y:6)}
+ top: {box_y(x:1, y:6)}
+ width: {box_w(x:1, y:6)}
+ height: {box_h(x:1, y:6)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
+ 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 16 text:
+ left: {box_x(x:2, y:6)}
+ top: {box_y(x:2, y:6)}
+ width: {box_w(x:2, y:6)}
+ height: {box_h(x:2, y:6)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: {font_color()}
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 5
+ padding top: 3
+ padding bottom: 2
+ padding left: 5
+ padding right: 5
+ 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 17 text:
+ left: {box_x(x:3, y:6)}
+ top: {box_y(x:3, y:6)}
+ width: {box_w(x:3, y:6)}
+ height: {box_h(x:3, y:6)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: {font_color()}
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 5
+ padding top: 3
+ padding bottom: 2
+ padding left: 5
+ padding right: 5
+ 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 18 text:
+ left: {box_x(x:1, y:7)}
+ top: {box_y(x:1, y:7)}
+ width: {box_w(x:1, y:7)}
+ height: {box_h(x:1, y:7)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: {font_color()}
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 5
+ padding top: 3
+ padding bottom: 2
+ padding left: 5
+ padding right: 5
+ 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 19 text:
+ left: {box_x(x:2, y:7)}
+ top: {box_y(x:2, y:7)}
+ width: {box_w(x:2, y:7)}
+ height: {box_h(x:2, y:7)}
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: {font_size()}
+ scale down to: 6
+ color: {font_color()}
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: {font_size()}
+ scale down to: 6
+ alignment: middle center
+ z index: 5
+ padding top: 3
+ padding bottom: 2
+ padding left: 5
+ padding right: 5
line height hard: 0.9
line height line: 0.9
line height soft: 0.9
@@ -644,26 +1437,26 @@ card style:
line height line max: 0.9
rule text 2:
- left: 33
- bottom: 448
- width: 310
- height: {box_height(max_level()-1)}
+ left: {box_x(x:3, y:7)}
+ top: {box_y(x:3, y:7)}
+ width: {box_w(x:3, y:7)}
+ height: {box_h(x:3, y:7)}
font:
name: MPlantin
italic name: MPlantin-Italic
size: {font_size()}
scale down to: 6
- color: black
+ color: {font_color()}
symbol font:
name: { styling.text_box_mana_symbols }
size: {font_size()}
scale down to: 6
alignment: middle center
- z index: 2
- padding top: 2
+ z index: 5
+ padding top: 3
padding bottom: 2
- padding left: 4
- padding right: 6
+ padding left: 5
+ padding right: 5
line height hard: 0.9
line height line: 0.9
line height soft: 0.9
@@ -683,6 +1476,16 @@ card style:
color: white
weight: bold
############################# Copyright stuff
+ illustrator:
+ left: { 44 + card_style.set_code.content_width }
+ top: 497.5
+ width: 200
+ height: 10
+ z index: 4
+ font:
+ name: Beleren Small Caps Bold
+ size: 7.25
+ color: white
copyright:
right: 350
top: { if card.pt != "" then 500 else 488 }
@@ -707,68 +1510,27 @@ extra card field:
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
+ type: text
+ name: reminder
+ multi line: true
+ editable: true
+ save value: true
+ script: base_filter(input: value, card_name: if set.alias_as_cardname and card.alias != "" then card.alias else card.name, margin_code:"reminder")
extra card field:
type: choice
- name: hwall 2
+ name: walls
editable: false
save value: false
- choice: wall
+ script: card.card_color
extra card field:
type: choice
- name: hwall 3
+ name: texture
editable: false
save value: false
- choice: wall
+ choice: texture
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
+ name: shadows
editable: false
save value: false
choice: wall
@@ -781,10 +1543,835 @@ extra card field:
show statistics: false
extra card field:
type: choice
- name: border
+ name: artist arrow
editable: false
save value: false
- choice: border
+ choice: white
+extra card field:
+ type: choice
+ name: grid
+ editable: false
+ save value: false
+ script: card.card_color
+extra card field:
+ type: choice
+ name: floor
+ editable: false
+ save value: false
+ choice: floor
+
+extra card field:
+ type: choice
+ name: arrow 11
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:1, x:1)
+extra card field:
+ type: choice
+ name: arrow 12
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:1, x:2)
+extra card field:
+ type: choice
+ name: arrow 13
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:1, x:3)
+extra card field:
+ type: choice
+ name: arrow 14
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:1, x:4)
+extra card field:
+ type: choice
+ name: arrow 15
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:1, x:5)
+extra card field:
+ type: choice
+ name: wall arrow 11
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:1, x:1)
+extra card field:
+ type: choice
+ name: wall arrow 12
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:1, x:2)
+extra card field:
+ type: choice
+ name: wall arrow 13
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:1, x:3)
+extra card field:
+ type: choice
+ name: wall arrow 14
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:1, x:4)
+extra card field:
+ type: choice
+ name: arrow 21
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:2, x:1)
+extra card field:
+ type: choice
+ name: arrow 22
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:2, x:2)
+extra card field:
+ type: choice
+ name: arrow 23
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:2, x:3)
+extra card field:
+ type: choice
+ name: arrow 24
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:2, x:4)
+extra card field:
+ type: choice
+ name: arrow 25
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:2, x:5)
+extra card field:
+ type: choice
+ name: wall arrow 21
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:2, x:1)
+extra card field:
+ type: choice
+ name: wall arrow 22
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:2, x:2)
+extra card field:
+ type: choice
+ name: wall arrow 23
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:2, x:3)
+extra card field:
+ type: choice
+ name: wall arrow 24
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:2, x:4)
+extra card field:
+ type: choice
+ name: arrow 31
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:3, x:1)
+extra card field:
+ type: choice
+ name: arrow 32
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:3, x:2)
+extra card field:
+ type: choice
+ name: arrow 33
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:3, x:3)
+extra card field:
+ type: choice
+ name: arrow 34
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:3, x:4)
+extra card field:
+ type: choice
+ name: arrow 35
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:3, x:5)
+extra card field:
+ type: choice
+ name: wall arrow 31
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:3, x:1)
+extra card field:
+ type: choice
+ name: wall arrow 32
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:3, x:2)
+extra card field:
+ type: choice
+ name: wall arrow 33
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:3, x:3)
+extra card field:
+ type: choice
+ name: wall arrow 34
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:3, x:4)
+extra card field:
+ type: choice
+ name: arrow 41
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:4, x:1)
+extra card field:
+ type: choice
+ name: arrow 42
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:4, x:2)
+extra card field:
+ type: choice
+ name: arrow 43
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:4, x:3)
+extra card field:
+ type: choice
+ name: arrow 44
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:4, x:4)
+extra card field:
+ type: choice
+ name: arrow 45
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:4, x:5)
+extra card field:
+ type: choice
+ name: wall arrow 41
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:4, x:1)
+extra card field:
+ type: choice
+ name: wall arrow 42
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:4, x:2)
+extra card field:
+ type: choice
+ name: wall arrow 43
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:4, x:3)
+extra card field:
+ type: choice
+ name: wall arrow 44
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:4, x:4)
+extra card field:
+ type: choice
+ name: arrow 51
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:5, x:1)
+extra card field:
+ type: choice
+ name: arrow 52
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:5, x:2)
+extra card field:
+ type: choice
+ name: arrow 53
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:5, x:3)
+extra card field:
+ type: choice
+ name: arrow 54
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:5, x:4)
+extra card field:
+ type: choice
+ name: arrow 55
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:5, x:5)
+extra card field:
+ type: choice
+ name: wall arrow 51
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:5, x:1)
+extra card field:
+ type: choice
+ name: wall arrow 52
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:5, x:2)
+extra card field:
+ type: choice
+ name: wall arrow 53
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:5, x:3)
+extra card field:
+ type: choice
+ name: wall arrow 54
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:5, x:4)
+extra card field:
+ type: choice
+ name: arrow 61
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:6, x:1)
+extra card field:
+ type: choice
+ name: arrow 62
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:6, x:2)
+extra card field:
+ type: choice
+ name: arrow 63
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:6, x:3)
+extra card field:
+ type: choice
+ name: arrow 64
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:6, x:4)
+extra card field:
+ type: choice
+ name: arrow 65
+ editable: true
+ save value: true
+ choice: none
+ choice: up
+ choice: down
+ choice: updown
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: arrow_direction(y:6, x:5)
+extra card field:
+ type: choice
+ name: wall arrow 61
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:6, x:1)
+extra card field:
+ type: choice
+ name: wall arrow 62
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:6, x:2)
+extra card field:
+ type: choice
+ name: wall arrow 63
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:6, x:3)
+extra card field:
+ type: choice
+ name: wall arrow 64
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:6, x:4)
+extra card field:
+ type: choice
+ name: wall arrow 71
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:7, x:1)
+extra card field:
+ type: choice
+ name: wall arrow 72
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:7, x:2)
+extra card field:
+ type: choice
+ name: wall arrow 73
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:7, x:3)
+extra card field:
+ type: choice
+ name: wall arrow 74
+ editable: true
+ save value: true
+ choice: none
+ choice: left
+ choice: right
+ choice: leftright
+ choice: lock
+ choice: key
+ choice: custom symbol 1
+ choice: custom symbol 2
+ default: door_direction(y:7, x:4)
extra card style:
card code:
left: 24
@@ -797,6 +2384,37 @@ extra card style:
size: 7
color: white
weight: bold
+ reminder:
+ left: 24
+ top: 62
+ width: {if styling.reminder_box then 327 else 0}
+ height: 27
+ z index: 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
+ 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
+ artist arrow:
+ left: { 28 + card_style.set_code.content_width }
+ top: 500
+ width: {if styling.custom_floor then 12 else 0}
+ height: 7
+ z index: 4
+ render style: image
+ image: artist_arrow.png
auto copyright:
right: 350
top: { if card.pt != "" then 500 else 488 }
@@ -810,107 +2428,1080 @@ extra card style:
size: 7
color: white
weight: bold
- border:
- left: 0
- top: 0
- width: 375
- height: 523
+ grid:
+ left: 22
+ top: {max_start()-5}
+ width: 331
+ height: 391
+ z index: 1
+ render style: image
+ image: {grid_background()}
+ mask: {if styling.show_grid then "" else "gridmask.png"}
+ floor:
+ left: 22
+ top: {max_start()-5}
+ width: {if styling.custom_floor then 0 else 331}
+ height: 391
z index: 0
render style: image
- image: card.png
- hwall 1:
- left: 31
- top: {card_style.rule_text.bottom-4}
- width: 312
- height: 9
+ image: grid/floor.png
+ walls:
+ left: 24
+ top: {max_start()-3}
+ width: 327
+ height: 387
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
+ image: {walls_image("")}
+ z index: 4
+ shadows:
+ left: 24
+ top: {max_start()-3}
+ width: 327
+ height: 387
render style: image
- image: {pick_a_lane(1)}
+ image: {if use_fast() then walls_image("shadow/") else "corners.png"}
z index: 3
- hwall 3:
- left: 31
- top: {card_style.level_4_text.bottom-4}
- width: 312
- height: 9
+ arrow 11:
+ left: {arrow_x(x:1, y:1)}
+ top: {arrow_y(x:1, y:1)}
+ width: {if arrow_x(x:1, y:1) == 0 then 0 else 20}
+ height: 20
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
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 12:
+ left: {arrow_x(x:2, y:1)}
+ top: {arrow_y(x:2, y:1)}
+ width: {if arrow_x(x:2, y:1) == 0 then 0 else 20}
+ height: 20
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
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 13:
+ left: {arrow_x(x:3, y:1)}
+ top: {arrow_y(x:3, y:1)}
+ width: {if arrow_x(x:3, y:1) == 0 then 0 else 20}
+ height: 20
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
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 14:
+ left: {arrow_x(x:4, y:1)}
+ top: {arrow_y(x:4, y:1)}
+ width: {if arrow_x(x:4, y:1) == 0 then 0 else 20}
+ height: 20
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)}
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 15:
+ left: {arrow_x(x:5, y:1)}
+ top: {arrow_y(x:5, y:1)}
+ width: {if arrow_x(x:5, y:1) == 0 then 0 else 20}
+ height: 20
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}
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 11:
+ left: {door_x(x:1, y:1)}
+ top: {door_y(x:1, y:1)}
+ width: {if door_x(x:1, y:1) == 0 then 0 else 20}
+ height: 20
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}
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 12:
+ left: {door_x(x:2, y:1)}
+ top: {door_y(x:2, y:1)}
+ width: {if door_x(x:2, y:1) == 0 then 0 else 20}
+ height: 20
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)}
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 13:
+ left: {door_x(x:3, y:1)}
+ top: {door_y(x:3, y:1)}
+ width: {if door_x(x:3, y:1) == 0 then 0 else 20}
+ height: 20
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)}
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 14:
+ left: {door_x(x:4, y:1)}
+ top: {door_y(x:4, y:1)}
+ width: {if door_x(x:4, y:1) == 0 then 0 else 20}
+ height: 20
render style: image
- image: {pick_a_wall(5)}
- z index: 3
- visible: {max_level() >= 7}
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 21:
+ left: {arrow_x(x:1, y:2)}
+ top: {arrow_y(x:1, y:2)}
+ width: {if arrow_x(x:1, y:2) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 22:
+ left: {arrow_x(x:2, y:2)}
+ top: {arrow_y(x:2, y:2)}
+ width: {if arrow_x(x:2, y:2) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 23:
+ left: {arrow_x(x:3, y:2)}
+ top: {arrow_y(x:3, y:2)}
+ width: {if arrow_x(x:3, y:2) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 24:
+ left: {arrow_x(x:4, y:2)}
+ top: {arrow_y(x:4, y:2)}
+ width: {if arrow_x(x:4, y:2) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 25:
+ left: {arrow_x(x:5, y:2)}
+ top: {arrow_y(x:5, y:2)}
+ width: {if arrow_x(x:5, y:2) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 21:
+ left: {door_x(x:1, y:2)}
+ top: {door_y(x:1, y:2)}
+ width: {if door_x(x:1, y:2) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 22:
+ left: {door_x(x:2, y:2)}
+ top: {door_y(x:2, y:2)}
+ width: {if door_x(x:2, y:2) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 23:
+ left: {door_x(x:3, y:2)}
+ top: {door_y(x:3, y:2)}
+ width: {if door_x(x:3, y:2) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 24:
+ left: {door_x(x:4, y:2)}
+ top: {door_y(x:4, y:2)}
+ width: {if door_x(x:4, y:2) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 31:
+ left: {arrow_x(x:1, y:3)}
+ top: {arrow_y(x:1, y:3)}
+ width: {if arrow_x(x:1, y:3) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 32:
+ left: {arrow_x(x:2, y:3)}
+ top: {arrow_y(x:2, y:3)}
+ width: {if arrow_x(x:2, y:3) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 33:
+ left: {arrow_x(x:3, y:3)}
+ top: {arrow_y(x:3, y:3)}
+ width: {if arrow_x(x:3, y:3) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 34:
+ left: {arrow_x(x:4, y:3)}
+ top: {arrow_y(x:4, y:3)}
+ width: {if arrow_x(x:4, y:3) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 35:
+ left: {arrow_x(x:5, y:3)}
+ top: {arrow_y(x:5, y:3)}
+ width: {if arrow_x(x:5, y:3) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 31:
+ left: {door_x(x:1, y:3)}
+ top: {door_y(x:1, y:3)}
+ width: {if door_x(x:1, y:3) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 32:
+ left: {door_x(x:2, y:3)}
+ top: {door_y(x:2, y:3)}
+ width: {if door_x(x:2, y:3) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 33:
+ left: {door_x(x:3, y:3)}
+ top: {door_y(x:3, y:3)}
+ width: {if door_x(x:3, y:3) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 34:
+ left: {door_x(x:4, y:3)}
+ top: {door_y(x:4, y:3)}
+ width: {if door_x(x:4, y:3) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 41:
+ left: {arrow_x(x:1, y:4)}
+ top: {arrow_y(x:1, y:4)}
+ width: {if arrow_x(x:1, y:4) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 42:
+ left: {arrow_x(x:2, y:4)}
+ top: {arrow_y(x:2, y:4)}
+ width: {if arrow_x(x:2, y:4) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 43:
+ left: {arrow_x(x:3, y:4)}
+ top: {arrow_y(x:3, y:4)}
+ width: {if arrow_x(x:3, y:4) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 44:
+ left: {arrow_x(x:4, y:4)}
+ top: {arrow_y(x:4, y:4)}
+ width: {if arrow_x(x:4, y:4) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 45:
+ left: {arrow_x(x:5, y:4)}
+ top: {arrow_y(x:5, y:4)}
+ width: {if arrow_x(x:5, y:4) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 41:
+ left: {door_x(x:1, y:4)}
+ top: {door_y(x:1, y:4)}
+ width: {if door_x(x:1, y:4) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 42:
+ left: {door_x(x:2, y:4)}
+ top: {door_y(x:2, y:4)}
+ width: {if door_x(x:2, y:4) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 43:
+ left: {door_x(x:3, y:4)}
+ top: {door_y(x:3, y:4)}
+ width: {if door_x(x:3, y:4) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 44:
+ left: {door_x(x:4, y:4)}
+ top: {door_y(x:4, y:4)}
+ width: {if door_x(x:4, y:4) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 51:
+ left: {arrow_x(x:1, y:5)}
+ top: {arrow_y(x:1, y:5)}
+ width: {if arrow_x(x:1, y:5) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 52:
+ left: {arrow_x(x:2, y:5)}
+ top: {arrow_y(x:2, y:5)}
+ width: {if arrow_x(x:2, y:5) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 53:
+ left: {arrow_x(x:3, y:5)}
+ top: {arrow_y(x:3, y:5)}
+ width: {if arrow_x(x:3, y:5) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 54:
+ left: {arrow_x(x:4, y:5)}
+ top: {arrow_y(x:4, y:5)}
+ width: {if arrow_x(x:4, y:5) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 55:
+ left: {arrow_x(x:5, y:5)}
+ top: {arrow_y(x:5, y:5)}
+ width: {if arrow_x(x:5, y:5) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 51:
+ left: {door_x(x:1, y:5)}
+ top: {door_y(x:1, y:5)}
+ width: {if door_x(x:1, y:5) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 52:
+ left: {door_x(x:2, y:5)}
+ top: {door_y(x:2, y:5)}
+ width: {if door_x(x:2, y:5) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 53:
+ left: {door_x(x:3, y:5)}
+ top: {door_y(x:3, y:5)}
+ width: {if door_x(x:3, y:5) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 54:
+ left: {door_x(x:4, y:5)}
+ top: {door_y(x:4, y:5)}
+ width: {if door_x(x:4, y:5) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 61:
+ left: {arrow_x(x:1, y:6)}
+ top: {arrow_y(x:1, y:6)}
+ width: {if arrow_x(x:1, y:6) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 62:
+ left: {arrow_x(x:2, y:6)}
+ top: {arrow_y(x:2, y:6)}
+ width: {if arrow_x(x:2, y:6) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 63:
+ left: {arrow_x(x:3, y:6)}
+ top: {arrow_y(x:3, y:6)}
+ width: {if arrow_x(x:3, y:6) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 64:
+ left: {arrow_x(x:4, y:6)}
+ top: {arrow_y(x:4, y:6)}
+ width: {if arrow_x(x:4, y:6) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ arrow 65:
+ left: {arrow_x(x:5, y:6)}
+ top: {arrow_y(x:5, y:6)}
+ width: {if arrow_x(x:5, y:6) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 61:
+ left: {door_x(x:1, y:6)}
+ top: {door_y(x:1, y:6)}
+ width: {if door_x(x:1, y:6) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 62:
+ left: {door_x(x:2, y:6)}
+ top: {door_y(x:2, y:6)}
+ width: {if door_x(x:2, y:6) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 63:
+ left: {door_x(x:3, y:6)}
+ top: {door_y(x:3, y:6)}
+ width: {if door_x(x:3, y:6) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 64:
+ left: {door_x(x:4, y:6)}
+ top: {door_y(x:4, y:6)}
+ width: {if door_x(x:4, y:6) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 71:
+ left: {door_x(x:1, y:7)}
+ top: {door_y(x:1, y:7)}
+ width: {if door_x(x:1, y:7) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 72:
+ left: {door_x(x:2, y:7)}
+ top: {door_y(x:2, y:7)}
+ width: {if door_x(x:2, y:7) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 73:
+ left: {door_x(x:3, y:7)}
+ top: {door_y(x:3, y:7)}
+ width: {if door_x(x:3, y:7) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
+ wall arrow 74:
+ left: {door_x(x:4, y:7)}
+ top: {door_y(x:4, y:7)}
+ width: {if door_x(x:4, y:7) == 0 then 0 else 20}
+ height: 20
+ render style: image
+ z index: 6
+ choice images:
+ up: {custom_sym("arrowU.png")}
+ down: {custom_sym("arrowD.png")}
+ updown: {custom_sym("arrowUD.png")}
+ left: {custom_sym("arrowL.png")}
+ right: {custom_sym("arrowR.png")}
+ leftright: {custom_sym("arrowLR.png")}
+ lock: {custom_sym("lock.png")}
+ key: {custom_sym("key.png")}
+ custom_symbol_1: {custom_sym("1")}
+ custom_symbol_2: {custom_sym("2")}
diff --git a/data/magic-m15-dungeons.mse-style/test.png b/data/magic-m15-dungeons.mse-style/test.png
new file mode 100644
index 000000000..b3ae0fbb7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/test.png differ
diff --git a/data/magic-m15-dungeons.mse-style/ucard.png b/data/magic-m15-dungeons.mse-style/ucard.png
new file mode 100644
index 000000000..576e23cd9
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/ucard.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_10.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_10.png
new file mode 100644
index 000000000..7ce5a3b57
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_10.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_11.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_11.png
new file mode 100644
index 000000000..9eb2c46fd
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_11.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_12.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_12.png
new file mode 100644
index 000000000..b0a57412a
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_13.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_13.png
new file mode 100644
index 000000000..843dbcc7f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_14.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_14.png
new file mode 100644
index 000000000..ed5be5496
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_14.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_15.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_15.png
new file mode 100644
index 000000000..9c9ad6758
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_15.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_2.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_2.png
new file mode 100644
index 000000000..047d0e126
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_3.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_3.png
new file mode 100644
index 000000000..09677595f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_4.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_4.png
new file mode 100644
index 000000000..da3686e6b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_5.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_5.png
new file mode 100644
index 000000000..f774a9c5b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_5.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_6.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_6.png
new file mode 100644
index 000000000..df4b14545
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_6.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_7.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_7.png
new file mode 100644
index 000000000..19eb5a93d
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_7.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_8.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_8.png
new file mode 100644
index 000000000..55e9151a3
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_8.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/1_9.png b/data/magic-m15-dungeons.mse-style/wall_masks/1_9.png
new file mode 100644
index 000000000..4c8503159
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/1_9.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_10.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_10.png
new file mode 100644
index 000000000..d9111313b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_10.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_11.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_11.png
new file mode 100644
index 000000000..3a438ad45
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_11.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_12.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_12.png
new file mode 100644
index 000000000..9c5f781a6
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_13.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_13.png
new file mode 100644
index 000000000..af72b631c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_14.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_14.png
new file mode 100644
index 000000000..2abef5f96
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_14.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_15.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_15.png
new file mode 100644
index 000000000..4d7b2617c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_15.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_2.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_2.png
new file mode 100644
index 000000000..dbc5f5a84
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_3.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_3.png
new file mode 100644
index 000000000..d69356318
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_4.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_4.png
new file mode 100644
index 000000000..27f62e852
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_5.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_5.png
new file mode 100644
index 000000000..a0ced70ae
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_5.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_6.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_6.png
new file mode 100644
index 000000000..b61360421
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_6.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_7.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_7.png
new file mode 100644
index 000000000..57e2aaf7f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_7.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_8.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_8.png
new file mode 100644
index 000000000..75fc9c405
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_8.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/2_9.png b/data/magic-m15-dungeons.mse-style/wall_masks/2_9.png
new file mode 100644
index 000000000..da4901dec
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/2_9.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_10.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_10.png
new file mode 100644
index 000000000..a68af5413
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_10.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_11.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_11.png
new file mode 100644
index 000000000..180fcceb8
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_11.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_12.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_12.png
new file mode 100644
index 000000000..3bfbbd713
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_13.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_13.png
new file mode 100644
index 000000000..08f9cd133
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_14.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_14.png
new file mode 100644
index 000000000..ad37dc4cc
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_14.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_15.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_15.png
new file mode 100644
index 000000000..fb8068be7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_15.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_2.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_2.png
new file mode 100644
index 000000000..5e71e730a
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_3.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_3.png
new file mode 100644
index 000000000..f66b1cc7f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_4.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_4.png
new file mode 100644
index 000000000..713242134
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_5.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_5.png
new file mode 100644
index 000000000..10a7fbb2c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_5.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_6.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_6.png
new file mode 100644
index 000000000..049eb05b3
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_6.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_7.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_7.png
new file mode 100644
index 000000000..fabc95384
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_7.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_8.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_8.png
new file mode 100644
index 000000000..fffb10f5a
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_8.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/3_9.png b/data/magic-m15-dungeons.mse-style/wall_masks/3_9.png
new file mode 100644
index 000000000..34be6381a
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/3_9.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_10.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_10.png
new file mode 100644
index 000000000..9823e1272
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_10.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_11.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_11.png
new file mode 100644
index 000000000..64b77e5ba
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_11.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_12.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_12.png
new file mode 100644
index 000000000..cc70583f3
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_13.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_13.png
new file mode 100644
index 000000000..30649ee1d
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_14.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_14.png
new file mode 100644
index 000000000..1e41fad81
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_14.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_15.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_15.png
new file mode 100644
index 000000000..924d799b2
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_15.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_2.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_2.png
new file mode 100644
index 000000000..80b3fac50
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_3.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_3.png
new file mode 100644
index 000000000..2bfab466f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_4.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_4.png
new file mode 100644
index 000000000..35b660eaa
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_5.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_5.png
new file mode 100644
index 000000000..565c8073c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_5.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_6.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_6.png
new file mode 100644
index 000000000..daf66ba36
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_6.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_7.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_7.png
new file mode 100644
index 000000000..3bd2e6648
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_7.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_8.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_8.png
new file mode 100644
index 000000000..cb8b96287
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_8.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/4_9.png b/data/magic-m15-dungeons.mse-style/wall_masks/4_9.png
new file mode 100644
index 000000000..9e6ca052a
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/4_9.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_10.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_10.png
new file mode 100644
index 000000000..76567e82c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_10.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_11.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_11.png
new file mode 100644
index 000000000..a00aa221f
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_11.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_12.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_12.png
new file mode 100644
index 000000000..aa8af6809
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_12.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_13.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_13.png
new file mode 100644
index 000000000..ce8a50b91
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_13.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_14.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_14.png
new file mode 100644
index 000000000..95975646b
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_14.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_15.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_15.png
new file mode 100644
index 000000000..337733a04
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_15.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_2.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_2.png
new file mode 100644
index 000000000..8c4aed053
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_2.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_3.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_3.png
new file mode 100644
index 000000000..6daff5fe8
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_3.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_4.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_4.png
new file mode 100644
index 000000000..9fc873a60
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_4.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_5.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_5.png
new file mode 100644
index 000000000..4916c04f0
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_5.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_6.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_6.png
new file mode 100644
index 000000000..264a56f10
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_6.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_7.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_7.png
new file mode 100644
index 000000000..60d1b4be6
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_7.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_8.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_8.png
new file mode 100644
index 000000000..45ca97271
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_8.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_masks/5_9.png b/data/magic-m15-dungeons.mse-style/wall_masks/5_9.png
new file mode 100644
index 000000000..07c151dfa
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_masks/5_9.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/adark.png b/data/magic-m15-dungeons.mse-style/wall_texture/adark.png
new file mode 100644
index 000000000..47f419abd
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/adark.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/alight.png b/data/magic-m15-dungeons.mse-style/wall_texture/alight.png
new file mode 100644
index 000000000..d64914283
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/alight.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/awall.png b/data/magic-m15-dungeons.mse-style/wall_texture/awall.png
new file mode 100644
index 000000000..9ee19e481
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/awall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/bdark.png b/data/magic-m15-dungeons.mse-style/wall_texture/bdark.png
new file mode 100644
index 000000000..469ef45bd
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/bdark.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/blight.png b/data/magic-m15-dungeons.mse-style/wall_texture/blight.png
new file mode 100644
index 000000000..f05811f51
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/blight.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/bwall.png b/data/magic-m15-dungeons.mse-style/wall_texture/bwall.png
new file mode 100644
index 000000000..d80aa0c76
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/bwall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/cdark.png b/data/magic-m15-dungeons.mse-style/wall_texture/cdark.png
new file mode 100644
index 000000000..6b7ba2f73
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/cdark.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/clight.png b/data/magic-m15-dungeons.mse-style/wall_texture/clight.png
new file mode 100644
index 000000000..842e0f083
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/clight.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/cwall.png b/data/magic-m15-dungeons.mse-style/wall_texture/cwall.png
new file mode 100644
index 000000000..7f9831c84
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/cwall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/gdark.png b/data/magic-m15-dungeons.mse-style/wall_texture/gdark.png
new file mode 100644
index 000000000..c262a35c3
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/gdark.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/glight.png b/data/magic-m15-dungeons.mse-style/wall_texture/glight.png
new file mode 100644
index 000000000..d0be7a499
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/glight.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/gwall.png b/data/magic-m15-dungeons.mse-style/wall_texture/gwall.png
new file mode 100644
index 000000000..2370da7a3
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/gwall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/mdark.png b/data/magic-m15-dungeons.mse-style/wall_texture/mdark.png
new file mode 100644
index 000000000..212e4fdac
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/mdark.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/mlight.png b/data/magic-m15-dungeons.mse-style/wall_texture/mlight.png
new file mode 100644
index 000000000..fbb31d472
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/mlight.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/mwall.png b/data/magic-m15-dungeons.mse-style/wall_texture/mwall.png
new file mode 100644
index 000000000..064500481
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/mwall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/rdark.png b/data/magic-m15-dungeons.mse-style/wall_texture/rdark.png
new file mode 100644
index 000000000..1bb5f2947
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/rdark.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/rlight.png b/data/magic-m15-dungeons.mse-style/wall_texture/rlight.png
new file mode 100644
index 000000000..16b70bdea
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/rlight.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/rwall.png b/data/magic-m15-dungeons.mse-style/wall_texture/rwall.png
new file mode 100644
index 000000000..67c1c0a82
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/rwall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/udark.png b/data/magic-m15-dungeons.mse-style/wall_texture/udark.png
new file mode 100644
index 000000000..0dcbe9c64
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/udark.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/ulight.png b/data/magic-m15-dungeons.mse-style/wall_texture/ulight.png
new file mode 100644
index 000000000..19096c649
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/ulight.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/uwall.png b/data/magic-m15-dungeons.mse-style/wall_texture/uwall.png
new file mode 100644
index 000000000..4aa8c06dd
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/uwall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/wdark.png b/data/magic-m15-dungeons.mse-style/wall_texture/wdark.png
new file mode 100644
index 000000000..19e5de648
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/wdark.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/wlight.png b/data/magic-m15-dungeons.mse-style/wall_texture/wlight.png
new file mode 100644
index 000000000..fab3fbcb7
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/wlight.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wall_texture/wwall.png b/data/magic-m15-dungeons.mse-style/wall_texture/wwall.png
new file mode 100644
index 000000000..a3e723f3c
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wall_texture/wwall.png differ
diff --git a/data/magic-m15-dungeons.mse-style/walls.png b/data/magic-m15-dungeons.mse-style/walls.png
new file mode 100644
index 000000000..cf324c612
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/walls.png differ
diff --git a/data/magic-m15-dungeons.mse-style/wcard.png b/data/magic-m15-dungeons.mse-style/wcard.png
new file mode 100644
index 000000000..cdbb6fc21
Binary files /dev/null and b/data/magic-m15-dungeons.mse-style/wcard.png differ
diff --git a/data/magic-m15-extra-udelude.mse-style/game_scripts b/data/magic-m15-extra-udelude.mse-style/game_scripts
index db27327c6..366b488fd 100644
--- a/data/magic-m15-extra-udelude.mse-style/game_scripts
+++ b/data/magic-m15-extra-udelude.mse-style/game_scripts
@@ -32,26 +32,26 @@
# Names of colors
color_name := {
- if input = "W" then "white"
- else if input = "U" then "blue"
- else if input = "B" then "black"
- else if input = "R" then "red"
- else if input = "G" then "green"
- else if input = "P" then "purple"
- else if input = "K" then "pink"
- else if input = "L" then "yellow"
- else if input = "O" then "orange"
- else if input = "E" then "brown"
+ if input == "W" then "white"
+ else if input == "U" then "blue"
+ else if input == "B" then "black"
+ else if input == "R" then "red"
+ else if input == "G" then "green"
+ else if input == "P" then "purple"
+ else if input == "K" then "pink"
+ else if input == "L" then "yellow"
+ else if input == "O" then "orange"
+ else if input == "E" then "brown"
else ""
}
color_names_6 := { color_name(colors.0) + ", " + color_name(colors.1) + ", " + color_name(colors.2) + ", " + color_name(colors.3) + ", " + color_name(colors.4) + ", " + color_name(colors.5) }
color_names_7 := { color_name(colors.0) + ", " + color_name(colors.1) + ", " + color_name(colors.2) + ", " + color_name(colors.3) + ", " + color_name(colors.4) + ", " + color_name(colors.5) + ", " + color_name(colors.6) }
- # color based on mana cost, input = a mana cost
+ # color based on mana cost, input == a mana cost
color_filter := sort_text@(order: "")
color_filterS := sort_text@(order: "")
mana_to_color := {
count := number_of_items(in: colors)
- if hybrid == "" and snow = "" and contains(type, match:"Artifact") then
+ if hybrid == "" and snow == "" and contains(type, match:"Artifact") then
# not a hybrid, not snow costed, but artifact
if count == 0 then "colorless"
else if count == 1 then color_names_1() + ", artifact"
@@ -152,7 +152,7 @@
if text != "" then (
if contains(text, match: "all colors") then (
colors := "WUBRGP"
- if land = "land" then land_multicolor()
+ if land == "land" then land_multicolor()
else mana_to_color(hybrid: "")
) else (
colors := ""
@@ -166,11 +166,11 @@
if contains(text, match: "yellow") then colors := colors + "L"
if contains(text, match: "orange") then colors := colors + "O"
if contains(text, match: "brown") then colors := colors + "E"
- if land = "land" then land_multicolor()
+ if land == "land" then land_multicolor()
else mana_to_color(hybrid: "")
)
- )
- )
+ ) else ""
+ ) else ""
}
card_color := {
@@ -211,52 +211,52 @@
# normal/token, color, shifted, split
hybrid_color_pair_sort := {
colors := sort_text(casting_cost, order: "")
- if colors = "WU" then "HA"
- else if colors = "UB" then "HB"
- else if colors = "BR" then "HC"
- else if colors = "RG" then "HD"
- else if colors = "WG" then "HE"
- else if colors = "WB" then "HF"
- else if colors = "UR" then "HG"
- else if colors = "BG" then "HH"
- else if colors = "WR" then "HI"
- else if colors = "UG" then "HJ"
- else if colors = "WP" then "HJAA"
- else if colors = "UP" then "HJAB"
- else if colors = "BP" then "HJAC"
- else if colors = "RP" then "HJAD"
- else if colors = "GP" then "HJAE"
- else if colors = "WK" then "HJBA"
- else if colors = "UK" then "HJBB"
- else if colors = "BK" then "HJBC"
- else if colors = "RK" then "HJBD"
- else if colors = "GK" then "HJBE"
- else if colors = "PLOEK" then "HJBF"
+ if colors == "WU" then "HA"
+ else if colors == "UB" then "HB"
+ else if colors == "BR" then "HC"
+ else if colors == "RG" then "HD"
+ else if colors == "WG" then "HE"
+ else if colors == "WB" then "HF"
+ else if colors == "UR" then "HG"
+ else if colors == "BG" then "HH"
+ else if colors == "WR" then "HI"
+ else if colors == "UG" then "HJ"
+ else if colors == "WP" then "HJAA"
+ else if colors == "UP" then "HJAB"
+ else if colors == "BP" then "HJAC"
+ else if colors == "RP" then "HJAD"
+ else if colors == "GP" then "HJAE"
+ else if colors == "WK" then "HJBA"
+ else if colors == "UK" then "HJBB"
+ else if colors == "BK" then "HJBC"
+ else if colors == "RK" then "HJBD"
+ else if colors == "GK" then "HJBE"
+ else if colors == "PLOEK" then "HJBF"
else "HK"
}
multi_color_pair_sort := {
colors := sort_text(casting_cost, order: "")
- if colors = "WU" then "GA"
- else if colors = "UB" then "GB"
- else if colors = "BR" then "GC"
- else if colors = "RG" then "GD"
- else if colors = "WG" then "GE"
- else if colors = "WB" then "GF"
- else if colors = "UR" then "GG"
- else if colors = "BG" then "GH"
- else if colors = "WR" then "GI"
- else if colors = "UG" then "GJ"
- else if colors = "WP" then "GJAA"
- else if colors = "UP" then "GJAB"
- else if colors = "BP" then "GJAC"
- else if colors = "RP" then "GJAD"
- else if colors = "GP" then "GJAE"
- else if colors = "WK" then "GJBA"
- else if colors = "UK" then "GJBB"
- else if colors = "BK" then "GJBC"
- else if colors = "RK" then "GJBD"
- else if colors = "GK" then "GJBE"
- else if colors = "PLOEK" then "GJBF"
+ if colors == "WU" then "GA"
+ else if colors == "UB" then "GB"
+ else if colors == "BR" then "GC"
+ else if colors == "RG" then "GD"
+ else if colors == "WG" then "GE"
+ else if colors == "WB" then "GF"
+ else if colors == "UR" then "GG"
+ else if colors == "BG" then "GH"
+ else if colors == "WR" then "GI"
+ else if colors == "UG" then "GJ"
+ else if colors == "WP" then "GJAA"
+ else if colors == "UP" then "GJAB"
+ else if colors == "BP" then "GJAC"
+ else if colors == "RP" then "GJAD"
+ else if colors == "GP" then "GJAE"
+ else if colors == "WK" then "GJBA"
+ else if colors == "UK" then "GJBB"
+ else if colors == "BK" then "GJBC"
+ else if colors == "RK" then "GJBD"
+ else if colors == "GK" then "GJBE"
+ else if colors == "PLOEK" then "GJBF"
else if contains(card.casting_cost, match:"/") then "GL"
else "GK"
}
@@ -464,7 +464,9 @@
else if card.rarity == "rare" then "R"
else if card.rarity == "mythic rare" then "M"
else if card.rarity == "special" then "S"
- else if card.rarity == "basic land" then "L" }
+ else if card.rarity == "basic land" then "L"
+ else "M"
+ }
# Assigns default type symbols. Is modified for structure symbols.
typesymbol_for :=
diff --git a/data/magic-m15-extra.mse-style/bar.png b/data/magic-m15-extra.mse-style/bar.png
new file mode 100644
index 000000000..31bfc8b29
Binary files /dev/null and b/data/magic-m15-extra.mse-style/bar.png differ
diff --git a/data/magic-m15-extra.mse-style/game_scripts b/data/magic-m15-extra.mse-style/game_scripts
index cbcc816da..3e6a4b837 100644
--- a/data/magic-m15-extra.mse-style/game_scripts
+++ b/data/magic-m15-extra.mse-style/game_scripts
@@ -39,23 +39,23 @@
# Names of colors
color_name := {
- if input = "W" then "white"
- else if input = "U" then "blue"
- else if input = "B" then "black"
- else if input = "R" then "red"
- else if input = "G" then "green"
- else if input = "P" then "purple"
- else if input = "K" then "pink"
+ if input == "W" then "white"
+ else if input == "U" then "blue"
+ else if input == "B" then "black"
+ else if input == "R" then "red"
+ else if input == "G" then "green"
+ else if input == "P" then "purple"
+ else if input == "K" then "pink"
else ""
}
color_names_6 := { color_name(colors.0) + ", " + color_name(colors.1) + ", " + color_name(colors.2) + ", " + color_name(colors.3) + ", " + color_name(colors.4) + ", " + color_name(colors.5) }
color_names_7 := { color_name(colors.0) + ", " + color_name(colors.1) + ", " + color_name(colors.2) + ", " + color_name(colors.3) + ", " + color_name(colors.4) + ", " + color_name(colors.5) + ", " + color_name(colors.6) }
- # color based on mana cost, input = a mana cost
+ # color based on mana cost, input == a mana cost
color_filter := sort_text@(order: "")
color_filterS := sort_text@(order: "")
mana_to_color := {
count := number_of_items(in: colors)
- if hybrid == "" and snow = "" and contains(type, match:"Artifact") then
+ if hybrid == "" and snow == "" and contains(type, match:"Artifact") then
# not a hybrid, not snow costed, but artifact
if count == 0 then "colorless"
else if count == 1 then color_names_1() + ", artifact"
@@ -156,7 +156,7 @@
if text != "" then (
if contains(text, match: "all colors") then (
colors := "WUBRGP"
- if land = "land" then land_multicolor()
+ if land == "land" then land_multicolor()
else mana_to_color(hybrid: "")
) else (
colors := ""
@@ -167,11 +167,11 @@
if contains(text, match: "green") then colors := colors + "G"
if contains(text, match: "purple") then colors := colors + "P"
if contains(text, match: "pink") then colors := colors + "K"
- if land = "land" then land_multicolor()
+ if land == "land" then land_multicolor()
else mana_to_color(hybrid: "")
)
- )
- )
+ )else ""
+ )else ""
}
card_color := {
@@ -213,53 +213,53 @@
hybrid_color_pair_sort := {
colors := sort_text(casting_cost, order: "")
if not set.sort_hybrid_in_pairs then "HK"
- else if colors = "WU" then "HA"
- else if colors = "UB" then "HB"
- else if colors = "BR" then "HC"
- else if colors = "RG" then "HD"
- else if colors = "WG" then "HE"
- else if colors = "WB" then "HF"
- else if colors = "UR" then "HG"
- else if colors = "BG" then "HH"
- else if colors = "WR" then "HI"
- else if colors = "UG" then "HJ"
- else if colors = "WP" then "HJAA"
- else if colors = "UP" then "HJAB"
- else if colors = "BP" then "HJAC"
- else if colors = "RP" then "HJAD"
- else if colors = "GP" then "HJAE"
- else if colors = "WK" then "HJBA"
- else if colors = "UK" then "HJBB"
- else if colors = "BK" then "HJBC"
- else if colors = "RK" then "HJBD"
- else if colors = "GK" then "HJBE"
- else if colors = "PK" then "HJBF"
+ else if colors == "WU" then "HA"
+ else if colors == "UB" then "HB"
+ else if colors == "BR" then "HC"
+ else if colors == "RG" then "HD"
+ else if colors == "WG" then "HE"
+ else if colors == "WB" then "HF"
+ else if colors == "UR" then "HG"
+ else if colors == "BG" then "HH"
+ else if colors == "WR" then "HI"
+ else if colors == "UG" then "HJ"
+ else if colors == "WP" then "HJAA"
+ else if colors == "UP" then "HJAB"
+ else if colors == "BP" then "HJAC"
+ else if colors == "RP" then "HJAD"
+ else if colors == "GP" then "HJAE"
+ else if colors == "WK" then "HJBA"
+ else if colors == "UK" then "HJBB"
+ else if colors == "BK" then "HJBC"
+ else if colors == "RK" then "HJBD"
+ else if colors == "GK" then "HJBE"
+ else if colors == "PK" then "HJBF"
else "HK"
}
multi_color_pair_sort := {
colors := sort_text(casting_cost, order: "")
if not set.sort_multicolor_in_pairs then "GK"
- else if colors = "WU" then "GA"
- else if colors = "UB" then "GB"
- else if colors = "BR" then "GC"
- else if colors = "RG" then "GD"
- else if colors = "WG" then "GE"
- else if colors = "WB" then "GF"
- else if colors = "UR" then "GG"
- else if colors = "BG" then "GH"
- else if colors = "WR" then "GI"
- else if colors = "UG" then "GJ"
- else if colors = "WP" then "GJAA"
- else if colors = "UP" then "GJAB"
- else if colors = "BP" then "GJAC"
- else if colors = "RP" then "GJAD"
- else if colors = "GP" then "GJAE"
- else if colors = "WK" then "GJBA"
- else if colors = "UK" then "GJBB"
- else if colors = "BK" then "GJBC"
- else if colors = "RK" then "GJBD"
- else if colors = "GK" then "GJBE"
- else if colors = "PK" then "GJBF"
+ else if colors == "WU" then "GA"
+ else if colors == "UB" then "GB"
+ else if colors == "BR" then "GC"
+ else if colors == "RG" then "GD"
+ else if colors == "WG" then "GE"
+ else if colors == "WB" then "GF"
+ else if colors == "UR" then "GG"
+ else if colors == "BG" then "GH"
+ else if colors == "WR" then "GI"
+ else if colors == "UG" then "GJ"
+ else if colors == "WP" then "GJAA"
+ else if colors == "UP" then "GJAB"
+ else if colors == "BP" then "GJAC"
+ else if colors == "RP" then "GJAD"
+ else if colors == "GP" then "GJAE"
+ else if colors == "WK" then "GJBA"
+ else if colors == "UK" then "GJBB"
+ else if colors == "BK" then "GJBC"
+ else if colors == "RK" then "GJBD"
+ else if colors == "GK" then "GJBE"
+ else if colors == "PK" then "GJBF"
else if contains(card.casting_cost, match:"/") then "GL"
else "GK"
}
@@ -436,7 +436,7 @@
{ if set.mark_errors then
check_spelling(
language: language().spellcheck_code,
- extra_dictionary: "/magic.mse-game/magic-words",
+ extra_dictionary: "/magic.mse-game/dictionary/magic-words",
extra_match: additional_text_words
)
else input
@@ -464,7 +464,9 @@
else if card.rarity == "rare" then "R"
else if card.rarity == "mythic rare" then "M"
else if card.rarity == "special" then "S"
- else if card.rarity == "basic land" then "L" }
+ else if card.rarity == "basic land" then "L"
+ else "M"
+ }
# Assigns default type symbols. Is modified for structure symbols.
typesymbol_for :=
diff --git a/data/magic-m15-extra.mse-style/style b/data/magic-m15-extra.mse-style/style
index b358ff03f..36656ac31 100644
--- a/data/magic-m15-extra.mse-style/style
+++ b/data/magic-m15-extra.mse-style/style
@@ -482,8 +482,8 @@ card style:
visible: {not set.automatic_copyright}
alignment: middle right shrink-overflow
font:
- name: Matrix
- size: 7
+ name: MPlantin
+ size: 6.5
color: white
weight: bold
############################################################## Extra card fields
@@ -866,8 +866,8 @@ extra card style:
alignment: middle right shrink-overflow
visible: {set.automatic_copyright}
font:
- name: Matrix
- size: 7
+ name: MPlantin
+ size: 6.5
color: white
weight: bold
flavor bar:
diff --git a/data/magic-m15-future-planeswalker.mse-style/acard.jpg b/data/magic-m15-future-planeswalker.mse-style/acard.jpg
new file mode 100644
index 000000000..ce599af47
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/acard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/atypeline.png b/data/magic-m15-future-planeswalker.mse-style/atypeline.png
new file mode 100644
index 000000000..546c9bf91
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/atypeline.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/bcard.jpg b/data/magic-m15-future-planeswalker.mse-style/bcard.jpg
new file mode 100644
index 000000000..69d903b05
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/bcard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/blcard.jpg b/data/magic-m15-future-planeswalker.mse-style/blcard.jpg
new file mode 100644
index 000000000..e954a9248
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/blcard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/bltypeline.png b/data/magic-m15-future-planeswalker.mse-style/bltypeline.png
new file mode 100644
index 000000000..5ee7ecd1a
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/bltypeline.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/btypeline.png b/data/magic-m15-future-planeswalker.mse-style/btypeline.png
new file mode 100644
index 000000000..b15479e1c
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/btypeline.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/ccard.jpg b/data/magic-m15-future-planeswalker.mse-style/ccard.jpg
new file mode 100644
index 000000000..153b1b0b6
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/ccard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/clcard.jpg b/data/magic-m15-future-planeswalker.mse-style/clcard.jpg
new file mode 100644
index 000000000..ed9162a2e
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/clcard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/cltypeline.png b/data/magic-m15-future-planeswalker.mse-style/cltypeline.png
new file mode 100644
index 000000000..0d6f3452b
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/cltypeline.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/ctypeline.png b/data/magic-m15-future-planeswalker.mse-style/ctypeline.png
new file mode 100644
index 000000000..82d8ecf4e
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/ctypeline.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/evobar.png b/data/magic-m15-future-planeswalker.mse-style/evobar.png
new file mode 100644
index 000000000..479dead44
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/evobar.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/evobar_flip.png b/data/magic-m15-future-planeswalker.mse-style/evobar_flip.png
new file mode 100644
index 000000000..f0726bfb6
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/evobar_flip.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/gcard.jpg b/data/magic-m15-future-planeswalker.mse-style/gcard.jpg
new file mode 100644
index 000000000..81b68ad09
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/gcard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/glcard.jpg b/data/magic-m15-future-planeswalker.mse-style/glcard.jpg
new file mode 100644
index 000000000..175ab7f1b
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/glcard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/gltypeline.png b/data/magic-m15-future-planeswalker.mse-style/gltypeline.png
new file mode 100644
index 000000000..54dae1d81
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/gltypeline.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/gtypeline.png b/data/magic-m15-future-planeswalker.mse-style/gtypeline.png
new file mode 100644
index 000000000..a56f835a0
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/gtypeline.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/legend.png b/data/magic-m15-future-planeswalker.mse-style/legend.png
new file mode 100644
index 000000000..9736582f5
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/legend.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/magic-m15-future-planeswalker.mse-style.zip b/data/magic-m15-future-planeswalker.mse-style/magic-m15-future-planeswalker.mse-style.zip
new file mode 100644
index 000000000..a58d00101
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/magic-m15-future-planeswalker.mse-style.zip differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/mask_image.png b/data/magic-m15-future-planeswalker.mse-style/mask_image.png
new file mode 100644
index 000000000..5e7687943
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/mask_image.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/mcard.jpg b/data/magic-m15-future-planeswalker.mse-style/mcard.jpg
new file mode 100644
index 000000000..f1dcbf1d1
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/mcard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/mlcard.jpg b/data/magic-m15-future-planeswalker.mse-style/mlcard.jpg
new file mode 100644
index 000000000..5cfe65865
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/mlcard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/mltypeline.png b/data/magic-m15-future-planeswalker.mse-style/mltypeline.png
new file mode 100644
index 000000000..e85d11453
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/mltypeline.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/mtypeline.png b/data/magic-m15-future-planeswalker.mse-style/mtypeline.png
new file mode 100644
index 000000000..f2decbf35
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/mtypeline.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/rcard.jpg b/data/magic-m15-future-planeswalker.mse-style/rcard.jpg
new file mode 100644
index 000000000..75a47a8fe
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/rcard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/rlcard.jpg b/data/magic-m15-future-planeswalker.mse-style/rlcard.jpg
new file mode 100644
index 000000000..5afababaa
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/rlcard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/rltypeline.png b/data/magic-m15-future-planeswalker.mse-style/rltypeline.png
new file mode 100644
index 000000000..e5b01a63a
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/rltypeline.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/rtypeline.png b/data/magic-m15-future-planeswalker.mse-style/rtypeline.png
new file mode 100644
index 000000000..6f816b041
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/rtypeline.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/style b/data/magic-m15-future-planeswalker.mse-style/style
index 8ad7ca8c0..6980c8716 100644
--- a/data/magic-m15-future-planeswalker.mse-style/style
+++ b/data/magic-m15-future-planeswalker.mse-style/style
@@ -175,6 +175,9 @@ init script:
}
has_identity := { styling.color_indicator_dot }
is_unsorted := {styling.remove_from_autocount}
+ is_hybrid := {contains(card.card_color, match:"hybrid")}
+ is_legend := { styling.legendary_symbol }
+ use_evobar := {card.alias != ""}
############################################################## Set info fields
set info style:
symbol:
@@ -313,6 +316,7 @@ card style:
size: { if styling.beleren then "16" else "18" }
color:
script:
+ if is_hybrid() then "black" else
if styling.grey_hybrid_name and contains(card.card_color, match:"land") and
contains(card.card_color, match:"horizontal") or
contains(card.card_color, match:"radial") or
@@ -332,6 +336,19 @@ card style:
contains(card.card_color, match:"green") then rgb(255,255,255)
else rgb(0,0,0)
) else font_color(card.card_color)
+ alias:
+ right: 353
+ top: 67
+ width: {max(50, card_style.alias.content_width)}
+ height: 20
+ alignment: right shrink-overflow
+ padding bottom: 0
+ z index: 3
+ font:
+ name: Matrix
+ size: 10
+ style: italic
+ color: black
casting cost:
left: 4
top: 39
@@ -379,7 +396,7 @@ card style:
left: 32
top: 44
width: 327
- height: 310
+ height: 250
z index: 1
mask: /magic-m15-future.mse-style/mask_image.png
############################# Card type
@@ -396,6 +413,7 @@ card style:
size: { if styling.beleren then "12" else "14" }
color:
script:
+ if is_hybrid() then "black" else
if styling.grey_hybrid_name and contains(card.card_color, match:"land") and
contains(card.card_color, match:"horizontal") or
contains(card.card_color, match:"radial") or
@@ -447,13 +465,14 @@ card style:
height: 135
font:
name: MPlantin
- size: 14
- size: 14
+ size: 12
+ size: 12
scale down to: 6
color: black
+ weight: bold
symbol font:
name: { styling.text_box_mana_symbols }
- size: 14
+ size: 12
paragraph height: 46
alignment:
script:
@@ -466,8 +485,8 @@ card style:
else "middle left"
z index: 4
mask: text_mask.png
- padding left: 6
- padding right: 4
+ padding left: 0
+ padding right: 0
padding bottom: 2
line height hard: 1.2
line height line: 1.5
@@ -555,6 +574,7 @@ card style:
name: Beleren Small Caps Bold
size: 7.5
color: white
+ weight: bold
copyright:
right: 350
top : { if card.loyalty != "" then 495 else 488 }
@@ -567,6 +587,7 @@ card style:
name: Matrix
size: 7
color: white
+ weight: bold
############################################################## Extra card fields
extra card field:
type: choice
@@ -607,7 +628,7 @@ extra card field:
extra card field:
type: choice
name: typeline
- script: card.card_color
+ script: if is_hybrid() then "colorless, land" else card.card_color
editable: false
save value: false
extra card field:
@@ -649,6 +670,18 @@ extra card field:
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: 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: future node
@@ -680,6 +713,13 @@ extra card field:
save value: false
editable: false
show statistics: false
+extra card field:
+ type: choice
+ name: legend symbol
+ default: "none"
+ choice: none
+ choice: legend
+ description: the legend symbol for this card.
extra card style:
card code:
left: 24
@@ -859,4 +899,32 @@ extra card style:
font:
name: Matrix
size: 7
- color: white
\ No newline at end of file
+ color: white
+ legend symbol:
+ left: 19
+ top: 296
+ width: 29
+ height: 29
+ z index: 6
+ alignment: middle right
+ render style: image
+ choice images:
+ legend: legend.png
+ evobar:
+ right: 358
+ top: 65
+ width: {card_style.alias.content_width}
+ height: 27
+ z index: 2
+ render style: image
+ image: evobar.png
+ visible: {use_evobar()}
+ evobar tip:
+ right: {358 - card_style.alias.content_width}
+ top: 65
+ width: 36
+ height: 27
+ z index: 2
+ render style: image
+ image: evobar_flip.png
+ visible: {use_evobar()}
\ No newline at end of file
diff --git a/data/magic-m15-future-planeswalker.mse-style/style - backup b/data/magic-m15-future-planeswalker.mse-style/style - backup
new file mode 100644
index 000000000..f710f0be0
--- /dev/null
+++ b/data/magic-m15-future-planeswalker.mse-style/style - backup
@@ -0,0 +1,885 @@
+mse version: 2.0.0
+game: magic
+short name: M15 Futurewalk
+full name: Future Planeswalkers
+installer group: magic/Future/planeswalkers
+icon: card-sample.png
+position hint: 074
+
+version: 2018-02-08
+depends on:
+ package: magic.mse-game
+ version: 2008-06-02
+depends on:
+ package: magic-watermarks.mse-include
+ version: 2007-09-23
+depends on:
+ package: magic-future-common.mse-include
+ version: 2008-05-21
+depends on:
+ package: magic-mana-small.mse-symbol-font
+ version: 2007-09-23
+depends on:
+ package: magic-mana-future.mse-symbol-font
+ version: 2007-09-23
+depends on:
+ package: magic-m15-future.mse-style
+ version: 2014-02-22
+
+card width: 375
+card height: 523
+card dpi: 150
+#By: Pichoro
+#Images by Spiderboy4, Buttock1234, and Artfreakwiu
+#M15 update by Cajun
+############################################################## Extra scripts
+init script:
+ mask_hybrid_with_land := { styling.grey_hybrid_name }
+
+ mask_multi_land_with_color := { styling.colored_multicolor_land_name }
+
+ template_suffix := [card: "card.jpg", pt: "pt.png", textbox: "textbox.png", typeline: "typeline.png", stamp: "stamp.jpg"]
+ template := { "/magic-m15-future.mse-style/" + input + template_suffix[type] }
+ land_template := { "/magic-m15-future.mse-style/" + (if input == "a" then "c" else input) + "l" + template_suffix[type] }
+
+ # 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 }
+
+ colorless_color := {
+ if card.card_color=="white" then "w"
+ else if card.card_color=="blue" then "u"
+ else if card.card_color=="black" then "b"
+ else if card.card_color=="red" then "r"
+ else if card.card_color=="green" then "g"
+ else "c"
+ }
+
+ font_colors_white := { input == "b" or input == "bl" or input == "u" or input == "ul" or input == "r" or input == "rl" or input == "g" or input == "gl" }
+
+ font_white := {
+ hybrid := chosen(choice:"hybrid")
+ artifact := chosen(choice:"artifact")
+ colors := sort_text( order: "(wubrg)"
+ , (if chosen(choice:"white") then "w")
+ + (if chosen(choice:"blue") then "u")
+ + (if chosen(choice:"black") then "b")
+ + (if chosen(choice:"red") then "r")
+ + (if chosen(choice:"green") then "g"))
+ + (if artifact then "a")
+ font_colors_white(
+ if chosen(choice:"land") and chosen(choice:"white") then "wl"
+ else if chosen(choice:"land") and chosen(choice:"blue") then "ul"
+ else if chosen(choice:"land") and chosen(choice:"black") then "bl"
+ else if chosen(choice:"land") and chosen(choice:"red") then "rl"
+ else if chosen(choice:"land") and chosen(choice:"green") then "gl"
+ else if chosen(choice:"land") then "l"
+ else if input == "artifact, multicolor" then "a"
+ else if chosen(choice:"multicolor") then "m"
+ else if artifact and not hybrid then "a"
+ else if colors == "" then "c"
+ else colors[
+ font_color_positions[
+ if chosen(choice:"horizontal") then "horizontal"
+ else if chosen(choice:"vertical") then "vertical"
+ else if chosen(choice:"overlay") then "overlay"
+ else "radial"
+ ][number_of_items(in: colors)]
+ ]
+ )
+ }
+
+ color_combination := {
+ # The base hybrid, without the outer frame blended over it
+ base := base_hybrid[shape][color_count]()
+
+ # Put a frame around it?
+ if land and not colored_lands then
+ masked_blend(
+ mask: "/magic-m15-future.mse-style/multicolor_blend_{type}.png",
+ dark: land_template("c"),
+ light: base,
+ )
+ else if land and multi and mask_multi_land_with_color() then
+ masked_blend(
+ mask: "/magic-m15-future.mse-style/hybrid_blend_{type}.png",
+ dark: base,
+ light: land_template("m"),
+ )
+ else if multi and artifact then
+ masked_blend(
+ mask: "/magic-m15-future.mse-style/artifact_blend_{type}.png",
+ dark: template("a"),
+ light: masked_blend(
+ mask: "/magic-m15-future.mse-style/multicolor_blend_{type}.png",
+ dark: template("m"),
+ light: base
+ )
+ )
+ else if multi then
+ masked_blend(
+ mask: "/magic-m15-future.mse-style/multicolor_blend_{type}.png",
+ dark: template("m"),
+ light: base,
+ )
+ else if artifact then
+ masked_blend(
+ mask: "/magic-m15-future.mse-style/artifact_blend_{type}.png",
+ dark: template("a"),
+ light: base,
+ )
+ else if color_count > 1 and mask_hybrid_with_land() then
+ masked_blend(
+ mask: "/magic-m15-future.mse-style/hybrid_blend_{type}.png",
+ dark: land_template("c"),
+ light: base,
+ )
+ else base
+ }
+
+ paintbrush_color:= { if contains(card.card_color, match:"land") then "white"
+ else if contains(card.card_color, match:"artifact") or contains(card.card_color, match:"multicolor") or contains(card.card_color, match:"white") then "black"
+ else "white"
+ }
+ typesymbol_color:= { if contains(card.card_color, match:"artifact") then "black"
+ else if contains(card.card_color, match:"land") and contains(card.card_color, match:"multicolor") and styling.colored_multicolor_land_name then "black"
+ else if contains(card.card_color, match:"multicolor") then (
+ if card.card_color=="multicolor" then "black"
+ else if not contains(card.card_color, match:"white") then "white"
+ else if contains(card.card_color, match:"red") or contains(card.card_color, match:"green") then "white"
+ else "black"
+ ) else if card.card_color == "white" then "black"
+ else if contains(card.card_color, match:"land") then (
+ if contains(card.card_color, match:"green") then "white"
+ else if contains(card.card_color, match:"red") then "white"
+ else if contains(card.card_color, match:"black") then "white"
+ else if contains(card.card_color, match:"blue") then "white"
+ else "black"
+ ) else if card.card_color == "colorless" then "black"
+ else "white"
+ }
+
+ card_shape := { if styling.shifted_sorting then "shifted planeswalker" else "planeswalker" }
+
+ # Loyalty cost arrows
+ loyalty_image := {
+ if contains(input, match: "+") then "loyalty up"
+ else if contains(input, match: "-") then "loyalty down"
+ else "loyalty naught"
+ }
+ has_identity := { styling.color_indicator_dot }
+ is_unsorted := {styling.remove_from_autocount}
+ is_hybrid := {contains(card.card_color, match:"hybrid")}
+############################################################## Set info fields
+set info style:
+ symbol:
+ variation:
+ name: invertedcommon
+ border radius: 0.10
+ fill type: solid
+ fill color: rgb(255,255,255)
+ border color: rgb(0,0,0)
+############################################################## Extra style options
+styling field:
+ type: boolean
+ name: original symbols
+ description: Should these cards use the original type symbol?
+ initial: no
+styling field:
+ type: boolean
+ name: beleren
+ description: Should these cards use Beleren or the original font?
+ initial: yes
+styling field:
+ type: boolean
+ name: shifted sorting
+ description: Should this style of card sort as a shifted card (after other cards of that color)?
+ initial: no
+styling field:
+ type: boolean
+ name: use holofoil stamps
+ description: Change to no to disable rare holofoil stamps
+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: colored multicolor land name
+ description: Use a colored background for the name and type on multicolor land cards with a basic land type. This is done on real cards.
+styling field:
+ type: boolean
+ name: use guild mana symbols
+ description: Use the Ravnica guild symbols instead of the official half/half circles for hybrid mana.
+ initial: no
+styling field:
+ type: choice
+ name: tap symbol
+ description: What tap and untap symbols should be used on cards?
+ initial: modern
+ choice: modern
+ choice: old
+ choice: diagonal T
+styling field:
+ type: package choice
+ name: text box mana symbols
+ match: magic-mana-*.mse-symbol-font
+ initial: magic-mana-small.mse-symbol-font
+styling field:
+ type: choice
+ name: center text
+ description: When to center text (short text only means only on one-line cards with no flavor text)
+ choice: always
+ choice: short text only
+ choice: never
+ initial: never
+styling field:
+ type: 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: inverted common symbol
+ description: Should the common rarity symbol be inverted, like in Coldsnap?
+ 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-small.mse-symbol-font/mana_t.png
+ old: /magic-mana-small.mse-symbol-font/mana_t_old.png
+ diagonal T: /magic-mana-small.mse-symbol-font/mana_t_older.png
+ center text:
+ render style: both
+ choice images:
+ always: /magic.mse-game/icons/center-all-text.png
+ short text only: /magic.mse-game/icons/center-short-text.png
+ never: /magic.mse-game/icons/center-no-text.png
+ inverted common symbol:
+ choice images:
+ no: { symbol_variation(symbol: set.symbol, variation: "common") }
+ yes: { symbol_variation(symbol: set.symbol, variation: "invertedcommon") }
+############################################################## Card fields
+card style:
+ ############################# Background stuff
+ border color:
+ left: 0
+ top : 0
+ width: 375
+ height: 523
+ radius: 18
+ left width: 17
+ right width: 17
+ top width: 17
+ bottom width: 18
+ mask: /magic-m15-future.mse-style/bordermask.png
+ z index: 3
+ card color:
+ left: 0
+ top: 0
+ width: 375
+ height: 523
+ z index: 0
+ render style: image
+ popup style: in place
+ image: { card_background() }
+ ############################# Name line
+ name:
+ left: { if card.card_symbol=="none" then 73 else 88 }
+ top : 30
+ width: { if card.card_symbol=="none" then 269 else 254 }
+ height: 26
+ alignment: middle shrink-overflow
+ padding bottom: 0
+ z index: 4
+ font:
+ name: { if styling.beleren then "Beleren" else "Matrix" }
+ size: { if styling.beleren then "16" else "18" }
+ color:
+ script:
+ if is_hybrid() then "black" else
+ if styling.grey_hybrid_name and contains(card.card_color, match:"land") and
+ contains(card.card_color, match:"horizontal") or
+ contains(card.card_color, match:"radial") or
+ contains(card.card_color, match:"vertical") and
+ not contains(card.card_color, match:"multicolor") then rgb(0,0,0)
+ else if contains(card.card_color, match:"land") and
+ contains(card.card_color, match:"multicolor") and
+ contains(card.card_color, match:"black") and
+ styling.colored_multicolor_land_name then rgb(255,255,255)
+ else if contains(card.card_color, match:"land") and
+ contains(card.card_color, match:"multicolor") then rgb(0,0,0)
+ else if styling.grey_hybrid_name and contains(card.card_color, match:"hybrid") then rgb(0,0,0)
+ else if contains(card.card_color, match:"artifact") then (
+ if contains(card.card_color, match:"blue") or
+ contains(card.card_color, match:"black") or
+ contains(card.card_color, match:"red") or
+ contains(card.card_color, match:"green") then rgb(255,255,255)
+ else rgb(0,0,0)
+ ) else font_color(card.card_color)
+ casting cost:
+ left: 4
+ top: 39
+ height: 254
+ width: 82
+ alignment: top left
+ direction: vertical
+ symbol font:
+ name: magic-mana-future
+ size: 22
+ scale down to: 22
+ alignment: bottom right
+ always symbol: true
+ z index: 4
+ padding top: 0
+ mask: /magic-m15-future.mse-style/costmask.png
+ card symbol:
+ left: {if card.card_symbol=="none" then 50 else 67}
+ top : 31
+ height: 20
+ width: 14
+ z index: 5
+ render style: image
+ choice images:
+ tombstone: /magic-m15-future.mse-style/tombstone.png
+ type symbol:
+ left: 24
+ top: 24
+ width: 21
+ height: 20
+ z index: 4
+ render style: image
+ choice images:
+
+ artifact: { if styling.original_symbols then "/magic-future-common.mse-include/artifact_" + typesymbol_color(value) + ".png" }
+ creature: { if styling.original_symbols then "/magic-future-common.mse-include/creature_" + typesymbol_color(value) + ".png" }
+ enchantment: { if styling.original_symbols then "/magic-future-common.mse-include/enchantment_" + typesymbol_color(value) + ".png" }
+ instant: { if styling.original_symbols then "/magic-future-common.mse-include/instant_" + typesymbol_color(value) + ".png"}
+ land: { if styling.original_symbols then "/magic-future-common.mse-include/land_" + typesymbol_color(value) + ".png" }
+ multitype: { if styling.original_symbols then "/magic-future-common.mse-include/multitype_" + typesymbol_color(value) + ".png" }
+ sorcery: { if styling.original_symbols then "/magic-future-common.mse-include/sorcery_" + typesymbol_color(value) + ".png" }
+ planeswalker: { if styling.original_symbols then "/magic-future-common.mse-include/planeswalker_" + typesymbol_color(value) + ".png" }
+ ############################# Image
+ image:
+ left: 32
+ top: 44
+ width: 327
+ height: 250
+ z index: 1
+ mask: /magic-m15-future.mse-style/mask_image.png
+ ############################# Card type
+ type:
+ left: 49
+ top : 300
+ width: { 300 - max(21,card_style.rarity.content_width) }
+ height: 20
+ alignment: middle shrink-overflow
+ z index: 4
+ padding top: 2
+ font:
+ name: { if styling.beleren then "Beleren" else "Matrix" }
+ size: { if styling.beleren then "12" else "14" }
+ color:
+ script:
+ if is_hybrid() then "black" else
+ if styling.grey_hybrid_name and contains(card.card_color, match:"land") and
+ contains(card.card_color, match:"horizontal") or
+ contains(card.card_color, match:"radial") or
+ contains(card.card_color, match:"vertical") and
+ not contains(card.card_color, match:"multicolor") then rgb(0,0,0)
+ else if contains(card.card_color, match:"land") and
+ contains(card.card_color, match:"multicolor") and
+ contains(card.card_color, match:"black") and
+ styling.colored_multicolor_land_name then rgb(255,255,255)
+ else if contains(card.card_color, match:"land") and
+ contains(card.card_color, match:"multicolor") then rgb(0,0,0)
+ else if styling.grey_hybrid_name and contains(card.card_color, match:"hybrid") then rgb(0,0,0)
+ else if contains(card.card_color, match:"artifact") then (
+ if contains(card.card_color, match:"blue") or
+ contains(card.card_color, match:"black") or
+ contains(card.card_color, match:"red") or
+ contains(card.card_color, match:"green") then rgb(255,255,255)
+ else rgb(0,0,0)
+ ) else font_color(card.card_color)
+ separator color: rgb(128,128,128)
+ rarity:
+ right: 353
+ top : 303
+ width: 22
+ height: 22
+ z index: 4
+ alignment: middle right
+ render style: image
+ choice images:
+ # Images based on the set symbol
+ basic land:
+ script:
+ if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
+ else symbol_variation(symbol: set.symbol, variation: "common")
+ common:
+ script:
+ if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
+ else symbol_variation(symbol: set.symbol, variation: "common")
+ uncommon: script: symbol_variation(symbol: set.symbol, variation: "uncommon")
+ rare: script: symbol_variation(symbol: set.symbol, variation: "rare")
+ mythic rare: script: symbol_variation(symbol: set.symbol, variation: "mythic rare")
+ special: script: symbol_variation(symbol: set.symbol, variation: "special")
+ masterpiece: script: symbol_variation(symbol: set.masterpiece_symbol, variation: "mythic rare")
+ ############################# Text box
+ text:
+ left: 66
+ top : 330
+ width: 276
+ height: 135
+ font:
+ name: MPlantin
+ size: 12
+ size: 12
+ scale down to: 6
+ color: black
+ weight: bold
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: 12
+ paragraph height: 46
+ alignment:
+ script:
+ if (styling.center_text == "short text only" and
+ not contains(match:"\n", card.rule_text) and
+ card.flavor_text == "" and
+ card_style.text.content_lines <= 2) or
+ styling.center_text == "always"
+ then "middle center"
+ else "middle left"
+ z index: 4
+ mask: text_mask.png
+ padding left: 0
+ padding right: 0
+ padding bottom: 2
+ line height hard: 1.2
+ line height line: 1.5
+ line height soft: 0.9
+ line height hard max: 1.3
+ line height line max: 1.6
+ watermark:
+ left: 127
+ top : 321
+ width: 132
+ height: 152
+ z index: 3
+ render style: image
+ alignment: middle center
+ include file: /magic-watermarks.mse-include/watermarks
+ ############################# Loyalty
+ loyalty:
+ z index: 5
+ left: 307
+ top: 460
+ width: 13.16
+ height: 34.63
+ alignment: center middle
+ font:
+ name: { if styling.beleren then "Beleren Bold" else "MatrixBoldSmallCaps" }
+ size: { if styling.beleren then 14 else 16 }
+ weight: bold
+ color: rgb(255,255,255)
+ loyalty cost 1:
+ z index: 5
+ left: { if card.loyalty_cost_1 == "0" then 33 else 32 }
+ top: 334
+ width: 13.16
+ height: 34.63
+ alignment: center middle
+ font:
+ name: { if styling.beleren then "Beleren Bold" else "MPlantin" }
+ size: { if styling.beleren then 12 else 11 }
+ weight: bold
+ color: rgb(255,255,255)
+ loyalty cost 2:
+ z index: 5
+ left: { if card.loyalty_cost_2 == "0" then 33 else 32 }
+ top: 381
+ width: 13.16
+ height: 34.63
+ alignment: center middle
+ font:
+ name: { if styling.beleren then "Beleren Bold" else "MPlantin" }
+ size: { if styling.beleren then 12 else 11 }
+ weight: bold
+ color: rgb(255,255,255)
+ loyalty cost 3:
+ z index: 5
+ left: { if card.loyalty_cost_3 == "0" then 33 else 32 }
+ top: 426
+ width: 13.16
+ height: 34.63
+ alignment: center middle
+ font:
+ name: { if styling.beleren then "Beleren Bold" else "MPlantin" }
+ size: { if styling.beleren then 12 else 11 }
+ weight: bold
+ color: rgb(255,255,255)
+ ############################# Card sorting / numbering
+ set code:
+ left: 24
+ top: 498
+ width: 40
+ height: 10
+ z index: 4
+ 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: 4
+ font:
+ name: Beleren Small Caps Bold
+ size: 7.5
+ color: white
+ weight: bold
+ copyright:
+ right: 350
+ top : { if card.loyalty != "" then 495 else 488 }
+ width: 140
+ height: 10
+ visible: {not set.automatic_copyright}
+ alignment: bottom right
+ z index: 4
+ font:
+ name: Matrix
+ size: 7
+ color: white
+ weight: bold
+############################################################## Extra card fields
+extra card field:
+ type: choice
+ name: loyalty box
+ save value: false
+ editable: false
+ choice: loyalty
+extra card field:
+ type: choice
+ name: loyalty cost box 1
+ save value: false
+ editable: false
+ script: loyalty_image(card.loyalty_cost_1)
+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: textbox
+ script: card.card_color
+ editable: false
+ save value: false
+extra card field:
+ type: choice
+ name: foil layer
+ choice: foil
+ save value: false
+ editable: false
+extra card field:
+ type: choice
+ name: typeline
+ script: if is_hybrid() then "colorless, land" else card.card_color
+ editable: false
+ save value: false
+extra card field:
+ type: choice
+ name: stamp
+ script: card.card_color
+ editable: false
+ 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: choice
+ name: artist arrow
+ choice: artist arrow
+ editable: false
+ save value: false
+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: future node
+ default: typesymbol_type(type: card.super_type)
+ card list visible: false
+ show statistics: false
+ choice: artifact
+ choice: creature
+ choice: enchantment
+ choice: fortress
+ choice: instant
+ choice: land
+ choice: multitype
+ choice: planeswalker
+ choice: sorcery
+ choice: aetherprint
+ choice: none
+ description: The card type symbol for this card
+extra card field:
+ type: choice
+ name: foil stamp
+ choice: stamp
+ save value: false
+ editable: 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: legend symbol
+ default: "none"
+ choice: none
+ choice: legend
+ description: the legend symbol for this card.
+extra card style:
+ card code:
+ left: 24
+ top: 488
+ width: 120
+ height: 10
+ z index: 4
+ font:
+ name: Relay-Medium
+ size: 7
+ color: white
+ weight: bold
+ textbox:
+ left: 23
+ top: 320
+ width: 335
+ height: 152
+ render style: image
+ popup style: in place
+ image: { card_textbox() }
+ z index: 2
+ typeline:
+ left: 18
+ top: 17
+ width: 339
+ height: 464
+ render style: image
+ popup style: in place
+ image: { card_typeline() }
+ z index: 3
+ artist arrow:
+ left: { 28 + card_style.set_code.content_width }
+ top : 500
+ width: 12
+ height: 7
+ z index: 4
+ render style: image
+ image: artist_arrow.png
+ foil layer:
+ left: 0
+ top : 0
+ width: 375
+ height: 523
+ z index: 6
+ render style: image
+ image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"}
+ loyalty box:
+ right: 343
+ top: 457
+ width: 60
+ height: 38
+ z index: 4
+ render style: image
+ visible: { card.loyalty !="" }
+ choice images:
+ loyalty: loyalty.png
+ loyalty cost box 1:
+ left: 18
+ top: 332
+ width: 42
+ height: 40
+ z index: 4
+ render style: image
+ visible: { card.loyalty_cost_1 !="" }
+ choice images:
+ loyalty up: loyaltyup.png
+ loyalty down: loyaltydown.png
+ loyalty naught: loyaltynaught.png
+ loyalty cost box 2:
+ left: 18
+ top: 379
+ width: 42
+ height: 40
+ z index: 4
+ render style: image
+ visible: { card.loyalty_cost_2 !="" }
+ choice images:
+ loyalty up: loyaltyup.png
+ loyalty down: loyaltydown.png
+ loyalty naught: loyaltynaught.png
+ loyalty cost box 3:
+ left: 18
+ top: 424
+ width: 42
+ height: 40
+ z index: 4
+ render style: image
+ visible: { card.loyalty_cost_3 !="" }
+ choice images:
+ loyalty up: loyaltyup.png
+ loyalty down: loyaltydown.png
+ loyalty naught: loyaltynaught.png
+ colon 1:
+ left: 59
+ top: 346
+ width: 5
+ height: 10
+ z index: 4
+ font:
+ name: MPlantin
+ size: 15
+ scale down to: 15
+ color: rgb(0,0,0)
+ alignment: middle center
+ visible: { card.loyalty_cost_1 !="" }
+ colon 2:
+ left: 59
+ top: 392
+ width: 5
+ height: 10
+ z index: 4
+ font:
+ name: MPlantin
+ size: 15
+ scale down to: 15
+ color: rgb(0,0,0)
+ alignment: middle center
+ visible: { card.loyalty_cost_2 !="" }
+ colon 3:
+ left: 59
+ top: 437
+ width: 5
+ height: 10
+ z index: 4
+ font:
+ name: MPlantin
+ size: 15
+ scale down to: 15
+ color: rgb(0,0,0)
+ alignment: middle center
+ visible: { card.loyalty_cost_3 !="" }
+ future node:
+ left: { if styling.original_symbols then 0 else 19 }
+ top: { if styling.original_symbols then 0 else 18 }
+ width: { if styling.original_symbols then 0 else 30 }
+ height: { if styling.original_symbols then 0 else 30 }
+ z index: 4
+ render style: image
+ choice images:
+ artifact: artifact.png
+ creature: creature.png
+ enchantment: enchantment.png
+ fortress: fortress.png
+ instant: instant.png
+ land: land.png
+ multitype: multitype.png
+ sorcery: sorcery.png
+ planeswalker: planeswalker.png
+ aetherprint: aetherprint.png
+ stamp:
+ left: 170
+ top: 472
+ width: 36.5
+ height: 22.5
+ z index: 3
+ visible: { is_rare() and styling.use_holofoil_stamps }
+ render style: image
+ mask: futurestampmask.png
+ image: { card_stamp() }
+ foil stamp:
+ left: 170
+ top: 475
+ width: 36.5
+ height: 22.5
+ z index: 4
+ visible: { is_rare() and styling.use_holofoil_stamps }
+ render style: image
+ image: foil_stamp.png
+ auto copyright:
+ right: 350
+ top : { if card.loyalty != "" then 495 else 488 }
+ width: 140
+ height: 10
+ visible: {set.automatic_copyright}
+ alignment: bottom right
+ z index: 4
+ font:
+ name: Matrix
+ size: 7
+ color: white
+ legend symbol:
+ left: 19
+ top: 296
+ width: 29
+ height: 29
+ z index: 6
+ alignment: middle right
+ render style: image
+ choice images:
+ legend: legend.png
diff --git a/data/magic-m15-future-planeswalker.mse-style/ucard.jpg b/data/magic-m15-future-planeswalker.mse-style/ucard.jpg
new file mode 100644
index 000000000..749109fcf
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/ucard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/ulcard.jpg b/data/magic-m15-future-planeswalker.mse-style/ulcard.jpg
new file mode 100644
index 000000000..12b0d1d3a
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/ulcard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/ultypeline.png b/data/magic-m15-future-planeswalker.mse-style/ultypeline.png
new file mode 100644
index 000000000..6bb583926
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/ultypeline.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/wcard.jpg b/data/magic-m15-future-planeswalker.mse-style/wcard.jpg
new file mode 100644
index 000000000..974d8caf2
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/wcard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/wlcard.jpg b/data/magic-m15-future-planeswalker.mse-style/wlcard.jpg
new file mode 100644
index 000000000..625046190
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/wlcard.jpg differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/wltypeline.png b/data/magic-m15-future-planeswalker.mse-style/wltypeline.png
new file mode 100644
index 000000000..4b73046d3
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/wltypeline.png differ
diff --git a/data/magic-m15-future-planeswalker.mse-style/wtypeline.png b/data/magic-m15-future-planeswalker.mse-style/wtypeline.png
new file mode 100644
index 000000000..1a7994caf
Binary files /dev/null and b/data/magic-m15-future-planeswalker.mse-style/wtypeline.png differ
diff --git a/data/magic-m15-future.mse-style/mask_image_short.png b/data/magic-m15-future.mse-style/mask_image_short.png
new file mode 100644
index 000000000..5e7687943
Binary files /dev/null and b/data/magic-m15-future.mse-style/mask_image_short.png differ
diff --git a/data/magic-m15-future.mse-style/style b/data/magic-m15-future.mse-style/style
index 5352cfa70..75f995765 100644
--- a/data/magic-m15-future.mse-style/style
+++ b/data/magic-m15-future.mse-style/style
@@ -332,10 +332,10 @@ card style:
planeswalker: { if styling.original_symbols then "/magic-future-common.mse-include/planeswalker_" + typesymbol_color(value) + ".png" }
############################# Image
image:
- left: 32
+ left: 30
top: 44
- width: 327
- height: 310
+ width: 328
+ height: 309
z index: 1
mask: mask_image.png
############################# Card type
diff --git a/data/magic-m15-godzilla.mse-style/style b/data/magic-m15-godzilla.mse-style/style
index 8fe9f824a..e8d9eb5b6 100644
--- a/data/magic-m15-godzilla.mse-style/style
+++ b/data/magic-m15-godzilla.mse-style/style
@@ -99,7 +99,29 @@ init script:
ancestral_mana := { styling.ancestral_mana_symbols }
has_identity := { styling.color_indicator_dot }
is_unsorted := {styling.remove_from_autocount}
+ use_main_rarity := { contains(set.mainframe_rarity_name, match: ".png")}
+ un_png := replace@(match:".png", replace: "")
+ alt_rarity := {styling.alt_rarity_color != ""}
+ alt_rarity_color := {
+ string := "83,67,53:177,150,131:0,0,0:0,0,0:0.07:"
+ if match(styling.alt_rarity_color, match:":$") then string := styling.alt_rarity_color
+ colons := length(filter_text(string, match:":"))
+ output := split_text(string, match:",|:")
+ splits := split_text(string, match:":")
+ if colons == 4
+ then output := split_text(string+"0.07:", match:",|:")
+ if colons == 3
+ then output := split_text(string+splits[2]+"0.07:", match:",|:")
+ else if colons == 2
+ 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)}
+
############################################################## Set info fields
set info style:
symbol:
@@ -136,6 +158,10 @@ styling field:
type: text
name: shrink typeline text
description: Shrinks the typeline's font size
+styling field:
+ type: text
+ name: alt rarity color
+ description: Use a custom color for the rarity symbol. Formatted as "R1,G1,B1:R2,G2,B2:..." 1 and 2 are fill color, 3 and 4 border color
styling field:
type: text
name: flavor bar offset
@@ -378,17 +404,40 @@ card style:
# Images based on the set symbol
basic land:
script:
- if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
+ if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "c.png"
+ else if alt_rarity() then alt_symbol()
+ 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 styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
+ if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "c.png"
+ else if alt_rarity() then alt_symbol()
+ else if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
else symbol_variation(symbol: set.symbol, variation: "common")
- uncommon: script: symbol_variation(symbol: set.symbol, variation: "uncommon")
- rare: script: symbol_variation(symbol: set.symbol, variation: "rare")
- mythic rare: script: symbol_variation(symbol: set.symbol, variation: "mythic rare")
- special: script: symbol_variation(symbol: set.symbol, variation: "special")
- masterpiece: script: symbol_variation(symbol: set.masterpiece_symbol, variation: "mythic rare")
+ uncommon:
+ script:
+ if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "u.png"
+ else if alt_rarity() then alt_symbol()
+ 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 if alt_rarity() then alt_symbol()
+ 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 if alt_rarity() then alt_symbol()
+ 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 if alt_rarity() then alt_symbol()
+ 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: 29
diff --git a/data/magic-m15-imageupload.mse-style/acard.png b/data/magic-m15-imageupload.mse-style/acard.png
new file mode 100644
index 000000000..d8f2d8dfd
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/acard.png differ
diff --git a/data/magic-m15-imageupload.mse-style/acard2.png b/data/magic-m15-imageupload.mse-style/acard2.png
new file mode 100644
index 000000000..6f1d9257e
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/acard2.png differ
diff --git a/data/magic-m15-imageupload.mse-style/artifact_blend_card.png b/data/magic-m15-imageupload.mse-style/artifact_blend_card.png
new file mode 100644
index 000000000..b42fc7b6f
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/artifact_blend_card.png differ
diff --git a/data/magic-m15-imageupload.mse-style/artifact_blend_card2.png b/data/magic-m15-imageupload.mse-style/artifact_blend_card2.png
new file mode 100644
index 000000000..6d373f3d2
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/artifact_blend_card2.png differ
diff --git a/data/magic-m15-imageupload.mse-style/artist_arrow.png b/data/magic-m15-imageupload.mse-style/artist_arrow.png
new file mode 100644
index 000000000..ea39aa438
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/artist_arrow.png differ
diff --git a/data/magic-m15-imageupload.mse-style/bcard.png b/data/magic-m15-imageupload.mse-style/bcard.png
new file mode 100644
index 000000000..3f6f36829
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/bcard.png differ
diff --git a/data/magic-m15-imageupload.mse-style/bcard2.png b/data/magic-m15-imageupload.mse-style/bcard2.png
new file mode 100644
index 000000000..590488018
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/bcard2.png differ
diff --git a/data/magic-m15-imageupload.mse-style/card-sample.png b/data/magic-m15-imageupload.mse-style/card-sample.png
new file mode 100644
index 000000000..8ed941717
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/card-sample.png differ
diff --git a/data/magic-m15-imageupload.mse-style/card-sample2.png b/data/magic-m15-imageupload.mse-style/card-sample2.png
new file mode 100644
index 000000000..cd19868f5
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/card-sample2.png differ
diff --git a/data/magic-m15-imageupload.mse-style/ccard.png b/data/magic-m15-imageupload.mse-style/ccard.png
new file mode 100644
index 000000000..70261f2b0
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/ccard.png differ
diff --git a/data/magic-m15-imageupload.mse-style/ccard2.png b/data/magic-m15-imageupload.mse-style/ccard2.png
new file mode 100644
index 000000000..6f1d9257e
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/ccard2.png differ
diff --git a/data/magic-m15-imageupload.mse-style/correct.png b/data/magic-m15-imageupload.mse-style/correct.png
new file mode 100644
index 000000000..99405a4d5
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/correct.png differ
diff --git a/data/magic-m15-imageupload.mse-style/foil_mask.png b/data/magic-m15-imageupload.mse-style/foil_mask.png
new file mode 100644
index 000000000..3f647e2d3
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/foil_mask.png differ
diff --git a/data/magic-m15-imageupload.mse-style/foil_mask_rare.png b/data/magic-m15-imageupload.mse-style/foil_mask_rare.png
new file mode 100644
index 000000000..2633ea6d1
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/foil_mask_rare.png differ
diff --git a/data/magic-m15-imageupload.mse-style/frame_mask.png b/data/magic-m15-imageupload.mse-style/frame_mask.png
new file mode 100644
index 000000000..ceeecd357
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/frame_mask.png differ
diff --git a/data/magic-m15-imageupload.mse-style/frame_mask_gold.png b/data/magic-m15-imageupload.mse-style/frame_mask_gold.png
new file mode 100644
index 000000000..0d7bdb7f1
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/frame_mask_gold.png differ
diff --git a/data/magic-m15-imageupload.mse-style/frame_mask_rare.png b/data/magic-m15-imageupload.mse-style/frame_mask_rare.png
new file mode 100644
index 000000000..6db18298c
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/frame_mask_rare.png differ
diff --git a/data/magic-m15-imageupload.mse-style/frame_mask_rare_gold.png b/data/magic-m15-imageupload.mse-style/frame_mask_rare_gold.png
new file mode 100644
index 000000000..d5fa49af8
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/frame_mask_rare_gold.png differ
diff --git a/data/magic-m15-imageupload.mse-style/gcard.png b/data/magic-m15-imageupload.mse-style/gcard.png
new file mode 100644
index 000000000..27fa9d4bd
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/gcard.png differ
diff --git a/data/magic-m15-imageupload.mse-style/gcard2.png b/data/magic-m15-imageupload.mse-style/gcard2.png
new file mode 100644
index 000000000..f5d656f2c
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/gcard2.png differ
diff --git a/data/magic-m15-imageupload.mse-style/hybrid_blend_card.png b/data/magic-m15-imageupload.mse-style/hybrid_blend_card.png
new file mode 100644
index 000000000..8ed84a3d5
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/hybrid_blend_card.png differ
diff --git a/data/magic-m15-imageupload.mse-style/hybrid_blend_card2.png b/data/magic-m15-imageupload.mse-style/hybrid_blend_card2.png
new file mode 100644
index 000000000..8ed84a3d5
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/hybrid_blend_card2.png differ
diff --git a/data/magic-m15-imageupload.mse-style/image_mask.png b/data/magic-m15-imageupload.mse-style/image_mask.png
new file mode 100644
index 000000000..2639656ca
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/image_mask.png differ
diff --git a/data/magic-m15-imageupload.mse-style/image_mask_rare.png b/data/magic-m15-imageupload.mse-style/image_mask_rare.png
new file mode 100644
index 000000000..2639656ca
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/image_mask_rare.png differ
diff --git a/data/magic-m15-imageupload.mse-style/mcard.png b/data/magic-m15-imageupload.mse-style/mcard.png
new file mode 100644
index 000000000..e2f30ed40
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/mcard.png differ
diff --git a/data/magic-m15-imageupload.mse-style/mcard2.png b/data/magic-m15-imageupload.mse-style/mcard2.png
new file mode 100644
index 000000000..d0636e62a
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/mcard2.png differ
diff --git a/data/magic-m15-imageupload.mse-style/multicolor_blend_card.png b/data/magic-m15-imageupload.mse-style/multicolor_blend_card.png
new file mode 100644
index 000000000..3a7e80420
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/multicolor_blend_card.png differ
diff --git a/data/magic-m15-imageupload.mse-style/multicolor_blend_card2.png b/data/magic-m15-imageupload.mse-style/multicolor_blend_card2.png
new file mode 100644
index 000000000..3a7e80420
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/multicolor_blend_card2.png differ
diff --git a/data/magic-m15-imageupload.mse-style/rcard.png b/data/magic-m15-imageupload.mse-style/rcard.png
new file mode 100644
index 000000000..b3b044920
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/rcard.png differ
diff --git a/data/magic-m15-imageupload.mse-style/rcard2.png b/data/magic-m15-imageupload.mse-style/rcard2.png
new file mode 100644
index 000000000..7ec6d76bc
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/rcard2.png differ
diff --git a/data/magic-m15-imageupload.mse-style/style b/data/magic-m15-imageupload.mse-style/style
new file mode 100644
index 000000000..fbcfac41c
--- /dev/null
+++ b/data/magic-m15-imageupload.mse-style/style
@@ -0,0 +1,166 @@
+mse version: 2.0.0
+game: magic
+short name: Image Only
+full name: Image Upload
+icon: card-sample.png
+installer group: magic/m15 style/normal cards
+position hint: 900
+
+version: 2018-02-08
+depends on:
+ package: magic.mse-game
+ version: 2014-06-25
+depends on:
+ package: magic-default-image.mse-include
+ version: 2007-09-23
+depends on:
+ package: magic-watermarks.mse-include
+ version: 2007-09-23
+depends on:
+ package: magic-identity-new.mse-include
+ version: 2012-01-22
+depends on:
+ package: magic-mana-large.mse-symbol-font
+ version: 2007-09-23
+depends on:
+ package: magic-mana-small.mse-symbol-font
+ version: 2007-09-23
+
+card width: 375
+card height: 523
+card dpi: 150
+############################################################## Extra scripts
+init script:
+ # Load scripts for image box
+ include file: /magic-default-image.mse-include/scripts
+
+ # Should hybrids have a grey name?
+ mask_hybrid_with_land := { styling.grey_hybrid_name }
+
+ #Should multicolor lands with basic land types have a colored name?
+
+ template_prefix := [card: "" card2: "" pt: ""]
+ template_suffix := [card: "card.png" card2: "card2.png" pt: "pt.png"]
+ template := { template_prefix[type] + input + template_suffix[type] }
+ # Use land templates for previews because they show more contrast
+ hybrid_previews := "land,hybrid"
+
+ card_background2 := { color_background(type:"card2", base_hybrid:card_hybrid) }
+
+ # Use the normal tap symbol
+ mana_t := {
+ if styling.tap_symbol == "old" then "old"
+ else if styling.tap_symbol == "diagonal T" then "older"
+ else "new"
+ }
+
+ # Use guild mana symbols?
+ guild_mana := { styling.use_guild_mana_symbols }
+
+ # Is the card a promo card?
+ is_promo := { styling.promo }
+
+ is_stamped := { styling.holofoil_stamps }
+ template := { input + "{type}.png" }
+ land_template := { input + "{type}.png" }
+ is_unsorted := {styling.remove_from_autocount}
+
+############################################################## Set info fields
+############################################################## Extra style options
+styling field:
+ type: boolean
+ name: holofoil stamps
+ description: Toggles the holofoil stamp
+styling field:
+ type: boolean
+ name: black names
+ description: Uses a black font for the card name.
+ 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: colored multicolor land name
+ description: Use a colored background for the name and type on multicolor land cards with a basic land type. This is done on real cards.
+styling field:
+ type: boolean
+ name: use guild mana symbols
+ description: Use the Ravnica guild symbols instead of the official half/half circles for hybrid mana.
+ initial: no
+styling field:
+ type: choice
+ name: tap symbol
+ description: What tap and untap symbols should be used on cards?
+ initial: modern
+ choice: modern
+ choice: old
+ choice: diagonal T
+styling field:
+ type: package choice
+ name: text box mana symbols
+ match: magic-mana-*.mse-symbol-font
+ initial: magic-mana-small.mse-symbol-font
+styling field:
+ type: choice
+ name: center text
+ description: When to center text (short text only means only on one-line cards with no flavor text)
+ choice: always
+ choice: short text only
+ choice: never
+ initial: never
+styling field:
+ type: boolean
+ name: promo
+ description: Is this card a promo card, with the "P" rarity?
+ initial: no
+styling field:
+ type: boolean
+ name: inverted common symbol
+ description: Should the common rarity symbol be inverted, like in Coldsnap?
+ initial: no
+styling field:
+ type: package choice
+ name: overlay
+ description: Should there be an overlay applied, such as foil?
+ match: magic-overlay-*.mse-include
+ required: false
+styling style:
+ use guild mana symbols:
+ choice images:
+ yes: /magic-mana-small.mse-symbol-font/mana_guild_rg.png
+ no: /magic-mana-small.mse-symbol-font/mana_rg.png
+ tap symbol:
+ render style: both
+ choice images:
+ modern: /magic-mana-large.mse-symbol-font/mana_t.png
+ old: /magic-mana-large.mse-symbol-font/mana_t_old.png
+ diagonal T: /magic-mana-large.mse-symbol-font/mana_t_older.png
+ center text:
+ render style: both
+ choice images:
+ always: /magic.mse-game/icons/center-all-text.png
+ short text only: /magic.mse-game/icons/center-short-text.png
+ never: /magic.mse-game/icons/center-no-text.png
+ inverted common symbol:
+ choice images:
+ no: { symbol_variation(symbol: set.symbol, variation: "common") }
+ yes: { symbol_variation(symbol: set.symbol, variation: "invertedcommon") }
+############################################################## Card fields
+card style:
+ ############################# Image
+ image:
+ left: 0
+ top: 0
+ width: 375
+ height: 523
+ z index: 0
+ default: {default_image(card.card_color)}
+ mask: { if is_stamped() then "image_mask_rare.png" else "image_mask.png" }
+############################################################## Extra card fields
diff --git a/data/magic-m15-imageupload.mse-style/ucard.png b/data/magic-m15-imageupload.mse-style/ucard.png
new file mode 100644
index 000000000..1369273b0
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/ucard.png differ
diff --git a/data/magic-m15-imageupload.mse-style/ucard2.png b/data/magic-m15-imageupload.mse-style/ucard2.png
new file mode 100644
index 000000000..1a5c4efa5
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/ucard2.png differ
diff --git a/data/magic-m15-imageupload.mse-style/wcard.png b/data/magic-m15-imageupload.mse-style/wcard.png
new file mode 100644
index 000000000..bf0b6391e
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/wcard.png differ
diff --git a/data/magic-m15-imageupload.mse-style/wcard2.png b/data/magic-m15-imageupload.mse-style/wcard2.png
new file mode 100644
index 000000000..3a09caca1
Binary files /dev/null and b/data/magic-m15-imageupload.mse-style/wcard2.png differ
diff --git a/data/magic-m15-outlaws-planeswalker.mse-style/style b/data/magic-m15-outlaws-planeswalker.mse-style/style
index d7504dde3..fb351aee9 100644
--- a/data/magic-m15-outlaws-planeswalker.mse-style/style
+++ b/data/magic-m15-outlaws-planeswalker.mse-style/style
@@ -88,7 +88,7 @@ init script:
replace@(match:"\n", replace:"")+
filter_text@(match:"\n")
- text_size := { 14 -(if styling.separated_text_size = "" then 0 else if contains(styling.separated_text_size, match: ".5") then to_int(split_text(match:".5", styling.separated_text_size).0) else styling.separated_text_size) }
+ text_size := { 14 -(if styling.separated_text_size == "" then 0 else if contains(styling.separated_text_size, match: ".5") then to_int(split_text(match:".5", styling.separated_text_size).0) else styling.separated_text_size) }
level_three := { contains(styling.use_separate_textboxes, match: "three") }
level_four := { contains(styling.use_separate_textboxes, match: "four") }
level_two := { contains(styling.use_separate_textboxes, match: "two") }
@@ -312,7 +312,7 @@ card style:
color: rgba(0,0,0,0)
separator color: red
rarity:
- right: 202
+ right: {188 + 0.5*(card_style.rarity.content_width)}
top: 476
width: 44
height: 22
@@ -577,7 +577,7 @@ extra card field:
save value: false
editable: false
show statistics: false
-extra card field
+extra card field:
type: text
name: replace type
editable: false
diff --git a/data/magic-m15-outlaws-tokens.mse-style/style b/data/magic-m15-outlaws-tokens.mse-style/style
index 26ab51d21..cd4a55342 100644
--- a/data/magic-m15-outlaws-tokens.mse-style/style
+++ b/data/magic-m15-outlaws-tokens.mse-style/style
@@ -263,7 +263,7 @@ card style:
color: rgba(0,0,0,0)
separator color: red
rarity:
- right: 202
+ right: {188 + 0.5*(card_style.rarity.content_width)}
top: 476
width: 44
height: 22
diff --git a/data/magic-m15-outlaws.mse-style/style b/data/magic-m15-outlaws.mse-style/style
index 07b03ec6c..be3857021 100644
--- a/data/magic-m15-outlaws.mse-style/style
+++ b/data/magic-m15-outlaws.mse-style/style
@@ -262,7 +262,7 @@ card style:
color: rgba(0,0,0,0)
separator color: red
rarity:
- right: 202
+ right: {188 + 0.5*(card_style.rarity.content_width)}
top: 476
width: 44
height: 22
@@ -433,17 +433,18 @@ extra card field:
editable: false
save value: false
choice: backboard
-extra card field:
- type: text
- name: bounty
- editable: true
- save value: true
extra card field:
type: choice
name: target
editable: false
save value: false
choice: target
+extra card field:
+ type: text
+ name: bounty
+ editable: true
+ save value: true
+
extra card style:
card code:
left: 24
diff --git a/data/magic-m15-promo-dka.mse-style/style b/data/magic-m15-promo-dka.mse-style/style
index 226ff1bac..e72552034 100644
--- a/data/magic-m15-promo-dka.mse-style/style
+++ b/data/magic-m15-promo-dka.mse-style/style
@@ -61,6 +61,9 @@ init script:
is_promo := { styling.promo }
has_identity := { styling.color_indicator_dot }
is_unsorted := {styling.remove_from_autocount}
+ chop_top := {if comma_count(styling.chop_text) == ",," then split_text(match:",", styling.chop_text).0 else "0"}
+ chop_bot := {if comma_count(styling.chop_text) == ",," then split_text(match:",", styling.chop_text).1 else "0"}
+
############################################################## Set info fields
set info style:
symbol:
@@ -71,6 +74,10 @@ set info style:
fill color: rgb(255,255,255)
border color: rgb(0,0,0)
############################################################## Extra style options
+styling field:
+ type: text
+ name: chop text
+ description: Shrinks the textbox, formatted as "top,bottom". This must end in a comma.
styling field:
type: boolean
name: color indicator dot
@@ -279,9 +286,9 @@ card style:
############################# Text box
text:
left: 29
- top: 359
+ top: {359 - (-chop_top()) }
width: 314
- height: 122
+ bottom: { 481 - chop_bot() }
font:
name: MPlantin
italic name: MPlantin-Italic
diff --git a/data/magic-m15-showcase-monster-manual.mse-style/style b/data/magic-m15-showcase-monster-manual.mse-style/style
index b7e68f168..94d18095c 100644
--- a/data/magic-m15-showcase-monster-manual.mse-style/style
+++ b/data/magic-m15-showcase-monster-manual.mse-style/style
@@ -469,10 +469,10 @@ card style:
height: 10
z index: 2
visible: {not set.automatic_copyright}
- alignment: middle right shrink-overflow
+ alignment: middle right
font:
- name: Matrix
- size: 7
+ name: MPlantin
+ size: 6.5
color: white
weight: bold
############################################################## Extra card fields
@@ -606,11 +606,11 @@ extra card style:
width: 140
height: 10
z index: 2
- alignment: middle right shrink-overflow
+ alignment: middle right
visible: {set.automatic_copyright}
font:
- name: Matrix
- size: 7
+ name: MPlantin
+ size: 6.5
color: white
weight: bold
flavor bar:
diff --git a/data/magic-m15-showcase-strixhaven-jp.mse-style/style b/data/magic-m15-showcase-strixhaven-jp.mse-style/style
index ed751f3b5..6783c8dfc 100644
--- a/data/magic-m15-showcase-strixhaven-jp.mse-style/style
+++ b/data/magic-m15-showcase-strixhaven-jp.mse-style/style
@@ -243,6 +243,8 @@ init script:
use_main_rarity := { contains(set.mainframe_rarity_name, match: ".png")}
un_png := replace@(match:".png", replace: "")
jp_name_length := {card_style.name.content_height * length(card.name)}
+ shown_cr := {if set.automatic_copyright then set.copyright != "" else card.copyright != ""}
+ use_vorthos := {true}
############################################################## Set info fields
set info style:
symbol:
@@ -270,6 +272,10 @@ styling field:
type: text
name: shrink typeline text
description: Shrinks type X pixels
+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: boolean
name: use holofoil stamps
@@ -426,6 +432,13 @@ card style:
z index: -1
default: {default_image(card.card_color)}
mask: image_mask.png
+ mainframe image:
+ 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: 28
@@ -575,7 +588,7 @@ card style:
height: 10
z index: 2
visible: {not set.automatic_copyright}
- alignment: middle right shrink-overflow
+ alignment: middle right
font:
name: Matrix
size: 7
@@ -674,6 +687,13 @@ extra card field:
type: text
name: jp name
script: forward_editor(field: card.name)
+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
@@ -787,7 +807,7 @@ extra card style:
width: 140
height: 10
z index: 2
- alignment: middle right shrink-overflow
+ alignment: middle right
visible: {set.automatic_copyright}
font:
name: Matrix
@@ -821,3 +841,15 @@ extra card style:
line height soft: 0.9
line height hard max: {if is_modal(card.rule_text) then 1.0 else 1.3 }
line height line max: 1.6
+ vorthos box:
+ right: { if card.pt != "" then 275 else 350 }
+ top: {if card.pt == "" and shown_cr() then 502 else 488}
+ width: { 70 }
+ height: {if use_vorthos() then 10 else 0}
+ z index: 3
+ alignment: middle right
+ font:
+ name: Relay-Medium
+ size: 7
+ color: white
+ weight: bold
diff --git a/data/magic-m15-token-invention.mse-style/acard.png b/data/magic-m15-token-invention.mse-style/acard.png
new file mode 100644
index 000000000..b0f8baac7
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/acard.png differ
diff --git a/data/magic-m15-token-invention.mse-style/artifact_blend_card.png b/data/magic-m15-token-invention.mse-style/artifact_blend_card.png
new file mode 100644
index 000000000..ca57b01d4
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/artifact_blend_card.png differ
diff --git a/data/magic-m15-token-invention.mse-style/artifact_blend_identity.png b/data/magic-m15-token-invention.mse-style/artifact_blend_identity.png
new file mode 100644
index 000000000..aa9aeeec0
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/artifact_blend_identity.png differ
diff --git a/data/magic-m15-token-invention.mse-style/artifact_blend_pt.png b/data/magic-m15-token-invention.mse-style/artifact_blend_pt.png
new file mode 100644
index 000000000..45eb6f3b1
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/artifact_blend_pt.png differ
diff --git a/data/magic-m15-token-invention.mse-style/artifact_blend_stamp.png b/data/magic-m15-token-invention.mse-style/artifact_blend_stamp.png
new file mode 100644
index 000000000..857df552a
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/artifact_blend_stamp.png differ
diff --git a/data/magic-m15-token-invention.mse-style/artist_arrow.png b/data/magic-m15-token-invention.mse-style/artist_arrow.png
new file mode 100644
index 000000000..ea39aa438
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/artist_arrow.png differ
diff --git a/data/magic-m15-token-invention.mse-style/bcard.png b/data/magic-m15-token-invention.mse-style/bcard.png
new file mode 100644
index 000000000..821b49d52
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/bcard.png differ
diff --git a/data/magic-m15-token-invention.mse-style/border_mask.png b/data/magic-m15-token-invention.mse-style/border_mask.png
new file mode 100644
index 000000000..4a53f2699
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/border_mask.png differ
diff --git a/data/magic-m15-token-invention.mse-style/build.bat b/data/magic-m15-token-invention.mse-style/build.bat
new file mode 100644
index 000000000..18f75f711
--- /dev/null
+++ b/data/magic-m15-token-invention.mse-style/build.bat
@@ -0,0 +1,7 @@
+cd ..
+
+cd ..
+
+mse --create-installer magic-m15-devoid.mse-style magic.mse-game magic-blends.mse-include magic-mana-small.mse-symbol-font magic-mana-large.mse-symbol-font magic-watermarks.mse-include magic-default-image.mse-include magic-identity-new.mse-include
+
+ren "magic-m15-devoid.mse-installer" "Magic - M15 Devoid.mse-installer"
\ No newline at end of file
diff --git a/data/magic-m15-token-invention.mse-style/card-sample.png b/data/magic-m15-token-invention.mse-style/card-sample.png
new file mode 100644
index 000000000..058bdc295
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/card-sample.png differ
diff --git a/data/magic-m15-token-invention.mse-style/ccard.png b/data/magic-m15-token-invention.mse-style/ccard.png
new file mode 100644
index 000000000..3b24b0275
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/ccard.png differ
diff --git a/data/magic-m15-token-invention.mse-style/foil_mask.png b/data/magic-m15-token-invention.mse-style/foil_mask.png
new file mode 100644
index 000000000..3f647e2d3
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/foil_mask.png differ
diff --git a/data/magic-m15-token-invention.mse-style/foil_mask_rare.png b/data/magic-m15-token-invention.mse-style/foil_mask_rare.png
new file mode 100644
index 000000000..2633ea6d1
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/foil_mask_rare.png differ
diff --git a/data/magic-m15-token-invention.mse-style/gcard.png b/data/magic-m15-token-invention.mse-style/gcard.png
new file mode 100644
index 000000000..50488e8a3
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/gcard.png differ
diff --git a/data/magic-m15-token-invention.mse-style/hybrid_blend_card.png b/data/magic-m15-token-invention.mse-style/hybrid_blend_card.png
new file mode 100644
index 000000000..5c7f03699
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/hybrid_blend_card.png differ
diff --git a/data/magic-m15-token-invention.mse-style/hybrid_blend_identity.png b/data/magic-m15-token-invention.mse-style/hybrid_blend_identity.png
new file mode 100644
index 000000000..aa9aeeec0
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/hybrid_blend_identity.png differ
diff --git a/data/magic-m15-token-invention.mse-style/hybrid_blend_pt.png b/data/magic-m15-token-invention.mse-style/hybrid_blend_pt.png
new file mode 100644
index 000000000..b209ddfbf
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/hybrid_blend_pt.png differ
diff --git a/data/magic-m15-token-invention.mse-style/hybrid_blend_stamp.png b/data/magic-m15-token-invention.mse-style/hybrid_blend_stamp.png
new file mode 100644
index 000000000..4fa69d857
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/hybrid_blend_stamp.png differ
diff --git a/data/magic-m15-token-invention.mse-style/image_mask.png b/data/magic-m15-token-invention.mse-style/image_mask.png
new file mode 100644
index 000000000..461d25ebb
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/image_mask.png differ
diff --git a/data/magic-m15-token-invention.mse-style/image_mask1.png b/data/magic-m15-token-invention.mse-style/image_mask1.png
new file mode 100644
index 000000000..5a551c103
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/image_mask1.png differ
diff --git a/data/magic-m15-token-invention.mse-style/image_mask_inv.png b/data/magic-m15-token-invention.mse-style/image_mask_inv.png
new file mode 100644
index 000000000..ab08f270a
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/image_mask_inv.png differ
diff --git a/data/magic-m15-token-invention.mse-style/image_mask_inv1.png b/data/magic-m15-token-invention.mse-style/image_mask_inv1.png
new file mode 100644
index 000000000..72ec29131
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/image_mask_inv1.png differ
diff --git a/data/magic-m15-token-invention.mse-style/mcard.png b/data/magic-m15-token-invention.mse-style/mcard.png
new file mode 100644
index 000000000..b05b12b6d
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/mcard.png differ
diff --git a/data/magic-m15-token-invention.mse-style/multicolor_blend_card.png b/data/magic-m15-token-invention.mse-style/multicolor_blend_card.png
new file mode 100644
index 000000000..8d27bf8dc
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/multicolor_blend_card.png differ
diff --git a/data/magic-m15-token-invention.mse-style/multicolor_blend_identity.png b/data/magic-m15-token-invention.mse-style/multicolor_blend_identity.png
new file mode 100644
index 000000000..aa9aeeec0
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/multicolor_blend_identity.png differ
diff --git a/data/magic-m15-token-invention.mse-style/multicolor_blend_pt.png b/data/magic-m15-token-invention.mse-style/multicolor_blend_pt.png
new file mode 100644
index 000000000..b209ddfbf
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/multicolor_blend_pt.png differ
diff --git a/data/magic-m15-token-invention.mse-style/multicolor_blend_stamp.png b/data/magic-m15-token-invention.mse-style/multicolor_blend_stamp.png
new file mode 100644
index 000000000..bb0de72d6
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/multicolor_blend_stamp.png differ
diff --git a/data/magic-m15-token-invention.mse-style/pt.png b/data/magic-m15-token-invention.mse-style/pt.png
new file mode 100644
index 000000000..0f52658a7
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/pt.png differ
diff --git a/data/magic-m15-token-invention.mse-style/rcard.png b/data/magic-m15-token-invention.mse-style/rcard.png
new file mode 100644
index 000000000..1914387de
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/rcard.png differ
diff --git a/data/magic-m15-token-invention.mse-style/style b/data/magic-m15-token-invention.mse-style/style
new file mode 100644
index 000000000..bc19cf95a
--- /dev/null
+++ b/data/magic-m15-token-invention.mse-style/style
@@ -0,0 +1,471 @@
+mse version: 2.0.0
+game: magic
+short name: M15 Invention
+full name: Invention Tokens
+icon: card-sample.png
+installer group: magic/m15 style/devoid cards
+position hint: 092
+
+version: 2018-02-09
+depends on:
+ package: magic.mse-game
+ version: 2014-06-25
+depends on:
+ package: magic-default-image.mse-include
+ version: 2007-09-23
+depends on:
+ package: magic-watermarks.mse-include
+ version: 2007-09-23
+depends on:
+ package: magic-identity-new.mse-include
+ version: 2012-01-22
+depends on:
+ package: magic-mana-large.mse-symbol-font
+ version: 2007-09-23
+depends on:
+ package: magic-mana-small.mse-symbol-font
+ version: 2007-09-23
+
+card width: 375
+card height: 523
+card dpi: 150
+############################################################## Extra scripts
+init script:
+ # Load scripts for image box
+ include file: /magic-default-image.mse-include/scripts
+
+ # Should hybrids have a grey name?
+ mask_hybrid_with_land := { styling.grey_hybrid_name }
+
+ #Should multicolor lands with basic land types have a colored name?
+ mask_multi_land_with_color := { styling.colored_multicolor_land_name }
+
+ template_prefix := [card: "" card2: "" pt: "" stamp: "" identity: "/magic-identity-new.mse-include/"]
+ template_suffix := [card: "card.png" card2: "card2.jpg" pt: "pt.png", stamp: "stamp.jpg" identity: "identity.png"]
+ template := {
+ if (type == "pt") then "pt.png"
+ else if (type == "stamp") then "stamp.png"
+ else template_prefix[type] + input + template_suffix[type]
+ }
+ land_template := template
+ # Use land templates for previews because they show more contrast
+ hybrid_previews := "land,hybrid"
+
+ # Use the normal tap symbol
+ mana_t := {
+ if styling.tap_symbol == "old" then "old"
+ else if styling.tap_symbol == "diagonal T" then "older"
+ else "new"
+ }
+
+ # Use guild mana symbols?
+ guild_mana := { styling.use_guild_mana_symbols }
+
+ # Is the card a promo card?
+ is_promo := { styling.promo }
+ has_identity := { styling.color_indicator_dot }
+ is_unsorted := {styling.remove_from_autocount}
+ card_shape := {"token"}
+ shrink_name := {if styling.shrink_name_text != "" then to_int(styling.shrink_name_text) else 0 }
+
+############################################################## 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: shrink name text
+ description: Reduces the name text N points.
+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: color indicator dot
+ description: Use the color indicator dot
+ 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: colored multicolor land name
+ description: Use a colored background for the name and type on multicolor land cards with a basic land type. This is done on real cards.
+styling field:
+ type: boolean
+ name: use guild mana symbols
+ description: Use the Ravnica guild symbols instead of the official half/half circles for hybrid mana.
+ initial: no
+styling field:
+ type: choice
+ name: tap symbol
+ description: What tap and untap symbols should be used on cards?
+ initial: modern
+ choice: modern
+ choice: old
+ choice: diagonal T
+styling field:
+ type: package choice
+ name: text box mana symbols
+ match: magic-mana-*.mse-symbol-font
+ initial: magic-mana-small.mse-symbol-font
+styling field:
+ type: choice
+ name: center text
+ description: When to center text (short text only means only on one-line cards with no flavor text)
+ choice: always
+ choice: short text only
+ choice: never
+ initial: never
+styling field:
+ type: boolean
+ name: promo
+ description: Is this card a promo card, with the "P" rarity?
+ initial: no
+styling field:
+ type: boolean
+ name: inverted common symbol
+ description: Should the common rarity symbol be inverted, like in Coldsnap?
+ initial: no
+styling field:
+ type: package choice
+ name: overlay
+ description: Should there be an overlay applied, such as foil?
+ match: magic-overlay-*.mse-include
+ required: false
+styling style:
+ use guild mana symbols:
+ choice images:
+ yes: /magic-mana-small.mse-symbol-font/mana_guild_rg.png
+ no: /magic-mana-small.mse-symbol-font/mana_rg.png
+ tap symbol:
+ render style: both
+ choice images:
+ modern: /magic-mana-large.mse-symbol-font/mana_t.png
+ old: /magic-mana-large.mse-symbol-font/mana_t_old.png
+ diagonal T: /magic-mana-large.mse-symbol-font/mana_t_older.png
+ center text:
+ render style: both
+ choice images:
+ always: /magic.mse-game/icons/center-all-text.png
+ short text only: /magic.mse-game/icons/center-short-text.png
+ never: /magic.mse-game/icons/center-no-text.png
+ inverted common symbol:
+ choice images:
+ no: { symbol_variation(symbol: set.symbol, variation: "common") }
+ yes: { symbol_variation(symbol: set.symbol, variation: "invertedcommon") }
+############################################################## Card fields
+card style:
+ ############################# Background stuff
+ border color:
+ left: 0
+ top : 0
+ width: 375
+ height: 523
+ radius: 18
+ left width: 17
+ right width: 17
+ top width: 17
+ bottom width: 18
+ z index: 4
+ mask: border_mask.png
+ card color:
+ left: 0
+ top: 0
+ width: 375
+ height: 523
+ z index: 1
+ render style: image
+ popup style: in place
+ mask: image_mask_inv.png
+ image: { card_background() }
+ ############################# Name line
+ name:
+ left: { if card.card_symbol=="none" then 37 else 50 }
+ top: 34
+ right: { 341 - card_style.casting_cost.content_width }
+ height: {23 - (0.5 * shrink_name())}
+ alignment: bottom shrink-overflow
+ padding bottom: 0
+ z index: 1
+ font:
+ name: Beleren Bold
+ size: {16 - shrink_name()}
+ color: black
+ casting cost:
+ right: 340
+ top: 32
+ width: { max(30, card_style.casting_cost.content_width) + 5 }
+ height: 23
+ alignment: middle right
+ font:
+ name: MPlantin
+ size: 15
+ symbol font:
+ name: magic-mana-large
+ size: 15
+ alignment: middle right
+ always symbol: true
+ z index: 2
+ padding top: 0
+ card symbol:
+ left: {if card.card_symbol=="none" then 20 else 30}
+ top: 29
+ height: 20
+ width: 14
+ z index: 1
+ render style: image
+ choice images:
+ tombstone: tombstone.png
+ ############################# Image
+ image:
+ left: 17
+ top: 17
+ width: 343
+ height: 492
+ z index: 0
+ mask: image_mask.png
+ ############################# Card type
+ indicator:
+ left: 31
+ top: 300
+ width: 17
+ height: 17
+ z index: 2
+ render style: image
+ visible: false
+ image: { card_identity() }
+ type:
+ left: 36
+ top: 296
+ width: { 307 - max(22,card_style.rarity.content_width) }
+ height: 20
+ alignment: top shrink-overflow
+ z index: 2
+ padding top: 2
+ font:
+ name: Beleren Bold
+ size: 13
+ color: black
+ separator color: rgb(128,128,128)
+ rarity:
+ right: 342
+ top : 297
+ width: 44
+ height: 22
+ z index: 3
+ render style: image
+ alignment: middle right
+ choice images:
+ # Images based on the set symbol
+ basic land:
+ script:
+ if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
+ else symbol_variation(symbol: set.symbol, variation: "common")
+ common:
+ script:
+ if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
+ else symbol_variation(symbol: set.symbol, variation: "common")
+ uncommon: script: symbol_variation(symbol: set.symbol, variation: "uncommon")
+ rare: script: symbol_variation(symbol: set.symbol, variation: "rare")
+ mythic rare: script: symbol_variation(symbol: set.symbol, variation: "mythic rare")
+ special: script: symbol_variation(symbol: set.symbol, variation: "special")
+ masterpiece: script: symbol_variation(symbol: set.masterpiece_symbol, variation: "mythic rare")
+ ############################# Text box
+ text:
+ left: 35
+ top: 328
+ width: 305
+ height: 154
+ font:
+ name: MPlantin
+ italic name: MPlantin-Italic
+ size: 14
+ scale down to: 6
+ color: black
+ symbol font:
+ name: { styling.text_box_mana_symbols }
+ size: 14
+ alignment:
+ script:
+ if (styling.center_text == "short text only" and
+ not contains(match:"\n", card.rule_text) and
+ card.flavor_text == "" and
+ card_style.text.content_lines <= 2) or
+ styling.center_text == "always"
+ then "middle center"
+ else "middle left"
+ z index: 2
+ padding left: 6
+ padding right: 4
+ line height hard: 1.2
+ line height line: 1.5
+ line height soft: 0.9
+ line height hard max: 1.3
+ line height line max: 1.6
+ watermark:
+ left: 117
+ top: 321
+ width: 138
+ height: 166
+ z index: 1
+ render style: image
+ popup style: in place
+ alignment: middle center
+ include file: /magic-watermarks.mse-include/watermarks
+ ############################# PT
+ pt:
+ z index: 3
+ left: 286
+ top: 469
+ width: 60
+ height: 28
+ alignment: center middle shrink-overflow
+ font:
+ name: Beleren Bold
+ size: 16
+ color: black
+ separator color: red
+ ############################# Card sorting / numbering
+ set code:
+ left: 24
+ top: 500
+ width: 40
+ height: 10
+ z index: 1
+ font:
+ name: Relay-Medium
+ size: 7
+ color: white
+ weight: bold
+ ############################# Copyright stuff
+ illustrator:
+ left: { 44 + card_style.set_code.content_width }
+ top: 499.5
+ width: 200
+ height: 10
+ z index: 1
+ font:
+ name: Beleren Small Caps Bold
+ size: 7.25
+ color: white
+ copyright:
+ right: 350
+ top: { if card.pt != "" then 502 else 490 }
+ 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: artist arrow
+ editable: false
+ save value: false
+ choice: white
+extra card field:
+ type: choice
+ name: pt box
+ script: card.card_color
+ editable: false
+ 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: text
+ name: auto copyright
+ script: set.copyright
+ save value: false
+ editable: false
+ show statistics: false
+extra card style:
+ card code:
+ left: 24
+ top: 490
+ width: 120
+ height: 10
+ z index: 1
+ font:
+ name: Relay-Medium
+ size: 7
+ color: white
+ weight: bold
+ artist arrow:
+ left: { 28 + card_style.set_code.content_width }
+ top: 502
+ width: 12
+ height: 7
+ z index: 1
+ render style: image
+ image: artist_arrow.png
+ pt box:
+ left: 273
+ top: 466
+ width: 81
+ height: 42
+ z index: 1
+ visible: { card.pt != "" }
+ render style: image
+ image: { card_ptbox() }
+ foil layer:
+ left: 0
+ top : 0
+ width: 375
+ height: 523
+ z index: 3
+ render style: image
+ image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"}
+ mask: { if is_rare() then "foil_mask_rare.png" else "foil_mask.png" }
+ auto copyright:
+ right: 350
+ top: { if card.pt != "" then 502 else 490 }
+ 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
\ No newline at end of file
diff --git a/data/magic-m15-token-invention.mse-style/tombstone.png b/data/magic-m15-token-invention.mse-style/tombstone.png
new file mode 100644
index 000000000..d5508a6d3
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/tombstone.png differ
diff --git a/data/magic-m15-token-invention.mse-style/ucard.png b/data/magic-m15-token-invention.mse-style/ucard.png
new file mode 100644
index 000000000..3a27d6e53
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/ucard.png differ
diff --git a/data/magic-m15-token-invention.mse-style/wcard.png b/data/magic-m15-token-invention.mse-style/wcard.png
new file mode 100644
index 000000000..3c7cd67c6
Binary files /dev/null and b/data/magic-m15-token-invention.mse-style/wcard.png differ
diff --git a/data/magic-m15-ttk-frames.mse-style/blcard.jpg b/data/magic-m15-ttk-frames.mse-style/blcard.jpg
index 1a68ad12a..155029051 100644
Binary files a/data/magic-m15-ttk-frames.mse-style/blcard.jpg and b/data/magic-m15-ttk-frames.mse-style/blcard.jpg differ
diff --git a/data/magic-m15-ttk-frames.mse-style/clcard.jpg b/data/magic-m15-ttk-frames.mse-style/clcard.jpg
index c2dd46a6b..a1a917d0b 100644
Binary files a/data/magic-m15-ttk-frames.mse-style/clcard.jpg and b/data/magic-m15-ttk-frames.mse-style/clcard.jpg differ
diff --git a/data/magic-m15-ttk-frames.mse-style/glcard.jpg b/data/magic-m15-ttk-frames.mse-style/glcard.jpg
index d3eb65450..dfc769b22 100644
Binary files a/data/magic-m15-ttk-frames.mse-style/glcard.jpg and b/data/magic-m15-ttk-frames.mse-style/glcard.jpg differ
diff --git a/data/magic-m15-ttk-frames.mse-style/mlcard.jpg b/data/magic-m15-ttk-frames.mse-style/mlcard.jpg
index 5cf13908a..8f5472212 100644
Binary files a/data/magic-m15-ttk-frames.mse-style/mlcard.jpg and b/data/magic-m15-ttk-frames.mse-style/mlcard.jpg differ
diff --git a/data/magic-m15-ttk-frames.mse-style/rlcard.jpg b/data/magic-m15-ttk-frames.mse-style/rlcard.jpg
index 7f7caa76b..6c9204462 100644
Binary files a/data/magic-m15-ttk-frames.mse-style/rlcard.jpg and b/data/magic-m15-ttk-frames.mse-style/rlcard.jpg differ
diff --git a/data/magic-m15-ttk-frames.mse-style/style b/data/magic-m15-ttk-frames.mse-style/style
index 90a07a7d5..ff97003e6 100644
--- a/data/magic-m15-ttk-frames.mse-style/style
+++ b/data/magic-m15-ttk-frames.mse-style/style
@@ -1,12 +1,12 @@
mse version: 2.0.0
game: magic
-short name: M15 TTK Conspiracy
-full name: M15 Take the Crown Conspiracy Style
+short name: M15 TTK Style
+full name: M15 Take the Crown Style
icon: card-sample.png
installer group: magic/m15 conspiracy style/normal cards
position hint: 013
-version: 2018-02-08
+version: 2018-02-09
depends on:
package: magic.mse-game
version: 2014-06-25
@@ -46,11 +46,7 @@ init script:
land_template := { template_prefix[type] + (if input == "a" then "c" else input) + "l" + template_suffix[type] }
# Use land templates for previews because they show more contrast
hybrid_previews := "land,hybrid"
- chop_top := {if styling.chop_top == "" then 0 else if comma_count(styling.chop_top) == "," or comma_count(styling.chop_top) == ",," then split_text(match:",", styling.chop_top).0 else styling.chop_top}
- chop_bot := {if comma_count(styling.chop_top) == ",," then split_text(match:",", styling.chop_top).1 else if styling.chop_bottom == "" then 0 else styling.chop_bottom}
- 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 the normal tap symbol
mana_t := {
if styling.tap_symbol == "old" then "old"
@@ -63,9 +59,8 @@ init script:
# Is the card a promo card?
is_promo := { styling.promo }
- has_identity := {styling.color_indicator_dot}
+ has_identity := { styling.color_indicator_dot }
is_unsorted := {styling.remove_from_autocount}
-
############################################################## Set info fields
set info style:
symbol:
@@ -79,19 +74,11 @@ set info style:
styling field:
type: text
name: chop top
- description: Shrinks the textbox X pixels from the top OR shrinks "top,bottom,"
+ description: Shrinks the textbox from the top.
styling field:
type: text
name: chop bottom
- description: Shrinks the textbox X pixels from the bottom.
-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.
+ description: Shrinks the textbox from the bottom.
styling field:
type: boolean
name: use holofoil stamps
@@ -206,13 +193,13 @@ card style:
left: { if card.card_symbol=="none" then 32 else 50 }
top: 30
right: { 341 - card_style.casting_cost.content_width }
- height: { 23 - (0.5 * shrink_name()) }
+ height: 23
alignment: bottom shrink-overflow
padding bottom: 0
z index: 1
font:
name: Beleren Bold
- size: { 16 - shrink_name() }
+ size: 16
color: black
casting cost:
right: 346
@@ -253,7 +240,7 @@ card style:
top: 300
width: 17
height: 17
- z index: 1
+ z index: 2
render style: image
visible: { has_identity() }
image: { card_identity() }
@@ -261,13 +248,13 @@ card style:
left: { if has_identity() then "52" else "32" }
top: 296
width: { (if has_identity() then "290" else "310") - max(22,card_style.rarity.content_width) }
- height: { 20 - shrink_type() }
+ height: 20
alignment: top shrink-overflow
z index: 1
padding top: 2
font:
name: Beleren Bold
- size: { 13 - shrink_name() }
+ size: 13
color: black
separator color: red
rarity:
@@ -295,10 +282,10 @@ card style:
masterpiece: script: symbol_variation(symbol: set.masterpiece_symbol, variation: "mythic rare")
############################# Text box
text:
- top: {327 - (-chop_top()) }
- bottom: {481 - chop_bot() }
left: 29
+ top: { if styling.chop_top != "" then (327 - (-styling.chop_top)) else 327 }
width: 314
+ bottom: { if styling.chop_bottom != "" then (481 - styling.chop_bottom) else 481 }
font:
name: MPlantin
italic name: MPlantin-Italic
@@ -466,7 +453,7 @@ extra card style:
width: 46
height: 26
z index: 1
- visible: { is_rare() and styling.use_holofoil_stamps}
+ visible: { is_rare() and styling.use_holofoil_stamps }
render style: image
image: { card_stamp() }
foil stamp:
@@ -475,7 +462,7 @@ extra card style:
width: 46
height: 26
z index: 1
- visible: { is_rare() and styling.use_holofoil_stamps}
+ visible: { is_rare() and styling.use_holofoil_stamps }
render style: image
image: foil_stamp.png
foil layer:
diff --git a/data/magic-m15-ttk-frames.mse-style/ulcard.jpg b/data/magic-m15-ttk-frames.mse-style/ulcard.jpg
index 38d05dd25..2f7acbc61 100644
Binary files a/data/magic-m15-ttk-frames.mse-style/ulcard.jpg and b/data/magic-m15-ttk-frames.mse-style/ulcard.jpg differ
diff --git a/data/magic-m15-ttk-frames.mse-style/wlcard.jpg b/data/magic-m15-ttk-frames.mse-style/wlcard.jpg
index b25772d0f..1321f05cd 100644
Binary files a/data/magic-m15-ttk-frames.mse-style/wlcard.jpg and b/data/magic-m15-ttk-frames.mse-style/wlcard.jpg differ