mse version: 2.0.0 game: magic short name: DFC/Saga full name: M15 DFCs installer group: magic/m15 style/double-faced cards icon: card-sample.png position hint: 060 version: 2018-06-19 depends on: package: magic.mse-game version: 2014-06-25 depends on: package: magic-watermarks.mse-include version: 2007-09-23 depends on: package: magic-mana-large.mse-symbol-font version: 2007-09-23 depends on: package: magic-mana-small.mse-symbol-font version: 2007-09-23 depends on: package: magic-identity-new.mse-include version: 2012-01-22 depends on: package: magic-mainframe-extras.mse-include version: 2017-05-05 card width: 752 card height: 523 card dpi: 150 ############################################################## Extra scripts init script: # Should hybrids have a grey name? mask_hybrid_with_land := { styling.grey_hybrid_name } template_prefix := [card: "normal/" card2: "normal/" card3: "planeswalker/" card4: "planeswalker/" card5: "planeswalker/" card6: "planeswalker/" card7: "fullart/" card8: "fullart/" nyx: "nyx/" miracle: "miracles/" nyx2: "nyx/" miracle2: "miracles/" legend: "legend/" legend2: "legend/" cb: "" cb2: "" map: "maps/" mappt: "maps/" pt: "normal/" pt2: "normal/" stamp2: "normal/" stamp: "" identity: "/magic-identity-new.mse-include/" identity2: "/magic-identity-new.mse-include/" saga: "saga/" saga2: "saga/"] template_suffix := [card: "card.jpg" card2: "card2.jpg" card3: "card.jpg" card4: "card2.jpg" card5: "card3.jpg" card6: "card4.jpg" card7: "card.jpg" card8: "card2.jpg" nyx: "nyx.png" miracle: "miracle.png" nyx2: "nyx.png" miracle2: "miracle2.png" legend: "crown.png" legend2: "crown.png" cb: "cb.png" cb2: "cb.png" map: "card.png" mappt: "pt.png" stamp: "stamp.jpg" stamp2: "stamp.jpg" pt: "pt.png" pt2: "pt2.png" identity: "identity.png" identity2: "identity.png" saga: "card.jpg" saga2: "card2.jpg"] template := { template_prefix[type] + input + template_suffix[type] } land_template := { template_prefix[type] + input + "l" + template_suffix[type] } # Use land templates for previews because they show more contrast hybrid_previews := "land,hybrid" # The normal backface card_background2 := { color_background(type:"card2", base_hybrid:card_hybrid) } # The planeswalker front face card_background3 := { color_background(type:"card3", base_hybrid:card_hybrid) } # The planeswalker backface card_background4 := { color_background(type:"card4", base_hybrid:card_hybrid) } # The 4walker front face card_background5 := { color_background(type:"card5", base_hybrid:card_hybrid) } # The 4walker backface card_background6 := { color_background(type:"card6", base_hybrid:card_hybrid) } # The nyx frontface nyx_background := { color_background(type:"nyx", base_hybrid:card_hybrid) } # The nyx backface nyx_background2 := { color_background(type:"nyx2", base_hybrid:card_hybrid) } # The miracle frontface miracle_background := { color_background(type:"miracle", base_hybrid:card_hybrid) } # The miracle backface miracle_background2 := { color_background(type:"miracle2", base_hybrid:card_hybrid) } # The legend frontface legend_background := { color_background(type:"legend", base_hybrid:card_hybrid) } # The legend backface legend_background2 := { color_background(type:"legend2", base_hybrid:card_hybrid) } # The front map face map_background := { color_background(type:"map", base_hybrid:card_hybrid) } # The second map face map_background2 := { color_background(type:"map", base_hybrid:card_hybrid) } # The front fullart face fullart_background := { color_background(type:"card7", base_hybrid:card_hybrid) } # The second fullart face fullart_background2 := { color_background(type:"card8", base_hybrid:card_hybrid) } # The saga front face saga_background := { color_background(type:"saga", base_hybrid:card_hybrid) } # The saga back face saga_background2 := { color_background(type:"saga2", base_hybrid:card_hybrid) } # pt scripts card_ptbox2 := { color_background(type:"pt2", base_hybrid:pt_hybrid) } card_mapbox := { color_background(type:"mappt", base_hybrid:pt_hybrid) } card_mapbox2 := { color_background(type:"mappt", base_hybrid:pt_hybrid) } # doublecast flag scripts card_cb2 := { color_background(type:"cb2", base_hybrid:card_hybrid) } card_cb := { color_background(type:"cb", 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 } # Loyalty cost arrows loyalty_image := { if contains(input, match: "+") then "loyalty up" else if contains(input, match: "-") then "loyalty down" else "loyalty naught" } card_shape := {"double faced"} # Is the card a promo card? is_promo := { contains(styling.other_options, match:"promo") } is_full := { contains(styling.other_options, match:"fullart game day promo") and not is_plwalker() and not is_map() and not front_clear()} back_full := { contains(styling.other_options, match:"fullart game day promo") and not back_walker() and not back_map() and not back_clear()} is_plwalker := {contains(styling.front_style, match:"planeswalker")} back_walker := {contains(styling.back_style, match:"planeswalker")} is_saga := {contains(styling.front_style, match:"saga")} back_saga := {contains(styling.back_style, match:"saga")} comma_count := filter_text@(match:",") paragraph_count := replace@(match:"\n", replace:"")+ filter_text@(match:"\n") sprt_default := { if is_saga() then "(As this Saga enters and after your draw step, add a lore counter. Sacrifice after ]I[]I[]I[.)" else "" } sprt_default_back := { if back_saga() then "(As this Saga enters and after your draw step, add a lore counter. Sacrifice after ]I[]I[]I[.)" else "" } # Front Face has_four_abilities := { styling.front_style == "4 ability planeswalker" } has_two_abilities := { styling.front_style == "2 ability planeswalker" } is_normal := { not is_saga() and not contains(styling.front_style, match:"planeswalker") } has_three_abilities := {styling.front_style == "3 ability planeswalker" } is_stamped := { is_rare() and contains(styling.other_options, match:"use holofoil stamps") } is_normal_size := { not contains(styling.other_options, match:"wider planeswalker image") } lv1_chop_top := { if comma_count(styling.level_1_chop) == ",," then to_int(split_text(match:",", styling.level_1_chop).0) or else 0 } lv1_chop_bot := { if comma_count(styling.level_1_chop) == ",," then to_int(split_text(match:",", styling.level_1_chop).1) or else 0 } lv2_chop_top := { if comma_count(styling.level_2_chop) == ",," then to_int(split_text(match:",", styling.level_2_chop).0) or else 0 } lv2_chop_bot := { if comma_count(styling.level_2_chop) == ",," then to_int(split_text(match:",", styling.level_2_chop).1) or else 0 } lv3_chop_top := { if comma_count(styling.level_3_chop) == ",," then to_int(split_text(match:",", styling.level_3_chop).0) or else 0 } lv3_chop_bot := { if comma_count(styling.level_3_chop) == ",," then to_int(split_text(match:",", styling.level_3_chop).1) or else 0 } lv4_chop_top := { if comma_count(styling.level_4_chop) == ",," then to_int(split_text(match:",", styling.level_4_chop).0) or else 0 } lv4_chop_bot := { if comma_count(styling.level_4_chop) == ",," then to_int(split_text(match:",", styling.level_4_chop).1) or else 0 } loyal_move := { if styling.move_loyalty_costs != "" and comma_count(styling.move_loyalty_costs) == ",,,," then to_int(split_text(match:",", styling.move_loyalty_costs).0) or else 0 } loyal_move2 := { if styling.move_loyalty_costs != "" and comma_count(styling.move_loyalty_costs) == ",,,," then to_int(split_text(match:",", styling.move_loyalty_costs).1) or else 0 } loyal_move3 := { if styling.move_loyalty_costs != "" and comma_count(styling.move_loyalty_costs) == ",,,," then to_int(split_text(match:",", styling.move_loyalty_costs).2) or else 0 } loyal_move4 := { if styling.move_loyalty_costs != "" and comma_count(styling.move_loyalty_costs) == ",,,," then to_int(split_text(match:",", styling.move_loyalty_costs).3) or else 0 } # Back Face back_four_abilities := { styling.back_style == "4 ability planeswalker" } back_two_abilities := { styling.back_style == "2 ability planeswalker" } back_normal := { not back_saga() and not contains(styling.back_style, match:"planeswalker") } back_three_abilities := {styling.back_style == "3 ability planeswalker" } lv5_chop_top := { if comma_count(styling.level_5_chop) == ",," then to_int(split_text(match:",", styling.level_5_chop).0) or else 0 } lv5_chop_bot := { if comma_count(styling.level_5_chop) == ",," then to_int(split_text(match:",", styling.level_5_chop).1) or else 0 } lv6_chop_top := { if comma_count(styling.level_6_chop) == ",," then to_int(split_text(match:",", styling.level_6_chop).0) or else 0 } lv6_chop_bot := { if comma_count(styling.level_6_chop) == ",," then to_int(split_text(match:",", styling.level_6_chop).1) or else 0 } lv7_chop_top := { if comma_count(styling.level_7_chop) == ",," then to_int(split_text(match:",", styling.level_7_chop).0) or else 0 } lv7_chop_bot := { if comma_count(styling.level_7_chop) == ",," then to_int(split_text(match:",", styling.level_7_chop).1) or else 0 } lv8_chop_top := { if comma_count(styling.level_8_chop) == ",," then to_int(split_text(match:",", styling.level_8_chop).0) or else 0 } lv8_chop_bot := { if comma_count(styling.level_8_chop) == ",," then to_int(split_text(match:",", styling.level_8_chop).1) or else 0 } loyal_move5 := { if styling.move_back_loyalty_costs != "" and comma_count(styling.move_back_loyalty_costs) == ",,,," then to_int(split_text(match:",", styling.move_back_loyalty_costs).0) or else 0 } loyal_move6 := { if styling.move_back_loyalty_costs != "" and comma_count(styling.move_back_loyalty_costs) == ",,,," then to_int(split_text(match:",", styling.move_back_loyalty_costs).1) or else 0 } loyal_move7 := { if styling.move_back_loyalty_costs != "" and comma_count(styling.move_back_loyalty_costs) == ",,,," then to_int(split_text(match:",", styling.move_back_loyalty_costs).2) or else 0 } loyal_move8 := { if styling.move_back_loyalty_costs != "" and comma_count(styling.move_back_loyalty_costs) == ",,,," then to_int(split_text(match:",", styling.move_back_loyalty_costs).3) or else 0 } bottom_of_walker_textbox := { if has_four_abilities() then stripe31()+10-lv1_chop_bot() else if has_two_abilities() then 404-lv1_chop_bot() else if has_three_abilities() then stripe12()+10-lv1_chop_bot() else 481 } bottom_of_textbox_2 := { if back_four_abilities() then stripe31b()+10-lv5_chop_bot() else if back_two_abilities() then 404-lv5_chop_bot() else if back_three_abilities() then stripe12b()+10-lv5_chop_bot() else 481 } mask_script := { if contains(styling.custom_mask, match:".png") then ("/magic-mainframe-extras.mse-include/" + styling.custom_mask) else if front_clear() and is_normal() then "imagemask_clear_normal.png" else if front_clear() then "imagemask_clear.png" else if is_full() and is_stamped() then "fullart/image_mask_rare.png" else if is_full() then "fullart/image_mask.png" else if is_normal() or is_saga() then "" else if use_full_art() and has_four_abilities() then "4tress_imagemask_level.png" else if use_full_art() and has_four_abilities() then "4tress_imagemask.png" else if use_full_art() and is_level_walker() then "fortress_imagemask_level.png" else if use_full_art() then "fortress_imagemask.png" else "imagemask" + ( if has_two_abilities() then "_2abil" else "" ) + ( if has_four_abilities() then "_4abil" else "" ) + ( if is_rare() and contains(styling.other_options, match:"holofoil") then "_rare" else "" ) + ( if is_normal_size() then "" else "_wide" ) + ( if slide_two() or slide_three() or slide_four() then "_level") + ".png" } back_mask_script := { if contains(styling.custom_mask_2, match:".png") then ("/magic-mainframe-extras.mse-include/" + styling.custom_mask_2) else if back_clear() and back_normal() then "imagemask_clear_normal.png" else if back_clear() then "imagemask_clear.png" else if back_full() then "fullart/image_mask.png" else if back_normal() or back_saga() then "" else if use_full_art() and back_four_abilities() then "4tress_imagemask_level.png" else if use_full_art() and back_four_abilities() then "4tress_imagemask.png" else if use_full_art() then "fortress_imagemask_level.png" else if use_full_art() then "fortress_imagemask.png" else "imagemask" + ( if back_normal() and back_clear() then "_clear_normal" else "") + ( if back_two_abilities() then "_2abil" else "" ) + ( if back_four_abilities() then "_4abil" else "" ) + ( if is_normal_size() then "" else "_wide" ) + ( if backslide_two() or backslide_three() or backslide_four() then "_level") + ".png" } #Front face Saga split_12 := {if styling.chapter_divider_coordinates != "" and contains(comma_count(styling.chapter_divider_coordinates), match: ",") then to_int(split_text(match:",", styling.chapter_divider_coordinates).0) else if two_boxes() then 296 else if four_boxes() then 225 or else 249} split_23 := {if styling.chapter_divider_coordinates != "" and contains(comma_count(styling.chapter_divider_coordinates), match: ",,") then to_int(split_text(match:",", styling.chapter_divider_coordinates).1) else if two_boxes() then 437 else if four_boxes() then 296 or else 343} split_34 := {if styling.chapter_divider_coordinates != "" and contains(comma_count(styling.chapter_divider_coordinates), match: ",,,") then to_int(split_text(match:",", styling.chapter_divider_coordinates).2) else if three_boxes() then 437 else if four_boxes() then 367 or else 600} chapter1 := { if styling.chapter_number_coordinates != "" and contains(comma_count(styling.chapter_number_coordinates), match: ",") then to_int(split_text(match:",", styling.chapter_number_coordinates).0) else if two_boxes() then 183 or else 185 } chapter2 := { if styling.chapter_number_coordinates != "" and contains(comma_count(styling.chapter_number_coordinates), match: ",,") then to_int(split_text(match:",", styling.chapter_number_coordinates).1) else if two_boxes() then 223 or else 279 } chapter3 := { if styling.chapter_number_coordinates != "" and contains(comma_count(styling.chapter_number_coordinates), match: ",,,") then to_int(split_text(match:",", styling.chapter_number_coordinates).2) else if two_boxes() then 329 or else 373 } chapter4 := { if styling.chapter_number_coordinates != "" and contains(comma_count(styling.chapter_number_coordinates), match: ",,,,") then to_int(split_text(match:",", styling.chapter_number_coordinates).3) or else 600 } chapter5 := { if styling.chapter_number_coordinates != "" and contains(comma_count(styling.chapter_number_coordinates), match: ",,,,,") then to_int(split_text(match:",", styling.chapter_number_coordinates).4) or else 600 } build_array := { if input +17 >= (if split_34() != "" then split_34() else 600) then 4 else if input +17 >= (if split_23() != "" then split_23() else 343) then 3 else if input +17 >= (if split_12() != "" then split_12() else 249) then 2 else if input +17 <= (if split_12() != "" then split_12() else 249) then 1 } level_leader := { (if build_array((if chapter1() != "" then chapter1() else 185)) == input then "I, ") +(if build_array((if chapter2() != "" then chapter2() else 279)) == input then "II, ") +(if build_array((if chapter3() != "" then chapter3() else 373)) == input then "III, ") +(if build_array((if chapter4() != "" then chapter4() else 600)) == input then "IV, ") +(if build_array((if chapter5() != "" then chapter5() else 600)) == input then "V, ") } end_leader := replace@(match:", $", replace:" — ") two_boxes := {styling.chapter_textboxes == "two" } three_boxes := {styling.chapter_textboxes == "three" or comma_count(styling.chapter_divider_coordinates) == ",,"} four_boxes := {styling.chapter_textboxes == "four" or comma_count(styling.chapter_divider_coordinates) == ",,,"} #Back face Saga split_12_back := {if styling.chapter_divider_coordinates_back != "" and contains(comma_count(styling.chapter_divider_coordinates_back), match: ",") then to_int(split_text(match:",", styling.chapter_divider_coordinates_back).0) else if two_boxes() then 296 else if four_boxes() then 225 or else 249} split_23_back := {if styling.chapter_divider_coordinates_back != "" and contains(comma_count(styling.chapter_divider_coordinates_back), match: ",,") then to_int(split_text(match:",", styling.chapter_divider_coordinates_back).1) else if two_boxes() then 437 else if four_boxes() then 296 or else 343} split_34_back := {if styling.chapter_divider_coordinates_back != "" and contains(comma_count(styling.chapter_divider_coordinates_back), match: ",,,") then to_int(split_text(match:",", styling.chapter_divider_coordinates_back).2) else if three_boxes() then 437 else if four_boxes() then 367 or else 600} chapter6 := { if styling.chapter_number_coordinates_back != "" and contains(comma_count(styling.chapter_number_coordinates_back), match: ",") then to_int(split_text(match:",", styling.chapter_number_coordinates_back).0) else if two_boxes() then 183 or else 185 } chapter7 := { if styling.chapter_number_coordinates_back != "" and contains(comma_count(styling.chapter_number_coordinates_back), match: ",,") then to_int(split_text(match:",", styling.chapter_number_coordinates_back).1) else if two_boxes() then 223 or else 279 } chapter8 := { if styling.chapter_number_coordinates_back != "" and contains(comma_count(styling.chapter_number_coordinates_back), match: ",,,") then to_int(split_text(match:",", styling.chapter_number_coordinates_back).2) else if two_boxes() then 329 or else 373 } chapter9 := { if styling.chapter_number_coordinates_back != "" and contains(comma_count(styling.chapter_number_coordinates_back), match: ",,,,") then to_int(split_text(match:",", styling.chapter_number_coordinates_back).3) or else 600 } chapter10 := { if styling.chapter_number_coordinates_back != "" and contains(comma_count(styling.chapter_number_coordinates_back), match: ",,,,,") then to_int(split_text(match:",", styling.chapter_number_coordinates_back).4) or else 600 } build_array_back := { if input +17 >= (if split_34_back() != "" then split_34_back() else 600) then 4 else if input +17 >= (if split_23_back() != "" then split_23_back() else 343) then 3 else if input +17 >= (if split_12_back() != "" then split_12_back() else 249) then 2 else if input +17 <= (if split_12_back() != "" then split_12_back() else 249) then 1 } level_leader_back := { (if build_array((if chapter6() != "" then chapter6() else 185)) == input then "I, ") +(if build_array((if chapter7() != "" then chapter7() else 279)) == input then "II, ") +(if build_array((if chapter8() != "" then chapter8() else 373)) == input then "III, ") +(if build_array((if chapter9() != "" then chapter9() else 600)) == input then "IV, ") +(if build_array((if chapter10() != "" then chapter10() else 600)) == input then "V, ") } two_boxes_back := {styling.chapter_textboxes_back == "two" } three_boxes_back := {styling.chapter_textboxes_back == "three" or comma_count(styling.chapter_divider_coordinates_back) == ",,"} four_boxes_back := {styling.chapter_textboxes_back == "four" or comma_count(styling.chapter_divider_coordinates_back) == ",,,"} text_size := { 14 -(if styling.front_font_cap == "" then 0 else if contains(styling.front_font_cap, match: ".5") then to_int(split_text(match:".5", styling.separated_text_size).0) else styling.front_font_cap) } text_size2 := { 14 -(if styling.back_font_cap == "" then 0 else if contains(styling.back_font_cap, match: ".5") then to_int(split_text(match:".5", styling.separated_text_size).0) else styling.back_font_cap) } stripe01 := { if comma_count(styling.stripe_coordinate) == "," then 345 + (if to_int(split_text(match:",", styling.stripe_coordinate).0) > 95 then 95 else to_int(split_text(match:",", styling.stripe_coordinate).0) or else 0) else 393} stripe12 := { if comma_count(styling.stripe_coordinate) == ",," then 345 + (if to_int(split_text(match:",", styling.stripe_coordinate).0) > 95 then 95 else to_int(split_text(match:",", styling.stripe_coordinate).0) or else 0) else 372} stripe23 := { if comma_count(styling.stripe_coordinate) == ",," then 345 + (if to_int(split_text(match:",", styling.stripe_coordinate).1) > 95 then 95 else to_int(split_text(match:",", styling.stripe_coordinate).1) or else 0) else 425} stripe31 := { if comma_count(styling.stripe_coordinate) == ",,," then 309 + (if to_int(split_text(match:",", styling.stripe_coordinate).0) > 147 then 95 else to_int(split_text(match:",", styling.stripe_coordinate).0) or else 0) else 330} stripe32 := { if comma_count(styling.stripe_coordinate) == ",,," then 309 + (if to_int(split_text(match:",", styling.stripe_coordinate).1) > 147 then 95 else to_int(split_text(match:",", styling.stripe_coordinate).1) or else 0) else 378} stripe33 := { if comma_count(styling.stripe_coordinate) == ",,," then 309 + (if to_int(split_text(match:",", styling.stripe_coordinate).2) > 147 then 95 else to_int(split_text(match:",", styling.stripe_coordinate).2) or else 0) else 428} stripe01b := { if comma_count(styling.back_stripe_coordinate) == "," then 345 + (if to_int(split_text(match:",", styling.back_stripe_coordinate).0) > 95 then 95 else to_int(split_text(match:",", styling.back_stripe_coordinate).0) or else 0) else 393} stripe12b := { if comma_count(styling.back_stripe_coordinate) == ",," then 345 + (if to_int(split_text(match:",", styling.back_stripe_coordinate).0) > 95 then 95 else to_int(split_text(match:",", styling.back_stripe_coordinate).0) or else 0) else 372} stripe23b := { if comma_count(styling.back_stripe_coordinate) == ",," then 345 + (if to_int(split_text(match:",", styling.back_stripe_coordinate).1) > 95 then 95 else to_int(split_text(match:",", styling.back_stripe_coordinate).1) or else 0) else 425} stripe31b := { if comma_count(styling.back_stripe_coordinate) == ",,," then 309 + (if to_int(split_text(match:",", styling.back_stripe_coordinate).0) > 147 then 95 else to_int(split_text(match:",", styling.back_stripe_coordinate).0) or else 0) else 330} stripe32b := { if comma_count(styling.back_stripe_coordinate) == ",,," then 309 + (if to_int(split_text(match:",", styling.back_stripe_coordinate).1) > 147 then 95 else to_int(split_text(match:",", styling.back_stripe_coordinate).1) or else 0) else 378} stripe33b:= { if comma_count(styling.back_stripe_coordinate) == ",,," then 309 + (if to_int(split_text(match:",", styling.back_stripe_coordinate).2) > 147 then 95 else to_int(split_text(match:",", styling.back_stripe_coordinate).2) or else 0) else 428} slide_two := { has_two_abilities() and comma_count(styling.stripe_coordinate) == "," } slide_three := { has_three_abilities() and not has_four_abilities() and comma_count(styling.stripe_coordinate) == ",," } slide_four := { has_four_abilities() and comma_count(styling.stripe_coordinate) == ",,," } backslide_two := { back_two_abilities() and comma_count(styling.back_stripe_coordinate) == "," } backslide_three := { back_three_abilities() and not back_four_abilities() and comma_count(styling.back_stripe_coordinate) == ",," } backslide_four := { back_four_abilities() and comma_count(styling.back_stripe_coordinate) == ",,," } has_identity := { contains(styling.other_options, match:"front color indicator")} has_identity2 := { contains(styling.other_options, match:"back color indicator")} is_unsorted := {contains(styling.other_options, match:"remove from autocount")} front_clear := {contains(styling.other_options, match:"clear front")} back_clear:= {contains(styling.other_options, match:"clear back")} two_clear := {has_two_abilities() and not slide_two() and front_clear()} two_back_clear := {has_two_abilities() and not backslide_two() and back_clear()} use_full_art := {"false"} is_miracle := {styling.front_style == "miracle"} is_nyx := {styling.front_style == "nyx"} is_vehicle := {styling.front_style == "vehicle"} is_map := {styling.front_style == "map"} back_miracle := {styling.back_style == "miracle"} back_nyx := {styling.back_style == "nyx"} back_vehicle := {styling.back_style == "vehicle"} back_map := {styling.back_style == "map"} is_legend := {is_normal() and not is_map() and (contains(styling.other_options, match:"legendary front") or (contains(card.super_type, match:"Legendary") and set.auto_legends)) } back_legend := {back_normal() and not back_map() and (contains(styling.other_options, match: "legendary back") or (contains(card.super_type_2, match: "Legendary") and set.auto_legends))} ##### mainframe stuff shrink_type := {if styling.shrink_typeline_text != "" then to_number(styling.shrink_typeline_text) else 0 } shrink_name := {if styling.shrink_name_text != "" then to_number(styling.shrink_name_text) else 0 } shrink_type2 := {if styling.shrink_back_typeline_text != "" then to_number(styling.shrink_back_typeline_text) else 0 } shrink_name2 := {if styling.shrink_back_name_text != "" then to_number(styling.shrink_back_name_text) else 0 } is_flagged := {contains(styling.other_options, match: "use doublecast flags") } use_main_rarity := { contains(set.mainframe_rarity_name, match: ".png")} un_png := replace@(match:".png", replace: "") ancestral_mana := { contains(styling.other_options, match:"ancestral generic")} ##### flavor bar stuff bar_offset := {if styling_offset() == "-" then 0 else if styling_offset() != "" then -styling_offset() else 0} styling_offset := { replace(styling.flavor_bar_offset, match:"(u|d)+", replace: "") } bar_equation := { top_of_textbox() + padding_height() + card_style.text.content_height - height_of_flavor() + linebreak_height() - uneven_correction() + correction_coeff() + bar_offset() + hard_flavor_break() +1 } padding_height := { 0.5*(bottom_of_textbox() - top_of_textbox() - card_style.text.content_height) } chop_correction := { lv1_chop_bot() } top_of_textbox := {if is_normal() then (if is_map() then 340 else if is_full() then 359 else 327)-lv1_chop_top()} bottom_of_textbox := {if is_normal() then (if is_map() then 475 else 481)-lv1_chop_bot() else 0} top_of_textbox2 := {if back_normal() then (if back_map() then 340 else if back_full() then 359 else 327)-lv5_chop_top()} bottom_of_textbox2 := {if back_normal() then (if back_map() then 475 else 481)-lv5_chop_bot() else 0} ##### backface bar flavor_text2 := {remove_tags(card.flavor_text_2) + "\n"} length_of_flavor2 := { to_int(length(split_text(match:"\n", flavor_text2()).0)) } hard_flavor_break2 := { if not contains(card.flavor_text_2, match:"\n") then 0 else if contains(card.flavor_text_2, match:"\n") then 0 else if lines_of_rules2() >= 3 then -3 else -2} char_per_line2 := { (if card_style.text_2.content_lines == "9" then 60 else if card_style.text_2.content_lines == "8" then 52 else if card_style.text_2.content_lines == "7" then 49 else if card_style.text_2.content_lines == "6" then 46 else 42.5) + (if card_style.text_2.content_lines < 7 then (4*chop_correction2())/line_height2())} chop_correction2 := { lv5_chop_bot() } lines_of_flavor2 := { to_int((length_of_flavor2() / char_per_line2()) + 0.99) + (if length(split_text(match:"\n", flavor_text2()).1) >= max(43,char_per_line2()-4) then 2 else if split_text(match:"\n", flavor_text2()).1 != "" then length(soft_break_filter(card.flavor_text_2)) else 0) + length(filter_text(styling.flavor_bar_offset_2, match:"u")) - length(filter_text(styling.flavor_bar_offset_2, match:"d")) + (if contains(card.notes, match:"!fb2u") then 1 else 0)} lines_of_rules2 := { card_style.text_2.content_lines - lines_of_flavor2() } line_height2 := {(card_style.text_2.content_height / card_style.text_2.content_lines)} height_of_flavor2 := { lines_of_flavor2() * line_height2() } padding_height2 := { 0.5*(bottom_of_textbox2() - top_of_textbox2() - card_style.text_2.content_height) } linebreak_height2 := { 2*length(hard_paragraph_count(card.rule_text_2)) } uneven_correction2 := { if lines_of_flavor2() == 1 then max(4, (card_style.text_2.content_lines - (2*lines_of_flavor2()))) else (card_style.text_2.content_lines - (2*lines_of_flavor2())) } bar_offset2 := {if styling_offset2() == "-" then 0 else if styling_offset2() != "" then -styling_offset2() else 0} styling_offset2 := { replace(styling.flavor_bar_offset_2, match:"(u|d)+", replace: "") } bar_equation2 := { top_of_textbox2() + padding_height2() + card_style.text_2.content_height - height_of_flavor2() + linebreak_height2() - uneven_correction2() + correction_coeff2() + bar_offset2() + hard_flavor_break2() +1 } correction_coeff2 := { (if lines_of_rules2() == 1 then (if lines_of_flavor2() == 1 then 3 else if lines_of_flavor2() == 2 then 1 else if lines_of_flavor2() == 3 then 1.5 else if lines_of_flavor2() == 4 then 0 else 5 - lines_of_flavor2()) else if lines_of_rules2() == 2 and linebreak_height2() == 2 then (if lines_of_flavor2() == 1 then 1 else if lines_of_flavor2() == 2 then 1 else if lines_of_flavor2() == 3 then 2 else if lines_of_flavor2() == 4 then 2 else 3) else if lines_of_rules2() == 2 then (if lines_of_flavor2() == 1 then 1 else if lines_of_flavor2() == 2 then 0 else if lines_of_flavor2() == 3 then 0 else if lines_of_flavor2() == 4 then 0 else -1) else if lines_of_rules2() == 3 and linebreak_height2() == 2 then (if lines_of_flavor2() == 1 then 0 else if lines_of_flavor2() == 2 then 0 else if lines_of_flavor2() == 3 then 1 else if lines_of_flavor2() == 4 then 1 else 2) else if lines_of_rules2() == 3 then (if lines_of_flavor2() == 1 then 0 else if lines_of_flavor2() == 2 then -1 else if lines_of_flavor2() == 3 then -0.5 else if lines_of_flavor2() == 4 then -1 else 0) else if lines_of_rules2() == 4 and linebreak_height2() == 2 then (-2 + lines_of_flavor2()) else if lines_of_rules2() == 4 then (if lines_of_flavor2() == 1 then -1 else if lines_of_flavor2() == 2 then 0 else if lines_of_flavor2() == 3 then -0.5 else -1) else if lines_of_rules2() == 5 and linebreak_height2() == 4 then (-5 + lines_of_flavor2()) else if lines_of_rules2() == 5 and linebreak_height2() == 2 then (-2 + lines_of_flavor2()) else if lines_of_rules2() == 5 then (2 - lines_of_flavor2()) else if lines_of_rules2() == 6 and linebreak_height2() == 2 then (-1 - lines_of_flavor2()) else if lines_of_rules2() == 6 then (2 - lines_of_flavor2()) else 0) + (if linebreak_height2() >= 4 then 0.5*linebreak_height2()-1) } special_rule_text := { if is_saga() then card.rule_text +(if card.level_1_text != "" then "\n" + end_leader(level_leader(1)) + card.level_1_text) +(if card.level_2_text != "" then "\n" + end_leader(level_leader(2)) + card.level_2_text) +(if card.level_3_text != "" then "\n" + end_leader(level_leader(3)) + card.level_3_text) +(if card.level_4_text != "" then "\n" + end_leader(level_leader(4)) + card.level_4_text) else if contains(styling.front_style, match:"planeswalker") then (if card.loyalty_cost_1 != "" then "[" + card.loyalty_cost_1 + "]: ") +(if card.level_1_text != "" and card.level_1_text != card.rule_text then card.level_1_text+"\n" else split_text(match:"\n", card.rule_text).0+"\n") + ( if card.loyalty_cost_2 != "" then "[" + card.loyalty_cost_2 + "]" + ": ") +(if card.level_2_text != "" then card.level_2_text+"\n" else if contains(paragraph_count(card.rule_text), match:"~") then split_text(match:"\n", card.rule_text).1+"\n") + ( if card.loyalty_cost_3 != "" then "[" + card.loyalty_cost_3 + "]" + ": ") +(if card.level_3_text != "" then card.level_3_text else if contains(paragraph_count(card.rule_text), match:"~~") then split_text(match:"\n", card.rule_text).2) + (if has_four_abilities() then "\n") + ( if card.loyalty_cost_4 != "" then "[" + card.loyalty_cost_4 + "]" + ": ") +(if card.level_4_text != "" then card.level_4_text else if contains(paragraph_count(card.rule_text), match:"~~~") then split_text(match:"\n", card.rule_text).3) else "" } special_rule_text2 := { if back_saga() then card.rule_text +(if card.level_5_text != "" then "\n" + end_leader(level_leader_back(1)) + card.level_5_text) +(if card.level_6_text != "" then "\n" + end_leader(level_leader_back(2)) + card.level_6_text) +(if card.level_7_text != "" then "\n" + end_leader(level_leader_back(3)) + card.level_7_text) +(if card.level_8_text != "" then "\n" + end_leader(level_leader_back(4)) + card.level_8_text) else if contains(styling.back_style, match:"planeswalker") then (if card.loyalty_cost_5 != "" then "[" + card.loyalty_cost_5 + "]: ") +(if card.level_5_text != "" and card.level_5_text != card.rule_text_2 then card.level_5_text+"\n" else split_text(match:"\n", card.rule_text_2).0+"\n") + ( if card.loyalty_cost_6 != "" then "[" + card.loyalty_cost_6 + "]" + ": ") +(if card.level_6_text != "" then card.level_6_text+"\n" else if contains(paragraph_count(card.rule_text_2), match:"~") then split_text(match:"\n", card.rule_text_2).1+"\n") + ( if card.loyalty_cost_7 != "" then "[" + card.loyalty_cost_7 + "]" + ": ") +(if card.level_7_text != "" then card.level_7_text else if contains(paragraph_count(card.rule_text_2), match:"~~") then split_text(match:"\n", card.rule_text_2).2) + (if back_four_abilities() then "\n") + ( if card.loyalty_cost_8 != "" then "[" + card.loyalty_cost_8 + "]" + ": ") +(if card.level_8_text != "" then card.level_8_text else if contains(paragraph_count(card.rule_text_2), match:"~~~") then split_text(match:"\n", card.rule_text_2).3) else "" } ############################################################## Set info fields set info style: symbol: variation: name: invertedcommon border radius: 0.10 fill type: solid fill color: rgb(255,255,255) border color: rgb(0,0,0) ############################################################## Extra style options styling field: type: text name: popout image style description: The styling instructions for the popout image field, formatted as "left,top,width,height,". The text MUST end with a comma. styling field: type: choice name: front style choice: normal choice: 3 ability planeswalker choice: 4 ability planeswalker choice: 2 ability planeswalker choice: miracle choice: nyx choice: vehicle choice: map choice: saga initial: normal description: Choose the style for the front face styling field: type: choice name: chapter textboxes description: How many textboxes does this Saga have? choice: two choice: three choice: four initial: three styling field: type: text name: chapter number coordinates description: Sets the chapter symbols at the given height. Formatted as "1,2,3," MUST end with a comma. Defaults are "183,223,329," for two and "185,279,373," for three. Use 40px offset. styling field: type: text name: chapter divider coordinates description: Sets the position of the chapter breaks. Formatted as "1,2," MUST end with a comma. Defaults are "296," for two "249,343," for three and "225,296,367," for four. styling field: type: text name: stripe coordinate description: Overrides the coordinates for the ability stripes. Defaults are "48," and "27,80," and "21,69,119,". The text MUST end with a , styling field: type: text name: move loyalty costs description: Moves loyalty costs up the specified amount. Use negative to move down. Formatted as "1,2,3,4," MUST end with a comma. styling field: type: text name: front font cap description: Use to standardize the font size of separated abilities. Default is size 14. styling field: type: text name: shrink name text description: reduces the name text N points. styling field: type: text name: shrink typeline text description: reduces the typeline text N points. styling field: type: text name: level 1 chop description: Changes the start/stop points of the first textbox. Use negative to move down. Formatted as "1,2," MUST end with a comma. styling field: type: text name: level 2 chop description: Changes the start/stop points of the second textbox. Use negative to move down. Formatted as "1,2," MUST end with a comma. styling field: type: text name: level 3 chop description: Changes the start/stop points of the third textbox. Use negative to move down. Formatted as "1,2," MUST end with a comma. styling field: type: text name: level 4 chop description: Changes the start/stop points of the fourth textbox. Use negative to move down. Formatted as "1,2," MUST end with a comma. styling field: type: text name: flavor bar offset description: Move the flavor bar down X pixels. Use negative to move up. styling field: type: choice name: back style choice: normal choice: 3 ability planeswalker choice: 4 ability planeswalker choice: 2 ability planeswalker choice: miracle choice: nyx choice: vehicle choice: map choice: saga initial: normal description: Choose the style for the back face styling field: type: choice name: chapter textboxes back description: How many textboxes does this Saga have? choice: two choice: three choice: four initial: three styling field: type: text name: chapter number coordinates back description: Sets the chapter symbols at the given height. Formatted as "1,2,3," MUST end with a comma. Defaults are "183,223,329," for two and "185,279,373," for three. Use 40px offset. styling field: type: text name: chapter divider coordinates back description: Sets the position of the chapter breaks. Formatted as "1,2," MUST end with a comma. Defaults are "296," for two "249,343," for three and "225,296,367," for four. styling field: type: text name: back stripe coordinate description: Overrides the coordinates for the backface ability stripes. Defaults are "48," and "27,80," and "21,69,119,". The text MUST end with a , styling field: type: text name: move back loyalty costs description: Moves loyalty costs of the back face up the specified amount. Use negative to move down. Formatted as "1,2,3,4," MUST end with a comma. styling field: type: text name: back font cap description: Use to standardize the font size of separated abilities of the back face. Default is size 14. styling field: type: text name: shrink back name text description: reduces the name text N points. styling field: type: text name: shrink back typeline text description: reduces the typeline text N points. styling field: type: text name: level 5 chop description: Changes the start/stop points of the first textbox of the back face. Use negative to move down. Formatted as "1,2," MUST end with a comma. styling field: type: text name: level 6 chop description: Changes the start/stop points of the second textbox of the back face. Use negative to move down. Formatted as "1,2," MUST end with a comma. styling field: type: text name: level 7 chop description: Changes the start/stop points of the third textbox of the back face. Use negative to move down. Formatted as "1,2," MUST end with a comma. styling field: type: text name: level 8 chop description: Changes the start/stop points of the fourth textbox of the back face. Use negative to move down. Formatted as "1,2," MUST end with a comma. styling field: type: text name: flavor bar offset 2 description: Move the backface flavor bar down X pixels. Use negative to move up. styling field: type: text name: custom mask description: Uses a custom mask from data/magic-mainframe-extras.mse-include styling field: type: text name: custom mask 2 description: Uses a custom mask from data/magic-mainframe-extras.mse-include styling field: type: text name: custom symbol one description: Uses a custom DFC symbol from data/magic-mainframe-extras.mse-include styling field: type: text name: custom symbol two description: Uses a custom DFC symbol from data/magic-mainframe-extras.mse-include styling field: type: multiple choice name: other options description: Additional options choice: normal back face choice: promo choice: fullart game day promo choice: prerelease stamps choice: remove from autocount choice: use hovering pt choice: use hovering loyalty choice: use holofoil stamps choice: use doublecast flags choice: center front choice: center back choice: center first name choice: center second name choice: clear front choice: clear back choice: legendary front choice: legendary back choice: meld back choice: front color indicator choice: back color indicator choice: wider planeswalker images choice: ancestral generic mana initial: use hovering pt, use holofoil stamps, back color indicator styling field: type: boolean name: grey hybrid name description: Use a grey background for the name and type line on hybrid cards. This is done on real cards. styling field: type: boolean name: use guild mana symbols description: Use the Ravnica guild symbols instead of the official half/half circles for hybrid mana. initial: no styling field: type: package choice name: text box mana symbols match: magic-mana-*.mse-symbol-font initial: magic-mana-small.mse-symbol-font styling field: type: choice name: tap symbol description: What tap and untap symbols should be used on cards? initial: modern choice: modern choice: old choice: diagonal T styling field: type: 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 inverted common symbol: choice images: no: { symbol_variation(symbol: set.symbol, variation: "common") } yes: { symbol_variation(symbol: set.symbol, variation: "invertedcommon") } other options: render style: checklist direction: vertical ############################################################## Card fields card style: ############################# Background stuff border color: left: 0 top : 0 width: 752 height: 523 radius: 18 left width: 17 right width: 17 top width: 17 bottom width: 18 z index: 4 mask: {"border_mask_" + (if is_legend() then "l" else "n") + (if back_legend() then "l" else "n") + ".png"} card color: left: 0 top: 0 width: 375 height: 523 z index: 0 render style: image popup style: in place image: { if is_saga() then saga_background() else if front_clear() or is_map() then "" else if is_full() then fullart_background() else if is_normal() then card_background() else if has_four_abilities() then card_background5() else card_background3() } card color 2: left: 377 top: 0 width: 375 height: 523 z index: 0 render style: image popup style: in place image: { if back_saga() then saga_background2() else if back_clear() or back_map() then "" else if back_full() and contains(styling.other_options, match:"normal back face") then fullart_background() else if back_full() then fullart_background2() else if back_normal() and contains(styling.other_options, match:"normal back face") then card_background() else if back_normal() then card_background2() else if back_four_abilities() and contains(styling.other_options, match:"normal back face") then card_background5() else if back_four_abilities() then card_background6() else if contains(styling.other_options, match:"normal back face") then card_background3() else card_background4() } ############################# Name line name: left: { if is_map() then 65 else if is_normal() then 58 else 60 } top: { if is_map() then 27 else if is_normal() or is_saga() then 30 else if front_clear() then 22 else 23 } right: { (if is_map() then 344 else if is_saga() then 341 else 339) - card_style.casting_cost.content_width } height: {23 - (0.5 * shrink_name())} alignment: { if contains(styling.other_options, match:"center first") then "bottom center" else "bottom shrink-overflow"} padding bottom: 0 z index: 3 font: name: { if is_map() then "Beleren Small Caps" else "Beleren Bold"} size: { if is_map() then 14.8 - shrink_name() else 16 - shrink_name() } color: black name 2: left: { if back_map() then 442 else if back_normal() then 437 else 435 } top: { if back_map() then 27 else if back_normal() or back_saga() then 30 else if back_clear() then 22 else 23 } right: { (if back_map() then 719 else if back_saga() then 716 else 714) - card_style.casting_cost_2.content_width } height: {23 - (0.5 * shrink_name2())} alignment: { if contains(styling.other_options, match:"center second") then "bottom center" else "bottom shrink-overflow"} padding bottom: 0 z index: 3 font: name: { if back_map() then "Beleren Small Caps" else "Beleren Bold"} size: { if back_map() then 14.8 - shrink_name2() else 16 - shrink_name2()} color: { if contains(styling.other_options, match:"normal back face") or back_map() or back_clear() then "black" else "white" } casting cost: right: 347 top: { if is_normal() or is_saga() then 29 else 22 } width: { max(30, card_style.casting_cost.content_width) + 5 } height: 23 alignment: middle right symbol font: name: magic-mana-large size: 15 alignment: middle right always symbol: true z index: 4 padding top: 0 casting cost 2: right: 722 top: { if back_normal() or back_saga() then 29 else 22 } width: { max(30, card_style.casting_cost_2.content_width) + 5 } height: 23 alignment: middle right symbol font: name: magic-mana-large size: 15 alignment: middle right always symbol: true z index: 4 padding top: 0 card symbol: left: {if card.card_symbol=="none" then 20 else 29} top: 23 height: 18 width: 14 z index: 1 render style: image choice images: tombstone: tombstone.png ############################# Image image: left: { if is_saga() then 188 else if front_clear() or is_map() then 0 else if is_full() then 23 else if is_normal() then 29 else if is_normal_size() then 25 else 15 } top: { if is_saga() then 59 else if front_clear() then 0 else if is_map() then 57 else if is_normal() then 59 else if is_normal_size() then 52 else 15 } width: { if is_saga() then 157 else if front_clear() or is_map() then 375 else if is_full() then 328 else if is_normal() then 316 else if is_normal_size() then 324 else 345 } height: { if is_saga() then 379 else if front_clear() then 523 else if is_map() then 241 else if is_full() then 423 else if is_normal() then 231 else if is_normal_size() then 428 else 493 } z index: 1 mask: { mask_script() } image 2: left: { if back_saga() then 565 else if back_clear() or back_map() then 377 else if back_full() then 400 else if back_normal() then 406 else if is_normal_size() then 402 else 392 } top: { if back_saga() then 59 else if back_clear() then 0 else if back_map() then 57 else if back_normal() then 59 else if is_normal_size() then 52 else 15 } width: { if back_saga() then 157 else if back_clear() or back_map() then 375 else if back_full() then 328 else if back_normal() then 316 else if is_normal_size() then 324 else 345 } height: { if back_saga() then 379 else if back_clear() then 523 else if back_map() then 241 else if back_full() then 423 else if back_normal() then 231 else if is_normal_size() then 428 else 493 } z index: 1 mask: { back_mask_script() } 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: { if is_map() then 18 else 31 } top: { if is_saga() then 449 else if is_map() then 298 else if is_full() then 333 else if has_four_abilities() then 265 else 300 } width: 17 height: 17 z index: 2 render style: image visible: { has_identity()} image: { card_identity() } indicator 2: left: { if back_map() then 395 else 407 } top: { if back_saga() then 449 else if back_map() then 298 else if back_full() then 333 else if back_four_abilities() then 265 else 300 } width: 17 height: 17 z index: 2 render style: image visible: { has_identity2()} image: { card_identity_2() } type: left: { if is_map() then 85 else if has_identity() then "52" else "32" } top: { (if is_saga() then 444 else if is_map() then 297.5 else if is_full() then 329 else if has_four_abilities() then 261 else 296) + shrink_type() } width: { if is_map() then 205 else (if has_identity() then "290" else "310") - max(22,card_style.rarity.content_width) } height: { if is_map() then 18 - shrink_type() else 20 - shrink_type() } alignment: { if is_map() then "center top shrink-overflow" else "top shrink-overflow"} z index: 2 padding top: 2 padding bottom: { if is_map() then 4 else 0} padding right: { if is_map() then 2 else 0} font: name: Beleren Bold size: { if is_map() then 12 - shrink_type() else 13 - shrink_type()} color: { if is_full() then "white" else "black"} shadow color: {if is_full() then "black" else rgba(0,0,0,0)} shadow displacement x: -1 shadow displacement y: 1 separator color: red type 2: left: { if back_map() then 462 else if has_identity2() then "427" else "413" } top: { (if back_saga() then 444 else if back_map() then 297.5 else if back_full() then 329 else if back_four_abilities() then 261 else 296) + shrink_type2() } width: { if back_map() then 205 else (if has_identity2() then "290" else "310") - max(22,card_style.rarity.content_width) } height: { if back_map() then 18 - shrink_type2() else 20 - shrink_type2()} alignment: {if back_map() then "center top shrink-overflow" else "top shrink-overflow"} z index: 2 padding top: 2 padding bottom: { if back_map() then 4 else 0} padding right: { if back_map() then 2 else 0} font: name: Beleren Bold size: { if back_map() then 12 - shrink_type2() else 13 - shrink_type2()} color: { if back_full() then "white" else if back_clear() or back_map() or contains(styling.other_options, match:"normal back face") then "black" else "white"} shadow color: {if back_full() then "black" else rgba(0,0,0,0)} shadow displacement x: -1 shadow displacement y: 1 separator color: red rarity: right: { if is_map() then 199 else 345 } top: { if is_saga() then 445 else if is_map() then 53 else if is_full() then 329 else if is_normal() then 297 else if has_four_abilities() then 263 else 298 } width: { if is_normal() then 44 else 42 } height: { if is_normal() then 22 else 21 } z index: 3 render style: image alignment: middle right choice images: # Images based on the set symbol basic land: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "c.png" else if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon") else symbol_variation(symbol: set.symbol, variation: "common") common: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "c.png" else if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon") else symbol_variation(symbol: set.symbol, variation: "common") uncommon: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "u.png" else symbol_variation(symbol: set.symbol, variation: "uncommon") rare: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "r.png" else symbol_variation(symbol: set.symbol, variation: "rare") mythic rare: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "m.png" else symbol_variation(symbol: set.symbol, variation: "mythic rare") special: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "s.png" else symbol_variation(symbol: set.symbol, variation: "special") masterpiece: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "mp.png" else symbol_variation(symbol: set.masterpiece_symbol, variation: "mythic rare") rarity 2: right: { if back_map() then 576 else 722} top: { if back_saga() then 445 else if back_map() then 53 else if back_full() then 329 else if back_normal() then 297 else if back_four_abilities() then 263 else 298 } width: { if back_normal() then 44 else 42 } height: { if back_normal() then 22 else 21 } z index: 3 render style: image alignment: middle right choice images: # Images based on the set symbol basic land: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "c.png" else if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon") else symbol_variation(symbol: set.symbol, variation: "common") common: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "c.png" else if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon") else symbol_variation(symbol: set.symbol, variation: "common") uncommon: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "u.png" else symbol_variation(symbol: set.symbol, variation: "uncommon") rare: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "r.png" else symbol_variation(symbol: set.symbol, variation: "rare") mythic rare: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "m.png" else symbol_variation(symbol: set.symbol, variation: "mythic rare") special: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "s.png" else symbol_variation(symbol: set.symbol, variation: "special") masterpiece: script: if use_main_rarity() then "/magic-mainframe-extras.mse-include/" + un_png(set.mainframe_rarity_name) + "mp.png" else symbol_variation(symbol: set.masterpiece_symbol, variation: "mythic rare") ############################# Text box text: left: { if is_map() then 40 else 29} top: { top_of_textbox() } width: { if is_map() then 287 else if is_normal() then 314 else 0} bottom: { bottom_of_textbox()} font: name: MPlantin italic name: MPlantin-Italic size: { if styling.front_font_cap != "" then styling.front_font_cap else 14 } scale down to: 6 color: { if is_full() then "white" else "black"} shadow color: {if is_full() then "black" else rgba(0,0,0,0)} shadow displacement x: -1 shadow displacement y: 1 symbol font: name: { styling.text_box_mana_symbols } size: { if styling.front_font_cap != "" then styling.front_font_cap else 14 } alignment: script: if contains(styling.other_options, match:"center front") then "middle center" else "middle left" z index: 5 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 text 2: left: { if back_map() then 417 else 407 } top: { top_of_textbox2() } width: { if back_map() then 287 else if back_normal() then 314 else 0} bottom: { bottom_of_textbox2()} font: name: MPlantin italic name: MPlantin-Italic size: { if styling.back_font_cap != "" then styling.back_font_cap else 14 } scale down to: 6 color: { if back_full() then "white" else "black"} shadow color: {if back_full() then "black" else rgba(0,0,0,0)} shadow displacement x: -1 shadow displacement y: 1 symbol font: name: { styling.text_box_mana_symbols } size: { if styling.back_font_cap != "" then styling.back_font_cap else 14 } alignment: script: if contains(styling.other_options, match:"center back") then "middle center" else "middle left" z index: 5 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: { if is_map() then 40 else if is_saga() then 45 else 19} top : { if is_saga() then 155 else if has_four_abilities() then 296 else if is_full() then 359 else 330 } width: { if is_saga() then 138 else if is_map() then 287 else 334} height: { if is_saga() then 282 else if is_map() then 154 else if has_four_abilities() then 185 else if is_full() then 120 else 152 } z index: 4 render style: image alignment: middle center include file: /magic-watermarks.mse-include/watermarks watermark 2: left: { if back_map() then 417 else if back_saga() then 422 else 396} top : { if back_saga() then 155 else if back_four_abilities() then 296 else if back_full() then 359 else 330 } width: { if back_saga() then 138 else if back_map() then 287 else 334} height: { if back_saga() then 282 else if back_map() then 154 else if back_four_abilities() then 185 else if back_full() then 120 else 152 } z index: 4 render style: image alignment: middle center include file: /magic-watermarks.mse-include/watermarks ############################# Levels level 1 text: left: { if is_saga() then 45 else 63 } top: { if has_four_abilities() then 289-lv1_chop_top()+(if front_clear() then 5 else 0) else if is_saga() then 155 else 330-lv1_chop_top() } width: { if is_normal() then 0 else if is_saga() then 138 else 282 } bottom: { if is_normal() then 0 else if is_saga() then (if split_12() == "" then 249 else split_12()) else bottom_of_walker_textbox() } font: name: MPlantin italic name: MPlantin-Italic size: { if styling.front_font_cap != "" then styling.front_font_cap else if has_four_abilities() then 13.8 else 14 } scale down to: 6 color: black symbol font: name: { styling.text_box_mana_symbols } size: { if styling.front_font_cap != "" then styling.front_font_cap else if has_four_abilities() then 13.8 else 14 } alignment: script: if contains(styling.other_options, match:"center front") then "middle center" else "middle left" z index: 5 padding left: 6 padding right: 4 padding top: { if is_saga() then 3 else 0 } padding bottom: { if is_saga() then 3 else 0 } 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 level 2 text: left: { if is_saga() then 45 else 63 } top: { if is_saga() then (if split_12() == "" then 249 else split_12()) else (if has_four_abilities() then stripe31()+10 else if has_two_abilities() then 404 else stripe12()+10) -lv2_chop_top() } width: { if is_normal() then 0 else if is_saga() then 138 else 282 } bottom: { if is_normal() then 0 else if is_saga() then (if split_23() == "" then 343 else split_23()) else (if has_four_abilities() then stripe32()+10 else if has_two_abilities() then 478 else stripe23()+10) - lv2_chop_bot() } font: name: MPlantin italic name: MPlantin-Italic size: { if styling.front_font_cap != "" then styling.front_font_cap else if has_four_abilities() then 13.8 else 14 } scale down to: 6 color: black symbol font: name: { styling.text_box_mana_symbols } size: { if styling.front_font_cap != "" then styling.front_font_cap else if has_four_abilities() then 13.8 else 14 } alignment: script: if contains(styling.other_options, match:"center front") then "middle center" else "middle left" z index: 5 padding left: 6 padding right: 4 padding top: { if is_saga() then 3 else 0 } padding bottom: { if is_saga() then 3 else 0 } 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 level 3 text: left: { if is_saga() then 45 else 63 } top: { if has_two_abilities() then 0 else if is_saga() then (if split_23() == "" then 343 else split_23()) else (if has_four_abilities() then stripe32()+10 else stripe23()+10) -lv3_chop_top() } width: { if is_normal() then 0 else if is_saga() then 138 else 282 } bottom: { if has_two_abilities() or is_normal() then 0 else if is_saga() then (if split_34() == "" then 437 else split_34()) else (if has_four_abilities() then stripe33()+10 else 478) - lv3_chop_bot() } font: name: MPlantin italic name: MPlantin-Italic size: { if styling.front_font_cap != "" then styling.front_font_cap else if has_four_abilities() then 13.8 else 14 } scale down to: 6 color: black symbol font: name: { styling.text_box_mana_symbols } size: { if styling.front_font_cap != "" then styling.front_font_cap else if has_four_abilities() then 13.8 else 14 } alignment: script: if contains(styling.other_options, match:"center front") then "middle center" else "middle left" z index: 5 padding left: 6 padding right: 4 padding top: { if is_saga() then 3 else 0 } padding bottom: { if is_saga() then 3 else 0 } 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 level 4 text: left: { if is_saga() then 45 else 63 } top: { if is_saga() then (if split_34() == "" then 437 else split_34()) else stripe33()+10 -lv4_chop_top() } width: { if has_four_abilities() then 282 else if is_saga() then 138 else 0 } bottom: { if has_four_abilities() then 475 - lv4_chop_bot() else if is_saga() then 437 else 0 } font: name: MPlantin italic name: MPlantin-Italic size: { if styling.front_font_cap != "" then styling.front_font_cap else if has_four_abilities() then 13.8 else 14 } scale down to: 6 color: black symbol font: name: { styling.text_box_mana_symbols } size: { if styling.front_font_cap != "" then styling.front_font_cap else if has_four_abilities() then 13.8 else 14 } alignment: script: if contains(styling.other_options, match:"center front") then "middle center" else "middle left" z index: 5 padding left: 6 padding right: 4 padding top: { if is_saga() then 3 else 0 } padding bottom: { if is_saga() then 3 else 0 } 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 mask: walker_text_mask.png level 5 text: left: { if back_saga() then 422 else 440 } top: { if back_four_abilities() then 289-lv5_chop_top()+(if back_clear() then 5 else 0) else if back_saga() then 155 else 330-lv5_chop_top() } width: { if back_normal() then 0 else if back_saga() then 138 else 282 } bottom: { if back_normal() then 0 else if back_saga() then (if split_12_back() == "" then 249 else split_12_back()) else bottom_of_textbox_2() } font: name: MPlantin italic name: MPlantin-Italic size: { if styling.back_font_cap != "" then styling.back_font_cap else if back_four_abilities() then 13.8 else 14 } scale down to: 6 color: black symbol font: name: { styling.text_box_mana_symbols } size: { if styling.back_font_cap != "" then styling.back_font_cap else if back_four_abilities() then 13.8 else 14 } alignment: script: if contains(styling.other_options, match:"center back") then "middle center" else "middle left" z index: 5 padding left: 6 padding right: 4 padding top: { if back_saga() then 3 else 0 } padding bottom: { if back_saga() then 3 else 0 } 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 level 6 text: left: { if back_saga() then 422 else 440 } top: { (if back_saga() then (if split_12_back() == "" then 249 else split_12_back()) else if back_four_abilities() then stripe31b()+10 else if back_two_abilities() then 404 else stripe12b()+10) -lv6_chop_top() } width: { if back_normal() then 0 else if back_saga() then 138 else 282 } bottom: { if back_normal() then 0 else if back_saga() then (if split_23_back() == "" then 343 else split_23_back()) else (if back_four_abilities() then stripe32b()+10 else if back_two_abilities() then 478 else stripe23b()+10) - lv6_chop_bot() } font: name: MPlantin italic name: MPlantin-Italic size: { if styling.back_font_cap != "" then styling.back_font_cap else if back_four_abilities() then 13.8 else 14 } scale down to: 6 color: black symbol font: name: { styling.text_box_mana_symbols } size: { if styling.back_font_cap != "" then styling.back_font_cap else if back_four_abilities() then 13.8 else 14 } alignment: script: if contains(styling.other_options, match:"center back") then "middle center" else "middle left" z index: 5 padding left: 6 padding right: 4 padding top: { if back_saga() then 3 else 0 } padding bottom: { if back_saga() then 3 else 0 } 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 level 7 text: left: { if back_saga() then 422 else 440 } top: { if back_two_abilities() then 0 else if back_saga() then (if split_23_back() == "" then 343 else split_23_back()) else (if back_four_abilities() then stripe32b()+10 else stripe23b()+10) -lv7_chop_top() } width: { if back_normal() then 0 else if back_saga() then 138 else 282 } bottom: { if back_two_abilities() or back_normal() then 0 else if back_saga() then (if split_34_back() == "" then 437 else split_34_back()) else (if back_four_abilities() then stripe33b()+10 else 478) - lv7_chop_bot() } font: name: MPlantin italic name: MPlantin-Italic size: { if styling.back_font_cap != "" then styling.back_font_cap else if back_four_abilities() then 13.8 else 14 } scale down to: 6 color: black symbol font: name: { styling.text_box_mana_symbols } size: { if styling.back_font_cap != "" then styling.back_font_cap else if back_four_abilities() then 13.8 else 14 } alignment: script: if contains(styling.other_options, match:"center back") then "middle center" else "middle left" z index: 5 padding left: 6 padding right: 4 padding top: { if back_saga() then 3 else 0 } padding bottom: { if back_saga() then 3 else 0 } 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 level 8 text: left: { if back_saga() then 422 else 440 } top: { if back_saga() then (if split_34_back() == "" then 437 else split_34_back()) else stripe33b()+10 -lv8_chop_top() } width: { if back_four_abilities() then 282 else if back_saga() then 138 else 0 } bottom: { if back_four_abilities() then 475 - lv8_chop_bot() else if back_saga() then 437 else 0 } font: name: MPlantin italic name: MPlantin-Italic size: { if styling.back_font_cap != "" then styling.back_font_cap else if back_four_abilities() then 13.8 else 14 } scale down to: 6 color: black symbol font: name: { styling.text_box_mana_symbols } size: { if styling.back_font_cap != "" then styling.back_font_cap else if back_four_abilities() then 13.8 else 14 } alignment: script: if contains(styling.other_options, match:"center back") then "middle center" else "middle left" z index: 5 padding left: 6 padding right: 4 padding top: { if back_saga() then 3 else 0 } padding bottom: { if back_saga() then 3 else 0 } 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 mask: walker_text_mask.png ############################# PT pt: z index: 5 left: 286 top: { if is_map() then 467 else 469 } width: { if is_normal() then 60 else 0} height: { if is_normal() then 28 else 0} alignment: center middle shrink-overflow font: name: Beleren Bold size: { if is_map() then 14 else 16} color: { if is_vehicle() then "white" else "black" } separator color: red pt 2: z index: 5 left: 661 top: { if back_map() then 467 else 469} width: {if back_normal() then 60 else 0 } height: {if back_normal() then 28 else 0} alignment: center middle shrink-overflow font: name: Beleren Bold size: { if back_map() then 14 else 16} color: { if back_map() or back_clear() then "black" else "white"} separator color: red ############################# Loyalty loyalty: z index: 7 left: 326 top: 462 width: { if card.loyalty != "" then 13.16 else if is_normal() or is_saga() then 0 else 13.16 } height: { if card.loyalty != "" then 34.63 else if is_normal() or is_saga() then 0 else 34.63 } alignment: center middle font: name: Beleren Bold size: 14 color: white loyalty 2: z index: 7 left: 703 top: 462 width: { if card.loyalty_2 != "" then 13.16 else if back_normal() or back_saga() then 0 else 13.16 } height: { if card.loyalty_2 != "" then 34.63 else if back_normal() or back_saga() then 0 else 34.63 } alignment: center middle font: name: Beleren Bold size: 14 color: white loyalty cost 1: z index: 7 left: {if is_normal() or is_saga() then 14 else 32} top: { -loyal_move() +(if has_four_abilities() then 297 else if has_two_abilities() then 348 else 335) } width: { if is_saga() then 0 else if not is_normal() or card.loyalty_cost_1 != "" then 13.16 else 0 } height: { if is_saga() then 0 else if not is_normal() or card.loyalty_cost_1 != "" then 34.63 else 0 } alignment: center middle font: name: Beleren Bold size: 11 color: white loyalty cost 2: z index: 7 left: {if is_normal() or is_saga() then 14 else 32} top: { -loyal_move2() +(if has_four_abilities() then 344 else if has_two_abilities() then 420 else 386) } width: { if is_saga() then 0 else if not is_normal() or card.loyalty_cost_2 != "" then 13.16 else 0 } height: { if is_saga() then 0 else if not is_normal() or card.loyalty_cost_2 != "" then 34.63 else 0 } alignment: center middle font: name: Beleren Bold size: 11 color: white loyalty cost 3: z index: 7 left: {if is_normal() or is_saga() then 14 else 32} top: { -loyal_move3() +(if has_four_abilities() then 391 else 435) } width: { if is_saga() then 0 else if has_two_abilities() then 0 else if not is_normal() or card.loyalty_cost_3 != "" then 13.16 else 0 } height: { if is_saga() then 0 else if has_two_abilities() then 0 else if not is_normal() or card.loyalty_cost_3 != "" then 34.63 else 0 } alignment: center middle font: name: Beleren Bold size: 11 color: white loyalty cost 4: z index: 7 left: {if is_normal() or is_saga() then 14 else 32} top: { -loyal_move4() +438 } width: { if has_four_abilities() or card.loyalty_cost_4 != "" then 13.16 else 0 } height: { if has_four_abilities() or card.loyalty_cost_4 != "" then 34.63 else 0 } alignment: center middle font: name: Beleren Bold size: 11 color: white loyalty cost 5: z index: 7 left: {if back_normal() or back_saga() then 391 else 409} top: { -loyal_move5() +(if back_four_abilities() then 297 else if back_two_abilities() then 348 else 335) } width: { if not (back_normal() or back_saga()) or card.loyalty_cost_5 != "" then 13.16 else 0 } height: { if not (back_normal() or back_saga()) or card.loyalty_cost_5 != "" then 34.63 else 0 } alignment: center middle font: name: Beleren Bold size: 11 color: white loyalty cost 6: z index: 7 left: {if back_normal() or back_saga() then 391 else 409} top: { -loyal_move6() +(if back_four_abilities() then 344 else if back_two_abilities() then 420 else 386) } width: { if not (back_normal() or back_saga()) or card.loyalty_cost_6 != "" then 13.16 else 0 } height: { if not (back_normal() or back_saga()) or card.loyalty_cost_6 != "" then 34.63 else 0 } alignment: center middle font: name: Beleren Bold size: 11 color: white loyalty cost 7: z index: 7 left: {if back_normal() or back_saga() then 391 else 409} top: { -loyal_move7() +(if back_four_abilities() then 391 else 435) } width: { if back_two_abilities() then 0 else if not (back_normal() or back_saga()) or card.loyalty_cost_6 != "" then 13.16 else 0 } height: { if back_two_abilities() then 0 else if not (back_normal() or back_saga()) or card.loyalty_cost_6 != "" then 34.63 else 0 } alignment: center middle font: name: Beleren Bold size: 11 color: white loyalty cost 8: z index: 7 left: {if back_normal() or back_saga() then 391 else 409} top: { -loyal_move8() +438 } width: { if back_four_abilities() or card.loyalty_cost_8 != "" then 13.16 else 0 } height: { if back_four_abilities() or card.loyalty_cost_8 != "" then 34.63 else 0 } alignment: center middle font: name: Beleren Bold size: 11 color: white ############################# Card sorting / numbering set code: left: 24 top: 498 width: 40 height: 10 z index: 6 font: name: Relay-Medium size: 7 color: white weight: bold set code 2: left: 399 top: 498 width: 40 height: 10 z index: 6 font: name: Relay-Medium size: 7 color: white weight: bold ############################# Copyright stuff illustrator: left: { 44 + card_style.set_code.content_width } top: 497.5 width: 200 height: 10 z index: 2 font: name: Beleren Small Caps Bold size: 7.25 color: white copyright: right: 350 top: { if is_normal() and card.pt != "" then (if is_map() then 504 else 500) else if is_normal() then 488 else 498 } width: 140 height: 10 z index: 6 alignment: middle right shrink-overflow visible: {not set.automatic_copyright} font: name: Matrix size: 7 color: white weight: bold illustrator 2: left: { 419 + card_style.set_code.content_width } top: 497.5 width: 200 height: 10 z index: 2 font: name: Beleren Small Caps Bold size: 7.25 color: white copyright 2: right: 728 top: { if back_normal() and card.pt_2 != "" then (if back_map() then 504 else 500) else if back_normal() then 488 else 498 } width: 140 height: 10 z index: 6 alignment: middle right shrink-overflow visible: {not set.automatic_copyright} 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 is_unsorted() then forward_editor(prefix: card_number_m15() + "a/" + 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: text name: card code 2 editable: false save value: false script: if set.automatic_card_numbers and not is_unsorted() then forward_editor(prefix: card_number_m15() + "b/" + 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: artist arrow 2 editable: false save value: false choice: white extra card field: type: choice name: loyalty box editable: false choice: loyalty save value: false extra card field: type: choice name: loyalty box 2 editable: false choice: loyalty save value: false extra card field: type: choice name: stamp script: card.card_color editable: false save value: false extra card field: type: choice name: foil stamp choice: stamp save value: false editable: false extra card field: type: choice name: foil layer choice: foil save value: false editable: false extra card field: type: choice name: foil layer 2 choice: foil save value: false editable: false extra card field: type: choice name: loyalty cost box 1 editable: false script: loyalty_image(card.loyalty_cost_1) save value: false extra card field: type: choice name: loyalty cost box 2 editable: false script: loyalty_image(card.loyalty_cost_2) save value: false extra card field: type: choice name: loyalty cost box 3 editable: false script: loyalty_image(card.loyalty_cost_3) save value: false extra card field: type: choice name: loyalty cost box 4 editable: false script: loyalty_image(card.loyalty_cost_4) save value: false extra card field: type: choice name: loyalty cost box 5 editable: false script: loyalty_image(card.loyalty_cost_5) save value: false extra card field: type: choice name: loyalty cost box 6 editable: false script: loyalty_image(card.loyalty_cost_6) save value: false extra card field: type: choice name: loyalty cost box 7 editable: false script: loyalty_image(card.loyalty_cost_7) save value: false extra card field: type: choice name: loyalty cost box 8 editable: false script: loyalty_image(card.loyalty_cost_8) save value: false extra card field: type: text name: colon 1 editable: false script: ":" save value: false extra card field: type: text name: colon 2 editable: false script: ":" save value: false extra card field: type: text name: colon 3 editable: false script: ":" save value: false extra card field: type: text name: colon 4 editable: false script: ":" save value: false extra card field: type: text name: colon 5 editable: false script: ":" save value: false extra card field: type: text name: colon 6 editable: false script: ":" save value: false extra card field: type: text name: colon 7 editable: false script: ":" save value: false extra card field: type: text name: colon 8 editable: false script: ":" save value: false extra card field: type: choice name: top stripe editable: false save value: false choice: stripe extra card field: type: choice name: bot stripe editable: false save value: false choice: stripe extra card field: type: choice name: fourth stripe editable: false save value: false choice: stripe extra card field: type: color name: top color script: if front_clear() then rgb(230,230,230) else rgb(200,200,200) editable: false save value: false extra card field: type: color name: bottom color script: if front_clear() then rgb(230,230,230) else rgb(200,200,200) editable: false save value: false extra card field: type: color name: stripe color script: if front_clear() then rgb(230,230,230) else rgb(200,200,200) editable: false save value: false extra card field: type: color name: stripe color 2 script: if front_clear() then rgb(230,230,230) else rgb(200,200,200) editable: false save value: false extra card field: type: choice name: top stripe back editable: false save value: false choice: stripe extra card field: type: choice name: bot stripe back editable: false save value: false choice: stripe extra card field: type: choice name: fourth stripe back editable: false save value: false choice: stripe extra card field: type: color name: top color back script: if back_clear() then rgb(230,230,230) else rgb(200,200,200) editable: false save value: false extra card field: type: color name: bottom color back script: if back_clear() then rgb(230,230,230) else rgb(200,200,200) editable: false save value: false extra card field: type: color name: stripe color back script: if back_clear() then rgb(230,230,230) else rgb(200,200,200) editable: false save value: false extra card field: type: color name: stripe color 2 back script: if front_clear() then rgb(230,230,230) else rgb(200,200,200) editable: false save value: false extra card field: type: text name: auto copyright script: set.copyright save value: false editable: false show statistics: false extra card field: type: text name: auto copyright 2 script: set.copyright save value: false editable: false show statistics: false extra card field: type: choice name: clear frame choice: frame editable: false save value: false show statistics: false extra card field: type: choice name: chapter 1 choice: chapter editable: false save value: false show statistics: false extra card field: type: choice name: chapter 2 choice: chapter editable: false save value: false show statistics: false extra card field: type: choice name: chapter 3 choice: chapter editable: false save value: false show statistics: false extra card field: type: choice name: chapter 4 choice: chapter editable: false save value: false show statistics: false extra card field: type: choice name: chapter 5 choice: chapter editable: false save value: false show statistics: false extra card field: type: text name: chapter text editable: true save value: true show statistics: false multi line: true script: forward_editor(field: card.rule_text_saga) default: sprt_default() extra card field: type: choice name: chapter 6 choice: chapter editable: false save value: false show statistics: false extra card field: type: choice name: chapter 7 choice: chapter editable: false save value: false show statistics: false extra card field: type: choice name: chapter 8 choice: chapter editable: false save value: false show statistics: false extra card field: type: choice name: chapter 9 choice: chapter editable: false save value: false show statistics: false extra card field: type: choice name: chapter 10 choice: chapter editable: false save value: false show statistics: false extra card field: type: text name: chapter text back editable: true save value: true show statistics: false multi line: true script: forward_editor(field: card.rule_text_saga2) default: sprt_default_back() extra card field: type: choice name: linebreak 1 choice: line editable: false save value: false show statistics: false extra card field: type: choice name: linebreak 2 choice: line editable: false save value: false show statistics: false extra card field: type: choice name: linebreak 3 choice: line editable: false save value: false show statistics: false extra card field: type: choice name: linebreak 4 choice: line editable: false save value: false show statistics: false extra card field: type: choice name: linebreak 5 choice: line editable: false save value: false show statistics: false extra card field: type: choice name: linebreak 6 choice: line editable: false save value: false show statistics: false extra card field: type: choice name: linebreak 7 choice: line editable: false save value: false show statistics: false extra card field: type: choice name: linebreak 8 choice: line editable: false save value: false show statistics: false extra card field: type: choice name: clear frame back choice: frame editable: false save value: false show statistics: false extra card field: type: text name: pt 2 copy script: if contains(styling.other_options, match:"use hovering loyalty") and card.pt_2 == "" then card.loyalty_2 else card.pt_2 editable: false save value: false extra card field: type: choice name: pt box script: card.card_color editable: false save value: false extra card field: type: choice name: pt box 2 script: card.card_color_2 editable: false save value: false extra card field: type: choice name: corner choice: none choice: day choice: night choice: moon choice: eldrazi choice: compass choice: artifact choice: creature choice: enchantment choice: instant choice: land choice: multitype choice: sorcery choice: planeswalker choice: structure choice: aetherprint choice: name: sparker colors choice: white choice: blue choice: black choice: red choice: green choice: multicolor choice: colorless choice: custom one choice: custom two default: "day" save value: true editable: true extra card field: type: choice name: corner 2 choice: none choice: day choice: night choice: moon choice: eldrazi choice: compass choice: artifact choice: creature choice: enchantment choice: instant choice: land choice: multitype choice: sorcery choice: planeswalker choice: structure choice: aetherprint choice: name: sparker colors choice: white choice: blue choice: black choice: red choice: green choice: multicolor choice: colorless choice: custom one choice: custom two default: "night" save value: true editable: true extra card field: type: choice name: nyx overlay choice: nyx save value: false editable: false script: card.card_color extra card field: type: choice name: miracle overlay choice: miracle save value: false editable: false script: card.card_color extra card field: type: choice name: legend overlay choice: crown save value: false editable: false script: card.card_color extra card field: type: choice name: vehicle overlay choice: car door save value: false editable: false extra card field: type: choice name: nyx overlay 2 choice: nyx save value: false editable: false script: card.card_color_2 extra card field: type: choice name: miracle overlay 2 choice: miracle save value: false editable: false script: card.card_color_2 extra card field: type: choice name: legend overlay 2 choice: crown save value: false editable: false script: card.card_color_2 extra card field: type: choice name: vehicle overlay 2 choice: car door save value: false editable: false extra card field: type: choice name: patch 1 choice: patch save value: false editable: false extra card field: type: choice name: patch 2 choice: patch save value: false editable: false extra card field: type: choice name: map choice: map save value: false editable: false script: card.card_color extra card field: type: choice name: map 2 choice: map save value: false editable: false script: card.card_color_2 extra card field: type: text name: cb 2 copy script: card.casting_cost_2 editable: false save value: false extra card field: type: text name: cb copy script: card.casting_cost editable: false save value: false extra card field: type: choice choice: cb name: cb box script: card.card_color editable: false save value: false extra card field: type: choice choice: cb name: cb box 2 script: card.card_color_2 editable: false save value: false extra card field: type: choice choice: bar name: meld bar editable: false show statistics: false extra card field: type: choice name: flavor bar choice: bar editable: false save value: false show statistics: false extra card field: type: choice name: flavor bar 2 choice: bar editable: false save value: false show statistics: false extra card field: type: text name: promo label save value: true description: The golden promo label. extra card field: type: text name: promo label 2 save value: true description: The second golden promo label. extra card field: type: text name: filler text editable: true save value: true show statistics: false multi line: true script: forward_editor(field: card.special_text) special_rule_text() extra card field: type: text name: filler text 2 editable: true save value: true show statistics: false multi line: true script: forward_editor(field: card.special_text_2) special_rule_text2() extra card style: pt 2 copy: z index: 4 right: 347 top: 446 width: 30 height: 12 alignment: bottom right visible: {contains(styling.other_options, match:"use hovering pt")} font: name: ModMatrix size: 12 weight: bold color: {rgb(45,45,45)} separator color: red card code: left: 24 top: 488 width: 120 height: 10 z index: 6 font: name: Relay-Medium size: 7 color: white weight: bold card code 2: left: 399 top: 488 width: 120 height: 10 z index: 2 font: name: Relay-Medium size: 7 color: white weight: bold artist arrow: left: { 28 + card_style.set_code.content_width } top: 500 width: 12 height: 7 z index: 6 render style: image image: artist_arrow.png artist arrow 2: left: { 403 + card_style.set_code_2.content_width } top: 500 width: 12 height: 7 z index: 2 render style: image image: artist_arrow.png loyalty box: right: 362 top: 460 width: 60 height: 38 z index: 6 render style: image visible: { card.loyalty != "" } choice images: loyalty: loyalty.png loyalty box 2: right: 739 top: 460 width: 60 height: 38 z index: 6 render style: image visible: { card.loyalty_2 != "" } choice images: loyalty: loyalty.png stamp: left: {if is_map() then 169 else if is_normal() then 165 else 170 } top: { if is_normal() and not is_map() then 472 else 473 } width: { if is_map() then 38 else if is_normal() then 46 else 36.5 } height: { if is_map() then 24 else if is_normal() then 26 else 22.5 } z index: 3 visible: { is_stamped() and not front_clear() } render style: image image: { if is_map() then "maps/holo_stamp.png" else if is_normal() then card_stamp2() else card_stamp() } mask: { if is_full() then "stamp_mask_full.png" else "stamp_mask.png" } foil stamp: left: {if front_clear() then 168 else if is_normal() then 165 else 170 } top: { if front_clear() then 471 else if is_normal() then 472 else 473 } width: { if front_clear() and is_normal() then 0 else if front_clear() then 41 else if is_normal() then 46 else 36.5 } height: { if front_clear() and is_normal() then 0 else if front_clear() then 28 else if is_normal() then 26 else 22.5 } z index: 4 visible: { is_stamped() and not is_map()} render style: image image: { if front_clear() then "xstamp.png" else "foil_stamp.png" } foil layer: left: 0 top : 0 width: 375 height: 523 z index: 14 render style: image image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"} foil layer 2: left: 377 top: 0 width: 375 height: 523 z index: 14 render style: image image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"} loyalty cost box 1: left: {if is_normal() or is_saga() then 0 else 18} top: { -loyal_move() +(if has_four_abilities() then 295 else if has_two_abilities() then 346 else 333) } width: 42 height: 40 z index: 6 render style: image visible: { card.loyalty_cost_1 != "" } choice images: loyalty up: loyaltyup.png loyalty down: loyaltydown.png loyalty naught: loyaltynaught.png loyalty cost box 2: left: {if is_normal() or is_saga() then 0 else 18} top: { -loyal_move2() +(if has_four_abilities() then 342 else if has_two_abilities() then 417 else 383) } width: 42 height: 40 z index: 6 render style: image visible: { card.loyalty_cost_2 != "" } choice images: loyalty up: loyaltyup.png loyalty down: loyaltydown.png loyalty naught: loyaltynaught.png loyalty cost box 3: left: {if is_normal() or is_saga() then 0 else 18} top: { -loyal_move3() +(if has_four_abilities() then 389 else 432) } width: { if has_two_abilities() then 0 else 42 } height: { if has_two_abilities() then 0 else 40 } z index: 6 render style: image visible: { card.loyalty_cost_3 != "" } choice images: loyalty up: loyaltyup.png loyalty down: loyaltydown.png loyalty naught: loyaltynaught.png loyalty cost box 4: left: {if is_normal() or is_saga() then 0 else 18} top: { -loyal_move4() +436 } width: { if has_four_abilities() then 42 else 0 } height: 40 z index: 6 render style: image visible: { card.loyalty_cost_4 != "" } choice images: loyalty up: loyaltyup.png loyalty down: loyaltydown.png loyalty naught: loyaltynaught.png colon 1: left: {if is_normal() or is_saga() then 41 else 59} top: { -loyal_move() +(if has_four_abilities() then 309 else if has_two_abilities() then 360 else 347) } width: 5 height: 10 z index: 6 font: name: MPlantin size: 15 scale down to: 15 color: black alignment: middle center visible: { card.loyalty_cost_1 != "" } colon 2: left: {if is_normal() or is_saga() then 41 else 59} top: { -loyal_move2() +(if has_four_abilities() then 356 else if has_two_abilities() then 431 else 397) } width: 5 height: 10 z index: 6 font: name: MPlantin size: 15 scale down to: 15 color: black alignment: middle center visible: { card.loyalty_cost_2 != "" } colon 3: left: {if is_normal() or is_saga() then 41 else 59} top: { -loyal_move3() +(if has_four_abilities() then 403 else 446) } width: 5 height: 10 z index: 6 font: name: MPlantin size: 15 scale down to: 15 color: black alignment: middle center visible: { card.loyalty_cost_3 != "" } colon 4: left: {if is_normal() or is_saga() then 41 else 59} top: { -loyal_move4() +450 } width: { if has_four_abilities() then 5 else 0 } height: 10 z index: 6 font: name: MPlantin size: 15 scale down to: 15 color: black alignment: middle center visible: { card.loyalty_cost_4 != "" } colon 5: left: {if back_normal() or back_saga() then 418 else 436} top: { -loyal_move5() +(if back_four_abilities() then 309 else if back_two_abilities() then 360 else 347) } width: 5 height: 10 z index: 6 font: name: MPlantin size: 15 scale down to: 15 color: black alignment: middle center visible: { card.loyalty_cost_5 != "" } colon 6: left: {if back_normal() or back_saga() then 418 else 436} top: { -loyal_move6() +(if back_four_abilities() then 356 else if back_two_abilities() then 431 else 397) } width: 5 height: 10 z index: 6 font: name: MPlantin size: 15 scale down to: 15 color: black alignment: middle center visible: { card.loyalty_cost_6 != "" } colon 7: left: {if back_normal() or back_saga() then 418 else 436} top: { -loyal_move7() +(if back_four_abilities() then 403 else 446) } width: 5 height: 10 z index: 6 font: name: MPlantin size: 15 scale down to: 15 color: black alignment: middle center visible: { card.loyalty_cost_7 != "" } colon 8: left: {if back_normal() or back_saga() then 418 else 436} top: { -loyal_move8() +450 } width: { if back_four_abilities() then 5 else 0 } height: 10 z index: 6 font: name: MPlantin size: 15 scale down to: 15 color: black alignment: middle center visible: { card.loyalty_cost_8 != "" } top stripe: left: 46 top: { if has_four_abilities() then stripe31() else if two_clear() then stripe01()+10 else if slide_two() then stripe01() else stripe12() } width: 299 height: 20 image: { (if front_clear() then "clear_" else "") + "top_stripe_test.png" } render style: image z index: 2 mask: stripe_mask.png visible: { slide_two() or two_clear() or slide_three() or slide_four() and not contains(styling.custom_mask, match:".png") } bot stripe: left: 46 top: { if has_four_abilities() then stripe32() else stripe23() } width: 299 height: 20 image: { (if front_clear() then "clear_" else "") + "bot_stripe_test.png" } render style: image z index: 2 mask: stripe_mask.png visible: { slide_three() or slide_four() and not contains(styling.custom_mask, match:".png")} fourth stripe: left: 46 top: { stripe33() } width: 299 height: 20 image: { (if front_clear() then "clear_" else "") + "top_stripe_test.png" } render style: image z index: 2 mask: stripe_mask.png visible: { slide_four() and not contains(styling.custom_mask, match:".png")} stripe color: left: 46 top: { if has_four_abilities() then 307 else 343 } width: 299 bottom: { if has_four_abilities() then stripe31() else if two_clear() then stripe01()+10 else if slide_two() then stripe01() else stripe12() } z index: 2 mask: stripe_mask.png visible: { slide_two() or two_clear() or slide_three() or slide_four() and not contains(styling.custom_mask, match:".png")} stripe color 2: left: 46 top: { (if has_four_abilities() then stripe32() else stripe23()) +20 } width: 299 bottom: { if has_four_abilities() then stripe33() else 461 } z index: 2 mask: stripe_mask.png visible: { slide_three() or slide_four() and not contains(styling.custom_mask, match:".png")} top color: left: 26 top: { if front_clear() and has_four_abilities() then 288 else if has_four_abilities() then 284 else 320 } width: 324 height: { if front_clear() and has_four_abilities() then 19 else 23 } z index: 2 mask: mask_top.png visible: { slide_two() or two_clear() or slide_three() or slide_four() and not contains(styling.custom_mask, match:".png")} bottom color: left: 26 top: 461 width: 323 height: 18 z index: 2 mask: mask_bot.png visible: { slide_three() and not contains(styling.custom_mask, match:".png")} loyalty cost box 5: left: {if back_normal() or back_saga() then 377 else 395} top: { -loyal_move5() +(if back_four_abilities() then 295 else if back_two_abilities() then 346 else 333) } width: 42 height: 40 z index: 6 render style: image visible: { card.loyalty_cost_5 != "" } choice images: loyalty up: loyaltyup.png loyalty down: loyaltydown.png loyalty naught: loyaltynaught.png loyalty cost box 6: left: {if back_normal() or back_saga() then 377 else 395} top: { -loyal_move6() +(if back_four_abilities() then 342 else if back_two_abilities() then 417 else 383) } width: 42 height: 40 z index: 6 render style: image visible: { card.loyalty_cost_6 != "" } choice images: loyalty up: loyaltyup.png loyalty down: loyaltydown.png loyalty naught: loyaltynaught.png loyalty cost box 7: left: {if back_normal() or back_saga() then 377 else 395} top: { -loyal_move7() +(if back_four_abilities() then 389 else 432) } width: { if back_two_abilities() then 0 else 42 } height: { if back_two_abilities() then 0 else 40 } z index: 6 render style: image visible: { card.loyalty_cost_7 != "" } choice images: loyalty up: loyaltyup.png loyalty down: loyaltydown.png loyalty naught: loyaltynaught.png loyalty cost box 8: left: {if back_normal() or back_saga() then 377 else 395} top: { -loyal_move8() +436 } width: { if back_four_abilities() then 42 else 0 } height: 40 z index: 6 render style: image visible: { card.loyalty_cost_8 != "" } choice images: loyalty up: loyaltyup.png loyalty down: loyaltydown.png loyalty naught: loyaltynaught.png top stripe back: left: 423 top: { if back_four_abilities() then stripe31b() else if two_back_clear() then stripe01b()+10 else if backslide_two() then stripe01b() else stripe12b() } width: 299 height: 20 image: { (if back_clear() then "clear_" else "") + "top_stripe_test.png" } render style: image z index: 2 mask: stripe_mask.png visible: { backslide_two() or two_back_clear() or backslide_three() or backslide_four() and not contains(styling.custom_mask_2, match:".png") } bot stripe back: left: 423 top: { if back_four_abilities() then stripe32b() else stripe23b() } width: 299 height: 20 image: { (if back_clear() then "clear_" else "") + "bot_stripe_test.png" } render style: image z index: 2 mask: stripe_mask.png visible: { backslide_three() or backslide_four() and not contains(styling.custom_mask_2, match:".png")} fourth stripe back: left: 423 top: { stripe33b() } width: 299 height: 20 image: { (if back_clear() then "clear_" else "") + "top_stripe_test.png" } render style: image z index: 2 mask: stripe_mask.png visible: { backslide_four() and not contains(styling.custom_mask_2, match:".png")} stripe color back: left: 423 top: { if back_four_abilities() then 307 else 343 } width: 299 bottom: { if back_four_abilities() then stripe31b() else if two_back_clear() then stripe01b()+10 else if backslide_two() or two_back_clear() then stripe01b() else stripe12b() } z index: 2 mask: stripe_mask.png visible: { backslide_two() or two_back_clear() or backslide_three() or backslide_four() and not contains(styling.custom_mask_2, match:".png")} stripe color 2 back: left: 423 top: { (if back_four_abilities() then stripe32b() else stripe23b()) +20 } width: 299 bottom: { if back_four_abilities() then stripe33b() else 460 } z index: 2 mask: stripe_mask.png visible: { backslide_three() or backslide_four() and not contains(styling.custom_mask_2, match:".png")} top color back: left: 403 top: { if back_clear() and back_four_abilities() then 286 else if back_four_abilities() then 284 else 320 } width: 324 height: { if back_clear() and back_four_abilities() then 21 else 23 } z index: 2 mask: mask_top.png visible: { backslide_two() or two_back_clear() or backslide_three() or backslide_four() and not contains(styling.custom_mask_2, match:".png")} bottom color back: left: 403 top: 460 width: 323 height: 18 z index: 2 mask: mask_bot.png visible: { backslide_three() and not contains(styling.custom_mask_2, match:".png")} pt box: left: { if is_map() then 270 else 273} top: { if is_map() then 453 else 466} width: { if is_map() then 90 else if is_normal() then 81 else 0 } height: { if is_map() then 54 else if is_normal() then 42 else 0 } z index: 2 visible: { card.pt != "" } render style: image image: { if is_map() then card_mapbox() else if is_vehicle() then "vpt.png" else if front_clear() then "xpt.png" else card_ptbox() } pt box 2: left: { if back_map() then 647 else 648} top: { if back_map() then 453 else 466} width: { if back_map() then 90 else if back_normal() then 81 else 0} height: {if back_map() then 54 else if back_normal() then 42 else 0} z index: 2 visible: { card.pt_2 != "" } render style: image image: { if back_map() then card_mapbox2() else if back_vehicle() then "vpt.png" else if back_clear() then "xpt.png" else card_ptbox2() } auto copyright: right: 350 top: { if is_normal() and card.pt != "" then 500 else if is_normal() then 488 else 498 } width: 140 height: 10 z index: 6 alignment: middle right shrink-overflow visible: {set.automatic_copyright} font: name: Matrix size: 7 color: white weight: bold chapter 1: left: 14 top: { if chapter1() == "" then 185 else chapter1() } width: 30 height: 34 render style: image z index: 5 visible: { is_saga() } image: chapter1.png chapter 2: left: 14 top: { if chapter2() == "" then 279 else chapter2() } width: 30 height: 34 render style: image z index: 5 visible: { is_saga() } image: chapter2.png chapter 3: left: 14 top: { if chapter3() == "" then 373 else chapter3() } width: 30 height: 34 render style: image z index: 5 visible: { is_saga() } image: chapter3.png chapter 4: left: 14 top: { if chapter4() == "" then 600 else chapter4() } width: 30 height: 34 render style: image z index: 5 visible: { is_saga() } image: chapter4.png chapter 5: left: 14 top: { if chapter5() == "" then 600 else chapter5() } width: 30 height: 34 render style: image z index: 5 visible: { is_saga() } image: chapter5.png chapter text: left: 30 top: 69 width: 153 height: 70 z index: 3 font: name: MPlantin italic name: MPlantin-Italic size: 13 scale down to: 6 color: black symbol font: name: { styling.text_box_mana_symbols } size: 13 alignment: script: "middle left" z index: 5 visible: { is_saga() } padding left: 3 padding right: 1 line height hard: 1.2 line height line: 1.5 line height soft: 0.85 line height hard max: 1.3 line height line max: 1.6 linebreak 1: left: 43 top: 154 width: 143 height: 3 render style: image z index: 6 visible: { is_saga() } image: line.png linebreak 2: left: 42 top: {if split_12() == "" then 248 else split_12()-1} width: 144 height: 3 render style: image z index: 6 visible: { is_saga() } image: line.png linebreak 3: left: 42 top: {if split_23() == "" then 342 else split_23()-1} width: 144 height: 3 render style: image z index: 6 image: line.png visible: { is_saga() and (three_boxes() or four_boxes()) } linebreak 4: left: 42 top: {if split_34() == "" then 600 else split_34()-1} width: 144 height: 3 render style: image z index: 6 image: line.png visible: { is_saga() and four_boxes()} chapter 6: left: 391 top: { if chapter6() == "" then 185 else chapter6() } width: 30 height: 34 render style: image z index: 5 visible: { back_saga() } image: chapter1.png chapter 7: left: 391 top: { if chapter7() == "" then 279 else chapter7() } width: 30 height: 34 render style: image z index: 5 visible: { back_saga() } image: chapter2.png chapter 8: left: 391 top: { if chapter8() == "" then 373 else chapter8() } width: 30 height: 34 render style: image z index: 5 visible: { back_saga() } image: chapter3.png chapter 9: left: 391 top: { if chapter9() == "" then 600 else chapter9() } width: 30 height: 34 render style: image z index: 5 visible: { back_saga() } image: chapter4.png chapter 10: left: 391 top: { if chapter10() == "" then 600 else chapter10() } width: 30 height: 34 render style: image z index: 5 visible: { back_saga() } image: chapter5.png chapter text back: left: 407 top: 69 width: 153 height: 70 z index: 3 font: name: MPlantin italic name: MPlantin-Italic size: 13 scale down to: 6 color: black symbol font: name: { styling.text_box_mana_symbols } size: 13 alignment: script: "middle left" z index: 5 visible: { back_saga() } padding left: 3 padding right: 1 line height hard: 1.2 line height line: 1.5 line height soft: 0.85 line height hard max: 1.3 line height line max: 1.6 linebreak 5: left: 420 top: 154 width: 143 height: 3 render style: image z index: 6 visible: { back_saga() } image: line.png linebreak 6: left: 419 top: {if split_12_back() == "" then 248 else split_12_back()-1} width: 144 height: 3 render style: image z index: 6 visible: { back_saga() } image: line.png linebreak 7: left: 419 top: {if split_23_back() == "" then 342 else split_23_back()-1} width: 144 height: 3 render style: image z index: 6 image: line.png visible: { back_saga() and (three_boxes_back() or four_boxes_back()) } linebreak 8: left: 419 top: {if split_34_back() == "" then 600 else split_34_back()-1} width: 144 height: 3 render style: image z index: 6 image: line.png visible: { back_saga() and four_boxes_back()} auto copyright 2: right: 728 top: { if back_normal() and card.pt_2 != "" then 500 else if back_normal() then 488 else 498 } width: 140 height: 10 z index: 6 alignment: middle right shrink-overflow visible: {set.automatic_copyright} font: name: Matrix size: 7 color: white weight: bold clear frame: left: 0 top: 0 width: { if front_clear() then 375 else 0 } height: { if front_clear() then 523 else 0 } z index: 1 render style: image popup style: in place image: { (if is_normal() or is_saga() then "clear" else if has_four_abilities() then "xcard2" else "xcard") + (if slide_two() or two_clear() or slide_three() or slide_four() then "_level") + (if is_stamped() and is_normal() or is_saga() then "_rare") + ".png" } clear frame back: left: 377 top: 0 width: { if back_clear() then 375 else 0 } height: { if back_clear() then 523 else 0 } z index: 1 render style: image popup style: in place image: { (if back_normal() or back_saga() then "clear2" else if back_four_abilities() then "xcard2" else "xcard") + (if backslide_two() or two_back_clear() or backslide_three() or backslide_four() then "_level") + ".png" } corner: left: { if is_map() then 22 else 19} top: { if is_normal() or is_saga() then 25 else if front_clear() then 17 else 18} height: { if is_normal() or is_saga() then 31 else 32} width: { if is_normal() or is_saga() then 31 else 32} z index: 5 render style: image choice images: day: sun_circle.png night: night_circle.png eldrazi: eldrazi.png moon: moon.png compass: compass.png artifact: artifact.png creature: creature.png enchantment: enchantment.png instant: instant.png land: land.png multitype: multitype.png sorcery: sorcery.png planeswalker: planeswalker.png structure: structure.png compass: compass.png aetherprint: aetherprint.png sparker colors white: planeswalker/wcorner.png sparker colors blue: planeswalker/ucorner.png sparker colors black: planeswalker/bcorner.png sparker colors red: planeswalker/rcorner.png sparker colors green: planeswalker/gcorner.png sparker colors multicolor: planeswalker/mcorner.png sparker colors colorless: planeswalker/ccorner.png custom one: { if contains(styling.custom_symbol_one, match:".png") then "/magic-mainframe-extras.mse-include/" + styling.custom_symbol_one else "" } custom two: { if contains(styling.custom_symbol_two, match:".png") then "/magic-mainframe-extras.mse-include/" + styling.custom_symbol_two else "" } corner 2: left: { if back_map() then 399 else 396} top: { if back_normal() or back_saga() then 25 else if back_clear() then 17 else 18} height: { if back_normal() or back_saga() then 31 else 32} width: { if back_normal() or back_saga() then 31 else 32} z index: 5 render style: image choice images: day: sun_circle.png night: night_circle.png eldrazi: eldrazi.png moon: moon.png compass: compass.png artifact: artifact.png creature: creature.png enchantment: enchantment.png instant: instant.png land: land.png multitype: multitype.png sorcery: sorcery.png planeswalker: planeswalker.png structure: structure.png compass: compass.png aetherprint: aetherprint.png sparker colors white: planeswalker/wcorner.png sparker colors blue: planeswalker/ucorner.png sparker colors black: planeswalker/bcorner.png sparker colors red: planeswalker/rcorner.png sparker colors green: planeswalker/gcorner.png sparker colors multicolor: planeswalker/mcorner.png sparker colors colorless: planeswalker/ccorner.png custom one: { if contains(styling.custom_symbol_one, match:".png") then "/magic-mainframe-extras.mse-include/" + styling.custom_symbol_one else "" } custom two: { if contains(styling.custom_symbol_two, match:".png") then "/magic-mainframe-extras.mse-include/" + styling.custom_symbol_two else "" } nyx overlay: left: 0 top: 0 width: 375 height: 523 render style: image image: {if front_clear() then "" else nyx_background()} z index: 0 visible: {is_nyx()} mask: { if not front_clear() then "nodemask.png"} legend overlay: left: 0 top: 0 width: 375 height: 523 render style: image image: {if front_clear() then "xcrown.png" else legend_background()} z index: 1 visible: {is_legend()} mask: { if not front_clear() then "nodemask.png"} miracle overlay: left: 0 top: 0 width: 375 height: 523 render style: image image: {if front_clear() then "miracles/xmiracle.png" else miracle_background()} z index: 1 visible: {is_miracle()} mask: { if not front_clear() then "nodemask.png"} vehicle overlay: left: 0 top: 0 width: 375 height: 523 render style: image image: {"voverlay" + (if is_full() then "_full") + ".png" } z index: 0 mask: vmask.png visible: {is_vehicle()} nyx overlay 2: left: 377 top: 0 width: 375 height: 523 render style: image image: {if back_clear() then "" else if contains(styling.other_options, match:"normal back face") then nyx_background() else nyx_background2()} z index: 0 visible: {back_nyx()} mask: { if not back_clear() then "nodemask.png"} miracle overlay 2: left: 377 top: 0 width: 375 height: 523 render style: image image: {if back_clear() then "miracles/xmiracle.png" else if contains(styling.other_options, match:"normal back face") then miracle_background() else miracle_background2()} z index: 1 visible: {back_miracle()} mask: { if not back_clear() then "nodemask.png"} legend overlay 2: left: 377 top: 0 width: 375 height: 523 render style: image image: {if back_clear() then "xcrown.png" else legend_background2()} z index: 1 visible: {back_legend()} mask: { if not back_clear() then "nodemask.png"} vehicle overlay 2: left: 377 top: 0 width: 375 height: 523 render style: image image: {"voverlay" + (if back_full() then "_full") + ".png" } z index: 0 mask: {if contains(styling.other_options, match:"normal back face") then "vmask.png" else ""} visible: {back_vehicle()} patch 1: left: 0 top: 0 width: 375 height: 523 render style: image image: {if has_four_abilities() then "planeswalker/bigpatch.png" else "planeswalker/smolpatch.png"} visible: {not (is_normal() or is_saga()) and not (front_clear() and has_four_abilities())} z index: 2 patch 2: left: 377 top: 0 width: 375 height: 523 render style: image image: {if back_four_abilities() then "planeswalker/bigpatch.png" else "planeswalker/smolpatch.png"} visible: {not (back_normal() or back_saga()) and not (back_clear() and back_four_abilities())} z index: 2 map: left: 0 top: 0 width: 375 height: 523 z index: 1 render style: image image: {map_background()} visible: {is_map()} mask: maps/frame_mask.png map 2: left: 377 top: 0 width: 375 height: 523 z index: 1 render style: image image: {map_background2()} visible: {back_map()} mask: maps/frame_mask.png cb 2 copy: z index: 4 left: 270 top: 60 width: 70 height: 20 alignment: bottom center font: name: ModMatrix size: 12 weight: bold color: black separator color: red symbol font: name: magic-mana-large size: 13 alignment: middle right always symbol: true visible: { is_flagged()} cb copy: z index: 4 left: 647 top: 60 width: 70 height: 20 alignment: bottom center font: name: ModMatrix size: 12 weight: bold color: black separator color: red symbol font: name: magic-mana-large size: 13 alignment: middle right always symbol: true visible: { is_flagged()} cb box: left: 0 top: 0 width: 375 height: 523 z index: 1 visible: { card.casting_cost_2 != "" and is_flagged() } render style: image image: { card_cb() } cb box 2: left: 377 top: 0 width: 375 height: 523 z index: 1 visible: { card.casting_cost != "" and is_flagged()} render style: image image: { card_cb() } meld bar: left: 377 top: 0 width: 375 height: 523 render style: image image: meldmask.png visible: {contains(styling.other_options, match:"meld back")} z index: 10 promo label: left: 40 top: { if has_four_abilities() then 225 else if is_full() then 295 else 262 } width: {if contains(styling.other_options, match:"prerelease stamp") then 295 else 0} height: 29 alignment: middle right z index: 4 font: name: ModMatrix size: 14 color: rgb(223,169,41) flavor bar: left: 0 top: { bar_equation() } width: 375 height: 1 z index: 1 render style: image image: bar.png visible: { card.rule_text != "" and remove_tags(card.flavor_text) != "" and set.use_flavor_bar } promo label 2: left: 417 top: { if back_four_abilities() then 225 else 262 } width: {if contains(styling.other_options, match:"prerelease stamp") then 295 else 0} height: 29 alignment: middle right z index: 4 font: name: ModMatrix size: 14 color: rgb(223,169,41) flavor bar 2: left: 377 top: { bar_equation2() } width: 375 height: 1 z index: 1 render style: image image: bar.png visible: { card.rule_text_2 != "" and remove_tags(card.flavor_text_2) != "" and set.use_flavor_bar }