MSE 2.5.2 and Showcase Catchup (#18)
* Updated to MSE 2.5.2 * Added Assassin's Creed Memory Corridor * Added Bloomburrow Borderless Anime * Added Bloomburrow Woodland * Added Compleated Planeswalkers * Added Duskmourn Paranormal * Added Kamigawa Neon * Added Kamigawa Ninja * Added Kamigawa Samurai * Added Innistrad Fang * Added Theros Constellation * Added Capenna Art Deco * Added Capenna Golden Age * Added Capenna Skyscraper * Added Doctor Who TARDIS * Added Dominaria Stained Glass * Added Eldraine Enchanting Tales * Added Fallout PipBoy * Added Ikoria Crystal * Added Innistrad Double Feature * Added Innistrad Equinox * Added Ixalan Treasures * Added Ixalan Legends * Added Ixalan Caverns * Added Lord of the Rings Ring * Added Lord of the Rings Scroll * Added Ravnica City Mural * Added Ravnica Dossier * Added Tarkir Dragon Wing * Added Thunder Junction Breaking News * Added Thunder Junction Vault * Added Thunder Junction Wanted Poster * Added Unfinity Of Tomorrow * Added Unfinity Attractions * Added Secret Lair Baseball * Added revamped option to Amonkhet Invocations * Added UB stamp compatibility to old showcase frames * Added foils and popouts modules * Add foil_mask blending system * Fixes #57
|
After Width: | Height: | Size: 366 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 7.9 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 7.6 KiB |
|
After Width: | Height: | Size: 468 KiB |
|
After Width: | Height: | Size: 447 KiB |
|
After Width: | Height: | Size: 429 KiB |
|
After Width: | Height: | Size: 445 KiB |
|
After Width: | Height: | Size: 426 KiB |
|
After Width: | Height: | Size: 444 KiB |
|
After Width: | Height: | Size: 464 KiB |
|
After Width: | Height: | Size: 439 KiB |
BIN
data/magic-m15-showcase-lotr-scroll-saga.mse-style/card_mask.png
Normal file
|
After Width: | Height: | Size: 9.5 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 6.6 KiB |
|
After Width: | Height: | Size: 6.7 KiB |
|
After Width: | Height: | Size: 6.8 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
After Width: | Height: | Size: 6.9 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
After Width: | Height: | Size: 7.3 KiB |
|
After Width: | Height: | Size: 6.5 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 24 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 25 KiB |
|
After Width: | Height: | Size: 23 KiB |
BIN
data/magic-m15-showcase-lotr-scroll-saga.mse-style/foil_mask.png
Normal file
|
After Width: | Height: | Size: 5.5 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
BIN
data/magic-m15-showcase-lotr-scroll-saga.mse-style/gold_bars.png
Normal file
|
After Width: | Height: | Size: 75 KiB |
|
After Width: | Height: | Size: 51 KiB |
|
After Width: | Height: | Size: 7.9 KiB |
|
After Width: | Height: | Size: 7.9 KiB |
|
After Width: | Height: | Size: 7.9 KiB |
|
After Width: | Height: | Size: 7.9 KiB |
|
After Width: | Height: | Size: 7.9 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 7.8 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 22 KiB |
BIN
data/magic-m15-showcase-lotr-scroll-saga.mse-style/pt/apt.png
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
data/magic-m15-showcase-lotr-scroll-saga.mse-style/pt/bpt.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
data/magic-m15-showcase-lotr-scroll-saga.mse-style/pt/cpt.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
data/magic-m15-showcase-lotr-scroll-saga.mse-style/pt/gpt.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
data/magic-m15-showcase-lotr-scroll-saga.mse-style/pt/mpt.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
data/magic-m15-showcase-lotr-scroll-saga.mse-style/pt/rpt.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
data/magic-m15-showcase-lotr-scroll-saga.mse-style/pt/upt.png
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
data/magic-m15-showcase-lotr-scroll-saga.mse-style/pt/wpt.png
Normal file
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 9.3 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 20 KiB |
980
data/magic-m15-showcase-lotr-scroll-saga.mse-style/style
Normal file
@@ -0,0 +1,980 @@
|
||||
mse version: 2.1.2
|
||||
game: magic
|
||||
short name: Scroll
|
||||
full name: LotR Showcase
|
||||
icon: card_sample.png
|
||||
position hint: 095
|
||||
|
||||
version: 2024-05-20
|
||||
depends on:
|
||||
package: magic.mse-game
|
||||
version: 2014-06-25
|
||||
depends on:
|
||||
package: magic-mana-large.mse-symbol-font
|
||||
version: 2007-09-23
|
||||
depends on:
|
||||
package: magic-mana-small.mse-symbol-font
|
||||
version: 2007-09-23
|
||||
depends on:
|
||||
package: magic-modules.mse-include
|
||||
version: 2024-05-20
|
||||
depends on:
|
||||
package: magic-mainframe-extras.mse-include
|
||||
version: 2007-09-23
|
||||
|
||||
card width: 646
|
||||
card height: 902
|
||||
card dpi: 258.5
|
||||
|
||||
### blanks by GenevensiS
|
||||
### code by GenevensiS
|
||||
|
||||
############################################################## Extra scripts
|
||||
|
||||
init script:
|
||||
swap_fonts_pt_default :=
|
||||
[
|
||||
name: {"Beleren Bold"},
|
||||
size: {26.0},
|
||||
color: {"black"},
|
||||
vertical: {0},
|
||||
italic: {"Beleren Bold"}
|
||||
]
|
||||
|
||||
swap_fonts_body_default :=
|
||||
[
|
||||
name: {"MPlantin"},
|
||||
size: {font_size()},
|
||||
color: {"black"},
|
||||
vertical: {0},
|
||||
italic: {"MPlantin-Italic"}
|
||||
]
|
||||
|
||||
typeline_offset_top_1 := { 254 }
|
||||
typeline_offset_width_1 := { -2 }
|
||||
typeline_offset_left_1 := { 1 }
|
||||
swap_fonts_type_default :=
|
||||
[
|
||||
name: {"Beleren Bold"},
|
||||
size: {22.5},
|
||||
color: {"black"},
|
||||
vertical: {0},
|
||||
italic: {""}
|
||||
]
|
||||
|
||||
transform_symbol_disabled_1 := { true }
|
||||
card_symbol_offset_top_1 := { 1 }
|
||||
nameline_offset_top_1 := { -1 }
|
||||
swap_fonts_name_default :=
|
||||
[
|
||||
name: {"Beleren Bold"},
|
||||
size: {26.0},
|
||||
color: {"black"},
|
||||
vertical: {0},
|
||||
italic: {""}
|
||||
]
|
||||
|
||||
information_secondary_shift_with_pt_1 := { false }
|
||||
|
||||
card_shape := { "saga" }
|
||||
|
||||
card_hybrid_2 :=
|
||||
{
|
||||
masked_blend(mask: "special_blend_card.png", dark: template(colors.0), light: template(colors.1))
|
||||
}
|
||||
horizontal_card_hybrid :=
|
||||
[
|
||||
0: horizontal_card_hybrid[0]
|
||||
1: horizontal_card_hybrid[1]
|
||||
2: card_hybrid_2
|
||||
3: horizontal_card_hybrid[3]
|
||||
4: horizontal_card_hybrid[4]
|
||||
5: horizontal_card_hybrid[5]
|
||||
6: horizontal_card_hybrid[6]
|
||||
7: horizontal_card_hybrid[7]
|
||||
]
|
||||
card_hybrid :=
|
||||
[
|
||||
radial: card_hybrid["radial"]
|
||||
horizontal: horizontal_card_hybrid
|
||||
overlay: card_hybrid["overlay"]
|
||||
vertical: card_hybrid["vertical"]
|
||||
]
|
||||
|
||||
template_prefix :=
|
||||
[
|
||||
card: "card/",
|
||||
pt: "pt/",
|
||||
crown: "crown/",
|
||||
stamprim: "stamprim/",
|
||||
nonstamprim: "nonstamprim/",
|
||||
identity: "/magic-modules.mse-include/indicators/"
|
||||
]
|
||||
template_suffix :=
|
||||
[
|
||||
card: "card.png",
|
||||
pt: "pt.png",
|
||||
crown: "crown.png",
|
||||
stamprim: "stamprim.png",
|
||||
nonstamprim: "nonstamprim.png",
|
||||
identity: "identity.png"
|
||||
]
|
||||
|
||||
template := { template_prefix[type] + input + template_suffix[type] }
|
||||
land_template := { template_prefix[type] + (if input == "a" then "c" else input) + template_suffix[type] }
|
||||
|
||||
card_background := { color_background(input: card.card_color, type: "card", base_hybrid: card_hybrid) }
|
||||
card_crown := { color_background(input: card.card_color, type: "crown", base_hybrid: card_hybrid) }
|
||||
card_ptbox := { color_background(input: card.card_color, type: "pt", base_hybrid: card_hybrid) }
|
||||
card_stamprim := { color_background(input: card.card_color, type: "stamprim", base_hybrid: card_hybrid) }
|
||||
card_nonstamprim := { color_background(input: card.card_color, type: "nonstamprim", base_hybrid: card_hybrid) }
|
||||
|
||||
pure_colors :=
|
||||
{
|
||||
sort_text(
|
||||
order: if card_is_wedge(input) then "(wbgur)" else "(wubrg)",
|
||||
(if chosen(card.card_color, choice:"white") then "w") +
|
||||
(if chosen(card.card_color, choice:"blue") then "u") +
|
||||
(if chosen(card.card_color, choice:"black") then "b") +
|
||||
(if chosen(card.card_color, choice:"red") then "r") +
|
||||
(if chosen(card.card_color, choice:"green") then "g")
|
||||
)
|
||||
}
|
||||
pt_colors := { if styling.PT_color_scheme == "canon" then pt_colors_canon() else styling.PT_color_scheme }
|
||||
pt_colors_canon := { if is_hybrid_cost() then "land" else "gold" }
|
||||
|
||||
has_identity := { styling.color_indicator_dot }
|
||||
has_identity_2 := { false }
|
||||
|
||||
is_promo := { styling.promo }
|
||||
is_unsorted := { styling.remove_from_autocount }
|
||||
is_crowned := { styling.legend_crown == "yes" or (styling.legend_crown == "if legendary" and lang_setting("is_legendary")(card.super_type)) }
|
||||
is_gold_barred := { styling.gold_name_and_type == "yes" }
|
||||
|
||||
chapter_number_map :=
|
||||
[
|
||||
1: "I"
|
||||
2: "II"
|
||||
3: "III"
|
||||
4: "IV"
|
||||
5: "V"
|
||||
6: "VI"
|
||||
7: "VII"
|
||||
]
|
||||
a_saga := { true }
|
||||
saga_reminder :=
|
||||
{
|
||||
number_of_chapters := if styling.snap_chapter_to_box != "" then min(7,length(split_comma(styling.snap_chapter_to_box))) else styling.number_of_textboxes
|
||||
if styling.default_reminder != "" then replace(styling.default_reminder, match: "\\[number of chapters\\]", replace: chapter_number_map[number_of_chapters])
|
||||
else "As this Saga enters and after your draw step, add a lore counter. Sacrifice after " + chapter_number_map[number_of_chapters] + "."
|
||||
}
|
||||
|
||||
popout_left := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.0 != "" then clamp(split.0, minimum: -500, maximum: 1500) else 0 }
|
||||
popout_top := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.1 != "" then clamp(split.1, minimum: -500, maximum: 2000) else 0 }
|
||||
popout_width := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.2 != "" then clamp(split.2, minimum: 0, maximum: 1500) else 0 }
|
||||
popout_height := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.3 != "" then clamp(split.3, minimum: 0, maximum: 2000) else 0 }
|
||||
|
||||
crop_safe :=
|
||||
{
|
||||
if offset_x < 0
|
||||
or offset_y < 0
|
||||
or width < 1
|
||||
or height < 1
|
||||
or offset_x + width > 646
|
||||
or offset_y + height > 902
|
||||
then ""
|
||||
else crop(input, offset_x: offset_x, offset_y: offset_y, width: width, height: height)
|
||||
}
|
||||
|
||||
font_size := { if styling.text_font_size == "" then 22 else to_number(styling.text_font_size) or else 22 }
|
||||
|
||||
abilities_count := { to_int(styling.number_of_textboxes) }
|
||||
|
||||
chapter_move := { split := split_comma(styling.move_chapter_icons); if length(split) > input-1 and split[input-1] != "" and split[input-1] != "-" then clamp(split[input-1], maximum:700, minimum:-700) else 0 }
|
||||
separator_move := { split := split_comma(styling.move_separators); if length(split) > input-1 and split[input-1] != "" and split[input-1] != "-" then clamp(split[input-1], maximum:500, minimum:-500) else 0 }
|
||||
textbox_move := { split := split_comma(styling.move_textbox_bottoms); if length(split) > input-1 and split[input-1] != "" and split[input-1] != "-" then clamp(split[input-1], maximum:500, minimum:-500) else 0 }
|
||||
|
||||
chapter_indexes :=
|
||||
{
|
||||
snaps := if styling.snap_chapter_to_box == "" then [1,2,3,4,5,6,7] else split_comma(styling.snap_chapter_to_box)
|
||||
snaps_count := length(snaps)
|
||||
for c from 0 to 6 do
|
||||
(
|
||||
if c >= snaps_count then [-1]
|
||||
else
|
||||
(
|
||||
index := (to_int(trim(snaps[c])) or else -1) - 1
|
||||
if index > active_count or index < 0 then [-1]
|
||||
else [index]
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
textbox_heights :=
|
||||
{
|
||||
###force proper initialization of card_style values
|
||||
hack_to_force_update := card_style.level_1_text.content_width
|
||||
|
||||
active_count := abilities_count() - 1
|
||||
|
||||
total_max_possible_height := 480
|
||||
|
||||
chapter_icon_height := 57
|
||||
chapter_icon_spacing := 8
|
||||
chapter_icon_spacing_importance := (if styling.chapter_spacing_percentage == "" then 70 else clamp(styling.chapter_spacing_percentage or else 70, minimum: 0, maximum: 100)) / 100
|
||||
chapter_indexes := chapter_indexes(active_count: active_count)
|
||||
chaptertrain_0_count := 0
|
||||
chaptertrain_1_count := 0
|
||||
chaptertrain_2_count := 0
|
||||
chaptertrain_3_count := 0
|
||||
chaptertrain_4_count := 0
|
||||
chaptertrain_5_count := 0
|
||||
chaptertrain_6_count := 0
|
||||
for c from 0 to 6 do
|
||||
(
|
||||
if chapter_indexes[c] == -1 then (0)
|
||||
else if chapter_indexes[c] == 0 then (chaptertrain_0_count := chaptertrain_0_count + 1)
|
||||
else if chapter_indexes[c] == 1 then (chaptertrain_1_count := chaptertrain_1_count + 1)
|
||||
else if chapter_indexes[c] == 2 then (chaptertrain_2_count := chaptertrain_2_count + 1)
|
||||
else if chapter_indexes[c] == 3 then (chaptertrain_3_count := chaptertrain_3_count + 1)
|
||||
else if chapter_indexes[c] == 4 then (chaptertrain_4_count := chaptertrain_4_count + 1)
|
||||
else if chapter_indexes[c] == 5 then (chaptertrain_5_count := chaptertrain_5_count + 1)
|
||||
else (chaptertrain_6_count := chaptertrain_6_count + 1)
|
||||
)
|
||||
chaptertrain_counts_per_textbox := [chaptertrain_0_count, chaptertrain_1_count, chaptertrain_2_count, chaptertrain_3_count, chaptertrain_4_count, chaptertrain_5_count, chaptertrain_6_count]
|
||||
chaptertrain_desired_heights := for x from 0 to active_count do [chaptertrain_counts_per_textbox[x] * (chapter_icon_height + chapter_icon_spacing)]
|
||||
|
||||
line_height := 1.555 * font_size()
|
||||
hard_line_height := line_height * card_style.level_1_text.line_height_hard
|
||||
soft_line_height := line_height * card_style.level_1_text.line_height_soft
|
||||
last_line_height := line_height * 1.222 / 1.555
|
||||
content_line_counts := for x from 0 to active_count do [card_style["level_" + (x+1) + "_text"].content_lines]
|
||||
hard_line_counts := for x from 0 to active_count do [length(card_style["level_" + (x+1) + "_text"].layout.paragraphs)-1]
|
||||
soft_line_counts := for x from 0 to active_count do [content_line_counts[x] - hard_line_counts[x] - 1]
|
||||
text_desired_heights := for x from 0 to active_count do [hard_line_counts[x] * hard_line_height + soft_line_counts[x] * soft_line_height + last_line_height]
|
||||
|
||||
textbox_desired_heights := for x from 0 to active_count do [max(text_desired_heights[x], chapter_icon_spacing_importance * chaptertrain_desired_heights[x])]
|
||||
|
||||
total_desired_height := for x from 0 to active_count do textbox_desired_heights[x]
|
||||
|
||||
missing := ( total_desired_height - total_max_possible_height ) / ( active_count + 1 )
|
||||
factor := total_max_possible_height / total_desired_height
|
||||
|
||||
###when resizing, always make small textboxes as big as possible, to make a more balanced looking card
|
||||
textbox_effective_heights := if missing <= 0 then (for x from 0 to active_count do [textbox_desired_heights[x] - missing]) #when increasing size, add equally to each textbox
|
||||
else (for x from 0 to active_count do [textbox_desired_heights[x] * factor]) #when decreasing size, do it in percentage, taking away more from big textboxes
|
||||
|
||||
#trace("chapter_indexes " + (for c from 0 to 6 do chapter_indexes[c] + " "))
|
||||
#trace("chaptertrain_counts_per_textbox " + (for x from 0 to 6 do chaptertrain_counts_per_textbox[x] + " "))
|
||||
#trace("chaptertrain_desired_heights " + (for x from 0 to active_count do chaptertrain_desired_heights[x] + " "))
|
||||
#trace("content_line_counts " + (for x from 0 to active_count do content_line_counts[x] + " "))
|
||||
#trace("hard_line_counts " + (for x from 0 to active_count do hard_line_counts[x] + " "))
|
||||
#trace("soft_line_counts " + (for x from 0 to active_count do soft_line_counts[x] + " "))
|
||||
#trace("text_desired_heights " + (for x from 0 to active_count do text_desired_heights[x] + " "))
|
||||
#trace("textbox_desired_heights " + (for x from 0 to active_count do textbox_desired_heights[x] + " "))
|
||||
#trace("textbox_effective_heights " + (for x from 0 to active_count do textbox_effective_heights[x] + " "))
|
||||
#trace("card_style.level_1_text.width " + card_style.level_1_text.width)
|
||||
#trace("card_style.level_1_text.content_width " + card_style.level_1_text.content_width)
|
||||
#trace("card_style.level_1_text.content_height " + card_style.level_1_text.content_height)
|
||||
|
||||
textbox_effective_heights
|
||||
}
|
||||
|
||||
chapter_info :=
|
||||
{
|
||||
chapter_indexes := chapter_indexes(active_count: abilities_count() - 1);
|
||||
index := chapter_indexes[input]
|
||||
if index == -1 then [-1,-1,-1]
|
||||
else
|
||||
(
|
||||
subindex := if input == 0 then 0
|
||||
else (for c from 0 to (input-1) do (if chapter_indexes[c] == index then 1 else 0))
|
||||
count := subindex + 1 + (for c from (input+1) to 6 do (if chapter_indexes[c] == index then 1 else 0))
|
||||
[index, subindex, count]
|
||||
)
|
||||
}
|
||||
|
||||
chapter_top :=
|
||||
{
|
||||
hack_to_force_update := card_style.level_1_text.content_width
|
||||
|
||||
chapter_info := chapter_info(input)
|
||||
if chapter_info[0] == -1 then 1200
|
||||
else
|
||||
(
|
||||
index := chapter_info[0]
|
||||
subindex := chapter_info[1]
|
||||
count := chapter_info[2]
|
||||
chapter_icon_height := 57
|
||||
chapter_icon_spacing := 8
|
||||
desired_chapter_height := count * chapter_icon_height ###how much total space do the chapter icons want
|
||||
desired_spacing := (count-1) * chapter_icon_spacing ###how much total space do the gaps between chapters want
|
||||
desired_height := desired_chapter_height + desired_spacing ###how much total space do the chapters and gaps between them want
|
||||
textbox_height := card_style["level_" + (index+1) + "_text"].height ###how much space is does the textbox offer
|
||||
missing_height := desired_height - textbox_height ###how much space is missing from the textbox
|
||||
effective_spacing := desired_spacing - max(missing_height, 0) ###how much total space do the gaps between chapters actually have
|
||||
effective_spacing := max(effective_spacing, (count-1) * (chapter_icon_spacing - chapter_icon_height)) ###chapters must always be at least chapter_icon_spacing pixels below the previous one
|
||||
effective_spacing_per_chapter := effective_spacing / max(count-1,1) ###how much space does each gap have (can be negative, chapters will then overlap)
|
||||
effective_height := desired_chapter_height + effective_spacing ###how much total space do the chapters and gaps between and around them want
|
||||
offset := (textbox_height - effective_height)/2
|
||||
top := card_style["level_" + (index+1) + "_text"].top + offset + subindex * (chapter_icon_height + effective_spacing_per_chapter)
|
||||
|
||||
#trace("desired_chapter_height " + desired_chapter_height)
|
||||
#trace("desired_spacing " + desired_spacing)
|
||||
#trace("desired_height " + desired_height)
|
||||
#trace("textbox_height " + textbox_height)
|
||||
#trace("missing_height " + missing_height)
|
||||
#trace("effective_spacing " + effective_spacing)
|
||||
#trace("effective_spacing_per_chapter " + effective_spacing_per_chapter)
|
||||
#trace("effective_height " + effective_height)
|
||||
#trace("offset " + offset)
|
||||
#trace("top " + top)
|
||||
|
||||
top
|
||||
)
|
||||
}
|
||||
|
||||
chapter_image :=
|
||||
{
|
||||
if contains(styling.custom_chapter_icons, match: ".png") then (un_png(styling.custom_chapter_icons) + "_" + input + ".png")
|
||||
else "chapter/chapter_" + input + ".png"
|
||||
}
|
||||
|
||||
############################################################## Extra style options
|
||||
|
||||
styling field:
|
||||
type: text
|
||||
name: text font size
|
||||
description: Sets the font size of ability textboxes. MUST BE CHANGED MANUALLY IF THERE IS NOT ENOUGH ROOM ON THE CARD. Default is 22.
|
||||
styling field:
|
||||
type: text
|
||||
name: popout art coordinates
|
||||
description: The coordinates for the popout image field, formatted as "left,top,width,height". Used to make the illustration jump in front of the frame.
|
||||
styling field:
|
||||
type: boolean
|
||||
name: stretch art to whole card
|
||||
description: Make the image span the whole card instead of just the visible part. Use this to help make popout effects.
|
||||
initial: no
|
||||
styling field:
|
||||
type: text
|
||||
name: art filter opacity percentage
|
||||
description: Set the opacity percentage for the old paper illustration filter. Opaque is 100, transparent is 0, default is 80.
|
||||
styling field:
|
||||
type: choice
|
||||
name: number of textboxes
|
||||
description: Number of textboxes for chapters and passives. MODIFY CONTENT OF TEXTBOXES IF THIS HAS TROUBLE UPDATING AFTER BEING CHANGED.
|
||||
choice: 1
|
||||
choice: 2
|
||||
choice: 3
|
||||
choice: 4
|
||||
choice: 5
|
||||
choice: 6
|
||||
choice: 7
|
||||
initial: 3
|
||||
styling field:
|
||||
type: text
|
||||
name: snap chapter to box
|
||||
description: Sets the chapter icons to the given textbox. For example "1,1,2" puts chapters I and II on Ability 1, and chapter III on Ability 2. Max 7 chapters.
|
||||
styling field:
|
||||
type: text
|
||||
name: chapter spacing percentage
|
||||
description: Determines the behavior of chapter icons when there is not enough space. 0 clumps them together. 100 spreads them apart as much as possible. Default is 70.
|
||||
styling field:
|
||||
type: text
|
||||
name: move chapter icons
|
||||
description: Moves chapter icons down by this many pixels. Use negatives to move up. Formatted as "1,2,3,4,5,6,7"
|
||||
styling field:
|
||||
type: text
|
||||
name: custom chapter icons
|
||||
description: The file path (starting from the data folder) of '.png' images used for chapter icons. Dimensions can be anything, but native is 51x57. Write /PATH/NAME.png here. Save images as /PATH/NAME_1.png, /PATH/NAME_2.png, etc...
|
||||
styling field:
|
||||
type: text
|
||||
name: move separators
|
||||
description: Moves the gray lines separating abilities down by this many pixels. Use negatives to move up. Formatted as "1,2,3,4,5,6"
|
||||
styling field:
|
||||
type: text
|
||||
name: move textbox bottoms
|
||||
description: Moves the bottom of each textbox down by this many pixels. Use negatives to move up. Formatted as "1,2,3,4,5,6,7"
|
||||
styling field:
|
||||
type: text
|
||||
name: default reminder
|
||||
description: Change the reminder text that is generated for new cards. RELOAD DATA IF THIS DOES NOT SHOW UP. Use [number of chapters] to stand in dynamically for the number of chapters.
|
||||
styling field:
|
||||
type: choice
|
||||
name: PT color scheme
|
||||
description: Use the selected color scheme for the PT box on two color cards. Canon is "land" on hybrid cards, "gold" otherwise.
|
||||
choice: canon
|
||||
choice: gold
|
||||
choice: hybrid
|
||||
choice: colored
|
||||
choice: land
|
||||
initial: canon
|
||||
styling field:
|
||||
type: choice
|
||||
name: legend crown
|
||||
description: Use the legend crown?
|
||||
choice: yes
|
||||
choice: if legendary
|
||||
choice: no
|
||||
initial: if legendary
|
||||
styling field:
|
||||
type: boolean
|
||||
name: gold name and type
|
||||
description: Tint the nameline and typeline gold?
|
||||
initial: no
|
||||
|
||||
include file: /magic-modules.mse-include/stamps/styling_fields_ub
|
||||
|
||||
include file: /magic-modules.mse-include/rarities/styling_fields
|
||||
|
||||
include file: /magic-modules.mse-include/indicators/styling_fields
|
||||
|
||||
include file: /magic-modules.mse-include/watermarks/styling_fields
|
||||
|
||||
styling field:
|
||||
type: package choice
|
||||
name: overlay
|
||||
description: Should there be an overlay applied, such as foil?
|
||||
match: magic-overlay-*.mse-include
|
||||
required: false
|
||||
|
||||
include file: /magic-modules.mse-include/information/styling_fields
|
||||
|
||||
include file: /magic-modules.mse-include/symbol-fonts/styling_fields
|
||||
|
||||
include file: /magic-modules.mse-include/fonts/styling_fields
|
||||
|
||||
############################################################## Card fields
|
||||
|
||||
include file: /magic-modules.mse-include/information/card_fields
|
||||
|
||||
include file: /magic-modules.mse-include/stamps/card_fields
|
||||
|
||||
include file: /magic-modules.mse-include/corners/card_fields
|
||||
|
||||
include file: /magic-modules.mse-include/watermarks/card_fields
|
||||
|
||||
include file: /magic-modules.mse-include/namelines/card_fields
|
||||
|
||||
include file: /magic-modules.mse-include/typelines/card_fields
|
||||
|
||||
include file: /magic-modules.mse-include/foils/card_fields
|
||||
|
||||
card style:
|
||||
############################# Background stuff
|
||||
border color:
|
||||
left: 0
|
||||
top: 0
|
||||
width: { stylesheet.card_width }
|
||||
height: { stylesheet.card_height }
|
||||
z index: 100
|
||||
mask: border_mask.png
|
||||
card color:
|
||||
left: 0
|
||||
top: 0
|
||||
width: { stylesheet.card_width }
|
||||
height: { stylesheet.card_height }
|
||||
z index: 200
|
||||
render style: image
|
||||
popup style: in place
|
||||
image: { card_background() }
|
||||
mask: card_mask.png
|
||||
############################# Image
|
||||
image:
|
||||
left: { if styling.stretch_art_to_whole_card then 0 else 320 }
|
||||
top: { if styling.stretch_art_to_whole_card then 0 else 101 }
|
||||
width: { if styling.stretch_art_to_whole_card then stylesheet.card_width else 277 }
|
||||
height: { if styling.stretch_art_to_whole_card then stylesheet.card_height else 656 }
|
||||
z index: 0
|
||||
mainframe image:
|
||||
left: { popout_left() }
|
||||
top: { popout_top() }
|
||||
width: { popout_width() }
|
||||
height: { popout_height() }
|
||||
z index: 1010
|
||||
############################# Text box
|
||||
chapter text:
|
||||
left: 57
|
||||
top: 122
|
||||
width: 259
|
||||
height: 127
|
||||
z index: 1000
|
||||
alignment: middle left
|
||||
font:
|
||||
name: { body_font() }
|
||||
italic name: { body_font_italic() }
|
||||
size: { body_font_size() }
|
||||
scale down to: 7
|
||||
color: { body_font_color() }
|
||||
symbol font:
|
||||
name: { styling.text_box_mana_symbols }
|
||||
size: { body_font_size() }
|
||||
scale down to: 7
|
||||
line height hard: { if is_modal(card.chapter_text) then 0.9 else 1.2 }
|
||||
line height line: 1.5
|
||||
line height soft: 0.9
|
||||
line height hard max: { if is_modal(card.chapter_text) then 1.0 else 1.3 }
|
||||
line height line max: 1.6
|
||||
line height soft max: 0.9
|
||||
level 1 text:
|
||||
left: 86
|
||||
top: 270
|
||||
width: 230
|
||||
height: { textbox_heights()[0] + textbox_move(1) }
|
||||
z index: 1000
|
||||
alignment: middle left
|
||||
font:
|
||||
name: { body_font() }
|
||||
italic name: { body_font_italic() }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
color: { body_font_color() }
|
||||
symbol font:
|
||||
name: { styling.text_box_mana_symbols }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
line height hard: { if is_modal(card.level_1_text) then 0.9 else 1.2 }
|
||||
line height line: 1.5
|
||||
line height soft: 0.9
|
||||
line height hard max: { if is_modal(card.level_1_text) then 1.0 else 1.3 }
|
||||
line height line max: 1.6
|
||||
line height soft max: 0.9
|
||||
level 2 text:
|
||||
left: 86
|
||||
top: { card_style.level_1_text.bottom }
|
||||
width: 230
|
||||
height: { if abilities_count() > 1 then textbox_heights()[1] + textbox_move(2) else 0 }
|
||||
z index: 1000
|
||||
alignment: middle left
|
||||
font:
|
||||
name: { body_font() }
|
||||
italic name: { body_font_italic() }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
color: { body_font_color() }
|
||||
symbol font:
|
||||
name: { styling.text_box_mana_symbols }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
line height hard: { if is_modal(card.level_2_text) then 0.9 else 1.2 }
|
||||
line height line: 1.5
|
||||
line height soft: 0.9
|
||||
line height hard max: { if is_modal(card.level_2_text) then 1.0 else 1.3 }
|
||||
line height line max: 1.6
|
||||
line height soft max: 0.9
|
||||
level 3 text:
|
||||
left: 86
|
||||
top: { card_style.level_2_text.bottom }
|
||||
width: 230
|
||||
height: { if abilities_count() > 2 then textbox_heights()[2] + textbox_move(3) else 0 }
|
||||
z index: 1000
|
||||
alignment: middle left
|
||||
font:
|
||||
name: { body_font() }
|
||||
italic name: { body_font_italic() }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
color: { body_font_color() }
|
||||
symbol font:
|
||||
name: { styling.text_box_mana_symbols }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
line height hard: { if is_modal(card.level_3_text) then 0.9 else 1.2 }
|
||||
line height line: 1.5
|
||||
line height soft: 0.9
|
||||
line height hard max: { if is_modal(card.level_3_text) then 1.0 else 1.3 }
|
||||
line height line max: 1.6
|
||||
line height soft max: 0.9
|
||||
level 4 text:
|
||||
left: 86
|
||||
top: { card_style.level_3_text.bottom }
|
||||
width: 230
|
||||
height: { if abilities_count() > 3 then textbox_heights()[3] + textbox_move(4) else 0 }
|
||||
z index: 1000
|
||||
alignment: middle left
|
||||
font:
|
||||
name: { body_font() }
|
||||
italic name: { body_font_italic() }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
color: { body_font_color() }
|
||||
symbol font:
|
||||
name: { styling.text_box_mana_symbols }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
line height hard: { if is_modal(card.level_4_text) then 0.9 else 1.2 }
|
||||
line height line: 1.5
|
||||
line height soft: 0.9
|
||||
line height hard max: { if is_modal(card.level_4_text) then 1.0 else 1.3 }
|
||||
line height line max: 1.6
|
||||
line height soft max: 0.9
|
||||
level 5 text:
|
||||
left: 86
|
||||
top: { card_style.level_4_text.bottom }
|
||||
width: 230
|
||||
height: { if abilities_count() > 4 then textbox_heights()[4] + textbox_move(5) else 0 }
|
||||
z index: 1000
|
||||
alignment: middle left
|
||||
font:
|
||||
name: { body_font() }
|
||||
italic name: { body_font_italic() }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
color: { body_font_color() }
|
||||
symbol font:
|
||||
name: { styling.text_box_mana_symbols }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
line height hard: { if is_modal(card.level_5_text) then 0.9 else 1.2 }
|
||||
line height line: 1.5
|
||||
line height soft: 0.9
|
||||
line height hard max: { if is_modal(card.level_5_text) then 1.0 else 1.3 }
|
||||
line height line max: 1.6
|
||||
line height soft max: 0.9
|
||||
level 6 text:
|
||||
left: 86
|
||||
top: { card_style.level_5_text.bottom }
|
||||
width: 230
|
||||
height: { if abilities_count() > 5 then textbox_heights()[5] + textbox_move(6) else 0 }
|
||||
z index: 1000
|
||||
alignment: middle left
|
||||
font:
|
||||
name: { body_font() }
|
||||
italic name: { body_font_italic() }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
color: { body_font_color() }
|
||||
symbol font:
|
||||
name: { styling.text_box_mana_symbols }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
line height hard: { if is_modal(card.level_6_text) then 0.9 else 1.2 }
|
||||
line height line: 1.5
|
||||
line height soft: 0.9
|
||||
line height hard max: { if is_modal(card.level_6_text) then 1.0 else 1.3 }
|
||||
line height line max: 1.6
|
||||
line height soft max: 0.9
|
||||
level 7 text:
|
||||
left: 86
|
||||
top: { card_style.level_6_text.bottom }
|
||||
width: 230
|
||||
height: { if abilities_count() > 6 then textbox_heights()[6] + textbox_move(7) else 0 }
|
||||
z index: 1000
|
||||
alignment: middle left
|
||||
font:
|
||||
name: { body_font() }
|
||||
italic name: { body_font_italic() }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
color: { body_font_color() }
|
||||
symbol font:
|
||||
name: { styling.text_box_mana_symbols }
|
||||
size: { body_font_size() }
|
||||
#scale down to: 7
|
||||
line height hard: { if is_modal(card.level_7_text) then 0.9 else 1.2 }
|
||||
line height line: 1.5
|
||||
line height soft: 0.9
|
||||
line height hard max: { if is_modal(card.level_7_text) then 1.0 else 1.3 }
|
||||
line height line max: 1.6
|
||||
line height soft max: 0.9
|
||||
separator 8:
|
||||
left: 32
|
||||
top: 259
|
||||
width: 315
|
||||
height: 18
|
||||
z index: 1010
|
||||
render style: image
|
||||
image: { set_alpha(alpha:0.7, "/magic-modules.mse-include/separators/" + card.separator_8 + ".png") }
|
||||
mask: { crop_safe("bookmark_mask.png", offset_x: 32, offset_y: 259, width: 315, height: 18) }
|
||||
separator:
|
||||
left: 32
|
||||
top: { hack_to_force_update := card_style.level_2_text.content_width; card_style.level_2_text.top - 8 + separator_move(1) }
|
||||
width: 327
|
||||
height: 18
|
||||
z index: 1010
|
||||
visible: { abilities_count() > 1 }
|
||||
render style: image
|
||||
image: { set_alpha(alpha:0.7, "/magic-modules.mse-include/separators/" + card.separator + ".png") }
|
||||
mask: { crop_safe("bookmark_mask.png", offset_x: 32, offset_y: card_style.level_2_text.top - 8 + separator_move(1), width: 327, height: 18) }
|
||||
separator 2:
|
||||
left: 32
|
||||
top: { hack_to_force_update := card_style.level_3_text.content_width; card_style.level_3_text.top - 8 + separator_move(2) }
|
||||
width: 327
|
||||
height: 18
|
||||
z index: 1010
|
||||
visible: { abilities_count() > 2 }
|
||||
render style: image
|
||||
image: { set_alpha(alpha:0.7, "/magic-modules.mse-include/separators/" + card.separator_2 + ".png") }
|
||||
mask: { crop_safe("bookmark_mask.png", offset_x: 32, offset_y: card_style.level_3_text.top - 8 + separator_move(2), width: 327, height: 18) }
|
||||
separator 3:
|
||||
left: 32
|
||||
top: { hack_to_force_update := card_style.level_4_text.content_width; card_style.level_4_text.top - 8 + separator_move(3) }
|
||||
width: 327
|
||||
height: 18
|
||||
z index: 1010
|
||||
visible: { abilities_count() > 3 }
|
||||
render style: image
|
||||
image: { set_alpha(alpha:0.7, "/magic-modules.mse-include/separators/" + card.separator_3 + ".png") }
|
||||
mask: { crop_safe("bookmark_mask.png", offset_x: 32, offset_y: card_style.level_4_text.top - 8 + separator_move(3), width: 327, height: 18) }
|
||||
separator 4:
|
||||
left: 32
|
||||
top: { hack_to_force_update := card_style.level_5_text.content_width; card_style.level_5_text.top - 8 + separator_move(4) }
|
||||
width: 327
|
||||
height: 18
|
||||
z index: 1010
|
||||
visible: { abilities_count() > 4 }
|
||||
render style: image
|
||||
image: { set_alpha(alpha:0.7, "/magic-modules.mse-include/separators/" + card.separator_4 + ".png") }
|
||||
mask: { crop_safe("bookmark_mask.png", offset_x: 32, offset_y: card_style.level_5_text.top - 8 + separator_move(4), width: 327, height: 18) }
|
||||
separator 5:
|
||||
left: 32
|
||||
top: { hack_to_force_update := card_style.level_6_text.content_width; card_style.level_6_text.top - 8 + separator_move(5) }
|
||||
width: 327
|
||||
height: 18
|
||||
z index: 1010
|
||||
visible: { abilities_count() > 5 }
|
||||
render style: image
|
||||
image: { set_alpha(alpha:0.7, "/magic-modules.mse-include/separators/" + card.separator_5 + ".png") }
|
||||
mask: { crop_safe("bookmark_mask.png", offset_x: 32, offset_y: card_style.level_6_text.top - 8 + separator_move(5), width: 327, height: 18) }
|
||||
separator 6:
|
||||
left: 32
|
||||
top: { hack_to_force_update := card_style.level_7_text.content_width; card_style.level_7_text.top - 8 + separator_move(6) }
|
||||
width: 327
|
||||
height: 18
|
||||
z index: 1010
|
||||
visible: { abilities_count() > 6 }
|
||||
render style: image
|
||||
image: { set_alpha(alpha:0.7, "/magic-modules.mse-include/separators/" + card.separator_6 + ".png") }
|
||||
mask: { crop_safe("bookmark_mask.png", offset_x: 32, offset_y: card_style.level_7_text.top - 8 + separator_move(6), width: 327, height: 18) }
|
||||
############################# PT
|
||||
pt:
|
||||
left: 502
|
||||
top: { 704 + pt_font_vertical() }
|
||||
width: 80
|
||||
height: 37
|
||||
z index: 900
|
||||
alignment: center middle shrink-overflow
|
||||
font:
|
||||
name: { pt_font() }
|
||||
size: { pt_font_size() }
|
||||
color: { pt_font_color() }
|
||||
separator color: red
|
||||
|
||||
############################################################## Extra card fields
|
||||
|
||||
extra card field:
|
||||
type: choice
|
||||
name: pt box
|
||||
script: card.card_color
|
||||
editable: false
|
||||
save value: false
|
||||
show statistics: false
|
||||
extra card field:
|
||||
type: choice
|
||||
name: crown
|
||||
script: card.card_color
|
||||
editable: false
|
||||
save value: false
|
||||
show statistics: false
|
||||
extra card field:
|
||||
type: choice
|
||||
name: gold bars
|
||||
script: card.card_color
|
||||
editable: false
|
||||
save value: false
|
||||
show statistics: false
|
||||
extra card field:
|
||||
type: choice
|
||||
name: card stamp background
|
||||
editable: false
|
||||
save value: false
|
||||
show statistics: false
|
||||
choice: card stamp background
|
||||
extra card field:
|
||||
type: choice
|
||||
name: chapter 1
|
||||
editable: false
|
||||
save value: false
|
||||
choice: chapter 1
|
||||
extra card field:
|
||||
type: choice
|
||||
name: chapter 2
|
||||
editable: false
|
||||
save value: false
|
||||
choice: chapter 2
|
||||
extra card field:
|
||||
type: choice
|
||||
name: chapter 3
|
||||
editable: false
|
||||
save value: false
|
||||
choice: chapter 3
|
||||
extra card field:
|
||||
type: choice
|
||||
name: chapter 4
|
||||
editable: false
|
||||
save value: false
|
||||
choice: chapter 4
|
||||
extra card field:
|
||||
type: choice
|
||||
name: chapter 5
|
||||
editable: false
|
||||
save value: false
|
||||
choice: chapter 5
|
||||
extra card field:
|
||||
type: choice
|
||||
name: chapter 6
|
||||
editable: false
|
||||
save value: false
|
||||
choice: chapter 6
|
||||
extra card field:
|
||||
type: choice
|
||||
name: chapter 7
|
||||
editable: false
|
||||
save value: false
|
||||
choice: chapter 7
|
||||
extra card field:
|
||||
type: choice
|
||||
name: hybrid bands
|
||||
editable: false
|
||||
save value: false
|
||||
choice: hybrid bands
|
||||
extra card field:
|
||||
type: choice
|
||||
name: art filter
|
||||
editable: false
|
||||
save value: false
|
||||
choice: art filter
|
||||
extra card style:
|
||||
pt box:
|
||||
left: 0
|
||||
top: 0
|
||||
width: { stylesheet.card_width }
|
||||
height: { stylesheet.card_height }
|
||||
z index: 820
|
||||
visible: { card.pt != "" }
|
||||
render style: image
|
||||
image:
|
||||
script:
|
||||
pure := pure_colors()
|
||||
count := length(pure)
|
||||
color := pt_colors()
|
||||
if color == "gold" and count > 1 then template("m", type: "pt")
|
||||
else if color == "land" and count > 1 then template("c", type: "pt")
|
||||
else if color == "hybrid" and count == 2 then masked_blend(mask: "special_blend_pt.png", dark: template(pure.0, type: "pt"), light: template(pure.1, type: "pt"))
|
||||
else card_ptbox()
|
||||
crown:
|
||||
left: 0
|
||||
top: 0
|
||||
width: { stylesheet.card_width }
|
||||
height: { stylesheet.card_height }
|
||||
z index: 310
|
||||
visible: { is_crowned() }
|
||||
render style: image
|
||||
image: { card_crown() }
|
||||
gold bars:
|
||||
left: 0
|
||||
top: 0
|
||||
width: { stylesheet.card_width }
|
||||
height: { stylesheet.card_height }
|
||||
z index: 310
|
||||
visible: { is_gold_barred() }
|
||||
render style: image
|
||||
image: gold_bars.png
|
||||
card stamp background:
|
||||
left: 0
|
||||
top: 0
|
||||
width: { stylesheet.card_width }
|
||||
height: { stylesheet.card_height }
|
||||
z index: 600
|
||||
render style: image
|
||||
image: { if stamp_shape() == "triangle" then card_stamprim() else card_nonstamprim() }
|
||||
mask: { if stamp_shape() == "round" then "foil_mask_round.png" else "" }
|
||||
chapter 1:
|
||||
left: 26
|
||||
top: { chapter_top(0) + chapter_move(1) }
|
||||
width: 51
|
||||
height: 57
|
||||
z index: 810
|
||||
render style: image
|
||||
image: { chapter_image(1) }
|
||||
chapter 2:
|
||||
visible: { (styling.snap_chapter_to_box == "" and abilities_count() > 1) or length(split_comma(styling.snap_chapter_to_box)) > 1 }
|
||||
left: 26
|
||||
top: { chapter_top(1) + chapter_move(2) }
|
||||
width: 51
|
||||
height: 57
|
||||
z index: 810
|
||||
render style: image
|
||||
image: { chapter_image(2) }
|
||||
chapter 3:
|
||||
visible: { (styling.snap_chapter_to_box == "" and abilities_count() > 2) or length(split_comma(styling.snap_chapter_to_box)) > 2 }
|
||||
left: 26
|
||||
top: { chapter_top(2) + chapter_move(3) }
|
||||
width: 51
|
||||
height: 57
|
||||
z index: 810
|
||||
render style: image
|
||||
image: { chapter_image(3) }
|
||||
chapter 4:
|
||||
visible: { (styling.snap_chapter_to_box == "" and abilities_count() > 3) or length(split_comma(styling.snap_chapter_to_box)) > 3 }
|
||||
left: 26
|
||||
top: { chapter_top(3) + chapter_move(4) }
|
||||
width: 51
|
||||
height: 57
|
||||
z index: 810
|
||||
render style: image
|
||||
image: { chapter_image(4) }
|
||||
chapter 5:
|
||||
visible: { (styling.snap_chapter_to_box == "" and abilities_count() > 4) or length(split_comma(styling.snap_chapter_to_box)) > 4 }
|
||||
left: 26
|
||||
top: { chapter_top(4) + chapter_move(5) }
|
||||
width: 51
|
||||
height: 57
|
||||
z index: 810
|
||||
render style: image
|
||||
image: { chapter_image(5) }
|
||||
chapter 6:
|
||||
visible: { (styling.snap_chapter_to_box == "" and abilities_count() > 5) or length(split_comma(styling.snap_chapter_to_box)) > 5 }
|
||||
left: 26
|
||||
top: { chapter_top(5) + chapter_move(6) }
|
||||
width: 51
|
||||
height: 57
|
||||
z index: 810
|
||||
render style: image
|
||||
image: { chapter_image(6) }
|
||||
chapter 7:
|
||||
visible: { (styling.snap_chapter_to_box == "" and abilities_count() > 6) or length(split_comma(styling.snap_chapter_to_box)) > 6 }
|
||||
left: 26
|
||||
top: { chapter_top(6) + chapter_move(7) }
|
||||
width: 51
|
||||
height: 57
|
||||
z index: 810
|
||||
render style: image
|
||||
image: { chapter_image(7) }
|
||||
hybrid bands:
|
||||
left: 0
|
||||
top: 0
|
||||
width: { stylesheet.card_width }
|
||||
height: { stylesheet.card_height }
|
||||
z index: 210
|
||||
visible:
|
||||
script:
|
||||
count := length(pure_colors(card.card_color))
|
||||
artifact := contains(card.card_color, match: "artifact")
|
||||
hybrid := contains(card.card_color, match: "hybrid")
|
||||
contains(card.card_color, match: "horizontal") and
|
||||
(
|
||||
(count == 2 and not (artifact and hybrid))
|
||||
or
|
||||
(count == 1 and (artifact and hybrid))
|
||||
)
|
||||
render style: image
|
||||
image: hybrid_bands.png
|
||||
art filter:
|
||||
left: 0
|
||||
top: 0
|
||||
width: { stylesheet.card_width }
|
||||
height: { stylesheet.card_height }
|
||||
z index: 10
|
||||
render style: image
|
||||
image: { set_alpha("art_filter.png", alpha: get_alpha_percentage(styling.art_filter_opacity_percentage, default: 80)) }
|
||||