This commit is contained in:
cajun
2025-01-11 23:38:05 -06:00
parent e35d40f658
commit a542a11dd9
34 changed files with 237 additions and 89 deletions

Binary file not shown.

View File

@@ -639,7 +639,7 @@ init script:
cw := if cw > 44 then (if set.print_fix != "" then set.print_fix else 22) else if cw < 22 then 22 else cw cw := if cw > 44 then (if set.print_fix != "" then set.print_fix else 22) else if cw < 22 then 22 else cw
if card_style.rarity.width == 0 then 0 else cw if card_style.rarity.width == 0 then 0 else cw
} }
special_text := {if is_leveler() then ((if card.level_0 != "" then "[" + level_label(0) + " " + card.level_0 + "] " else "") + card.level_1_text + (if card.pt != "" then " [" + card.pt + "]" else "") + "\n" special_text := {if is_leveler() then ((if card.level_0 != "" then "[" + level_label(0) + " " + card.level_0 + "] " else "") + card.level_1_text + (if card.pt != "" and not lone_pt() then " [" + card.pt + "]" else "") + "\n"
+ (if card.level_1 != "" then "[" + level_label(1) + " " + card.level_1 + "] " else "") + card.level_2_text + (if card.pt_2 != "" then " [" + card.pt_2 + "]" else "") + "\n" + (if card.level_1 != "" then "[" + level_label(1) + " " + card.level_1 + "] " else "") + card.level_2_text + (if card.pt_2 != "" then " [" + card.pt_2 + "]" else "") + "\n"
+ (if card.level_2 != "" then "[" + level_label(2) + " " + card.level_2 + "] " else "") + card.level_3_text + (if card.pt_3 != "" then " [" + card.pt_3 + "]" else "") + (if card.level_4_text != "" then "\n" else "") + (if card.level_2 != "" then "[" + level_label(2) + " " + card.level_2 + "] " else "") + card.level_3_text + (if card.pt_3 != "" then " [" + card.pt_3 + "]" else "") + (if card.level_4_text != "" then "\n" else "")
+ (if card.level_3 != "" then "[" + level_label(3) + " " + card.level_3 + "] " else "") + card.level_4_text + (if card.pt_7 != "" then " [" + card.pt_7 + "]" else "") + (if card.level_3 != "" then "[" + level_label(3) + " " + card.level_3 + "] " else "") + card.level_4_text + (if card.pt_7 != "" then " [" + card.pt_7 + "]" else "")

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -123,15 +123,28 @@ init script:
guild_mana := { styling.use_guild_mana_symbols } guild_mana := { styling.use_guild_mana_symbols }
ancestral_mana := { styling.use_ancestral_mana_symbols } ancestral_mana := { styling.use_ancestral_mana_symbols }
is_land := match@(match: "(?i)Land") is_land := lang_setting("is_land")
is_basic := match@(match: "(?i)Basic") is_basic := lang_setting("is_basic")
is_plains := match@(match: "(?i)Plains") is_plains := lang_setting("is_plains")
is_island := match@(match: "(?i)Island") is_island := lang_setting("is_island")
is_swamp := match@(match: "(?i)Swamp") is_swamp := lang_setting("is_swamp")
is_mountain := match@(match: "(?i)Mountain") is_mountain := lang_setting("is_mountain")
is_forest := match@(match: "(?i)Forest") is_forest := lang_setting("is_forest")
is_wastes := lang_setting("is_wastes")
is_basic_symboled := { styling.basic_land_symbol and is_basic(card.super_type) and is_land(card.super_type) and (is_plains(card.sub_type) or is_island(card.sub_type) or is_swamp(card.sub_type) or is_mountain(card.sub_type) or is_forest(card.sub_type)) } is_basic_symboled := {
styling.basic_land_symbol
and is_basic(card.super_type)
and is_land(card.super_type)
and (
is_plains(card.sub_type)
or is_island(card.sub_type)
or is_swamp(card.sub_type)
or is_mountain(card.sub_type)
or is_forest(card.sub_type)
or is_wastes(card.name)
)
}
is_promo := { styling.promo } is_promo := { styling.promo }

View File

@@ -1533,6 +1533,10 @@ init script:
} }
flavor_bar_disabled_1 := { mainframe_walker() or a_saga() or not set.use_flavor_bar } flavor_bar_disabled_1 := { mainframe_walker() or a_saga() or not set.use_flavor_bar }
flavor_bar_disabled_2 := { mainframe_walkerb() or b_saga() or not set.use_flavor_bar } flavor_bar_disabled_2 := { mainframe_walkerb() or b_saga() or not set.use_flavor_bar }
name_transform_symbol_shift := {
map := face_coordinates_map(face)
29 * (min(map.width, map.height)/375) + offset
}
watermark_include := "/magic-modules.mse-include/watermarks" watermark_include := "/magic-modules.mse-include/watermarks"
############################################################## Set info fields ############################################################## Set info fields
@@ -1966,7 +1970,7 @@ card style:
mask: { back_frame_mask() } mask: { back_frame_mask() }
############################# Name line ############################# Name line
name: name:
left: { if front_map() then 65 else if front_normal() then 58 else 62 } left: { if front_map() then 65 else if front_normal() then (if card.card_symbol == "none" then 58 else 78) else if card.card_symbol == "none" then 62 else 79 }
top: { if front_map() then 27 else if front_normal() then 30 else 22 } top: { if front_map() then 27 else if front_normal() then 30 else 22 }
right: { (if front_map() then 344 else 339) - card_style.casting_cost.content_width } right: { (if front_map() then 344 else 339) - card_style.casting_cost.content_width }
height: { 23 - (0.5 * shrink_name()) } height: { 23 - (0.5 * shrink_name()) }
@@ -1979,7 +1983,7 @@ card style:
size: { name_font_size() } size: { name_font_size() }
color: { name_font_color() } color: { name_font_color() }
name 2: name 2:
left: { if back_map() then 442 else if back_normal() then 435 else 439 } left: { if back_map() then 442 else if back_normal() then ( if card.card_symbol_2 == "none" then 435 else 455) else if card.card_symbol_2 == "none" then 456 else 439 }
top: { (if back_map() then 27 else if back_normal() then 30 else 22) - 0.5*shrink_name2() } top: { (if back_map() then 27 else if back_normal() then 30 else 22) - 0.5*shrink_name2() }
right: { (if back_map() then 719 else 714) - card_style.casting_cost_2.content_width } right: { (if back_map() then 719 else 714) - card_style.casting_cost_2.content_width }
height: { 23 - (0.5 * shrink_name2()) } height: { 23 - (0.5 * shrink_name2()) }

View File

@@ -266,6 +266,12 @@ init script:
is_snow := {chosen(styling.other_options, choice:"snow")} is_snow := {chosen(styling.other_options, choice:"snow")}
is_vehicle := {chosen(styling.other_options, choice:"vehicle")} is_vehicle := {chosen(styling.other_options, choice:"vehicle")}
is_pinned := {chosen(styling.other_options, choice:"pride pinlines")} is_pinned := {chosen(styling.other_options, choice:"pride pinlines")}
is_custom_border := {
chosen(styling.other_options, choice:"custom border")
and contains(styling.custom_border_source, match:".png")
}
custom_border_blend := { color_background(type:"custom_border", base_hybrid:card_hybrid) }
paragraph_count := replace@(match:"\n", replace:"~")+ paragraph_count := replace@(match:"\n", replace:"~")+
filter_text@(match:"~") filter_text@(match:"~")
special_text := { special_text := {
@@ -376,11 +382,16 @@ styling field:
choice: nyx choice: nyx
choice: snow choice: snow
choice: vehicle choice: vehicle
choice: custom border
choice: adventure choice: adventure
choice: reversed adventure choice: reversed adventure
choice: pride pinlines choice: pride pinlines
choice: popunder art choice: popunder art
initial: un-indent nonloyalty abilities initial: un-indent nonloyalty abilities
styling field:
type: text
name: custom border source
description: Use this file from magic-mainframe-extras as a custom vehicle-like frame. if colored, name images like "wborder.png" and put "-color-border.png" here.
styling field: styling field:
type: text type: text
name: custom mask name: custom mask
@@ -539,7 +550,7 @@ card style:
z index: 920 z index: 920
padding top: 0 padding top: 0
card symbol: card symbol:
left: {if card.card_symbol=="none" then 20 else 29} left: {if card.card_symbol=="none" then 20 else 25}
top: 21 top: 21
height: 21 height: 21
width: 23 width: 23
@@ -977,6 +988,12 @@ extra card field:
choice: car door choice: car door
save value: false save value: false
editable: false editable: false
extra card field:
type: choice
name: custom overlay
choice: car door
save value: false
editable: false
extra card field: extra card field:
type: choice type: choice
name: snow overlay name: snow overlay
@@ -1413,7 +1430,7 @@ extra card style:
image: {module_nyx()} image: {module_nyx()}
z index: 330 z index: 330
visible: {is_nyx()} visible: {is_nyx()}
mask: {"trim_masks/" + (if has_four_abilities() then "4") + "pw" + (if is_vehicle() then "_v") + "_mask.png"} mask: {"trim_masks/" + (if has_four_abilities() then "4") + "pw" + (if is_vehicle() or is_custom_border() then "_v") + "_mask.png"}
snow overlay: snow overlay:
left: 0 left: 0
top: 0 top: 0
@@ -1423,7 +1440,7 @@ extra card style:
image: {module_snow()} image: {module_snow()}
z index: 320 z index: 320
visible: {is_snow()} visible: {is_snow()}
mask: {"trim_masks/" + (if has_four_abilities() then "4") + "pw" + (if is_vehicle() then "_v") + "_mask.png"} mask: {"trim_masks/" + (if has_four_abilities() then "4") + "pw" + (if is_vehicle() or is_custom_border() then "_v") + "_mask.png"}
vehicle overlay: vehicle overlay:
left: 0 left: 0
top: 0 top: 0
@@ -1432,8 +1449,18 @@ extra card style:
render style: image render style: image
image: full_voverlay.png image: full_voverlay.png
z index: 310 z index: 310
mask: {"trim_masks/" + (if has_four_abilities() then "4") + "pw_mask.png"} mask: {"trim_masks/" + (if has_four_abilities() then "4") + "pw" + (if is_custom_border() then "_v") + "_mask.png"}
visible: {is_vehicle()} visible: {is_vehicle()}
custom overlay:
left: 0
top: 0
width: 375
height: 523
render style: image
image: { custom_border_blend() }
z index: 317
mask: {"trim_masks/" + (if has_four_abilities() then "4") + "pw_mask.png"}
visible: { is_custom_border() }
pride pin: pride pin:
left: { if not is_pinned() then 0 else 19} left: { if not is_pinned() then 0 else 19}
top: { if not is_pinned() then 0 else 51} top: { if not is_pinned() then 0 else 51}

View File

@@ -6,7 +6,7 @@ icon: card-sample.png
installer group: magic/m15 style/tokens installer group: magic/m15 style/tokens
position hint: 004 position hint: 004
version: 2024-09-03 version: 2025-01-11
depends on: depends on:
package: magic.mse-game package: magic.mse-game
version: 2014-06-25 version: 2014-06-25
@@ -228,6 +228,11 @@ init script:
then module_stamp() then module_stamp()
else "/magic-modules.mse-include/stamps/backs/" + (if sh == "triangle" then "triangle_stamp.png" else "stamp.png") else "/magic-modules.mse-include/stamps/backs/" + (if sh == "triangle" then "triangle_stamp.png" else "stamp.png")
} }
is_custom_border := {
chosen(styling.frames, choice:"custom border")
and contains(styling.custom_border_source, match:".png")
}
custom_border_blend := { color_background(type:"custom_border", base_hybrid:card_hybrid) }
watermark_include := "/magic-modules.mse-include/watermarks" watermark_include := "/magic-modules.mse-include/watermarks"
############################################################## Set info fields ############################################################## Set info fields
set info style: set info style:
@@ -253,6 +258,11 @@ styling field:
choice: nyx choice: nyx
choice: snow choice: snow
choice: vehicle choice: vehicle
choice: custom border
styling field:
type: text
name: custom border source
description: Use this file from magic-mainframe-extras as a custom vehicle-like frame. if colored, name images like "wborder.png" and put "-color-border.png" here.
styling field: styling field:
type: multiple choice type: multiple choice
name: auto frames name: auto frames
@@ -486,7 +496,7 @@ card style:
top: {if comma_count(styling.popout_image_style) == ",,,," then split_text(match:",", styling.popout_image_style).1 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"} 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"} height: {if comma_count(styling.popout_image_style) == ",,,," then split_text(match:",", styling.popout_image_style).3 else "0"}
z index: 8 z index: 1010
############################# Card type ############################# Card type
type: type:
left: 32 left: 32
@@ -712,6 +722,12 @@ extra card field:
choice: plate choice: plate
save value: false save value: false
editable: false editable: false
extra card field:
type: choice
name: custom overlay
choice: plate
save value: false
editable: false
extra card field: extra card field:
type: text type: text
name: vorthos box name: vorthos box
@@ -856,6 +872,16 @@ extra card style:
image: voverlay.png image: voverlay.png
mask: {"v_" + (if is_nyx() or is_snow() then "nyx_" else "") + if is_tall() then "tall_mask.png" else if is_textless() then "short_mask.png" else "mid_mask.png"} mask: {"v_" + (if is_nyx() or is_snow() then "nyx_" else "") + if is_tall() then "tall_mask.png" else if is_textless() then "short_mask.png" else "mid_mask.png"}
visible: { is_vehicle() } visible: { is_vehicle() }
vehicle overlay:
left: 15
top: 15
width: 345
height: 471
z index: 1
render style: image
image: {custom_border_blend()}
mask: {"v_" + (if is_nyx() or is_snow() then "nyx_" else "") + if is_tall() then "tall_mask.png" else if is_textless() then "short_mask.png" else "mid_mask.png"}
visible: { is_custom_border() }
vorthos box: vorthos box:
right: { if card.pt != "" then 275 else 350 } right: { if card.pt != "" then 275 else 350 }
top: 488 top: 488

View File

@@ -88,7 +88,6 @@ init script:
# This will create two seperate card faces # This will create two seperate card faces
card_background2 := { color_background(type:"card2", base_hybrid:card_hybrid) } card_background2 := { color_background(type:"card2", base_hybrid:card_hybrid) }
card_ptbox2 := { color_background(type:"pt2", base_hybrid:pt_hybrid) }
# Use the normal tap symbol # Use the normal tap symbol
mana_t := { mana_t := {
@@ -824,7 +823,7 @@ extra card style:
z index: 840 z index: 840
visible: { card.pt_2 != "" and styling.three_cards == "yes"} visible: { card.pt_2 != "" and styling.three_cards == "yes"}
render style: image render style: image
image: { card_ptbox2() } image: { card_ptbox() }
pt box 3: pt box 3:
left: 464 left: 464
top: 466 top: 466

View File

@@ -405,13 +405,25 @@
replace: { _1 + to_upper(_2) }) + replace: { _1 + to_upper(_2) }) +
#curly_quotes + #curly_quotes +
# step 9 : spellcheck # step 9 : spellcheck
{ if set.mark_errors then {
if set.auto_correct then
auto_correct(input)
else input
} +
{
if set.auto_errata then
auto_errata(input)
else input
} +
{
if language().code == "ja" or language().code == "zht" or language().code == "zhs" then input
else if set.mark_errors then
check_spelling( check_spelling(
language: language().spellcheck_code, language: language().spellcheck_code,
extra_dictionary: "/magic.mse-game/magic-words", extra_dictionary: "/magic.mse-game/dictionary/magic-words",
extra_match: additional_text_words extra_match: additional_text_words
) )
else input else input
} }
############################################################## Statistics utilities ############################################################## Statistics utilities

Binary file not shown.

After

Width:  |  Height:  |  Size: 584 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@@ -398,10 +398,11 @@ init script:
image_width := { image_width := {
clear := if input == "left" then left_clear() else if input == "right" then right_clear() else false clear := if input == "left" then left_clear() else if input == "right" then right_clear() else false
bl := is_borderless() bl := is_borderless()
sr := is_short_room()
room_style := styling.room_images room_style := styling.room_images
if is_room() then ( if is_room() then (
if room_style == "one image" and input == "left" if room_style == "one image" and input == "left"
then if bl then 488 else if clear then 474 else 452 then if bl then 488 else if clear then 474 else if sr then 444 else 452
else if room_style == "one image" else if room_style == "one image"
then 0 then 0
else if bl and input == "left" else if bl and input == "left"
@@ -410,6 +411,8 @@ init script:
then 265 then 265
else if clear else if clear
then 251 then 251
else if sr
then 236
else 240 else 240
) )
else if bl and input == "left" and room_style == "one image" else if bl and input == "left" and room_style == "one image"
@@ -422,6 +425,8 @@ init script:
then 265 then 265
else if clear else if clear
then 237 then 237
else if contains(styling.other_options, match:"spillover image")
then if input == "left" then 444 else 0
else 203 else 203
} }
image_height := { image_height := {
@@ -430,6 +435,8 @@ init script:
then 375 then 375
else if clear else if clear
then 345 then 345
else if is_short_room()
then 149
else if is_room() else if is_room()
then 211 then 211
else 148 else 148
@@ -442,7 +449,8 @@ init script:
room_style := styling.room_images room_style := styling.room_images
rm := is_room() rm := is_room()
if rm then ( if is_short_room() then if input == "right" then "rooms/image_mask_right_short.png" else ""
else if rm then (
if room_style == "one image" and input == "left" if room_style == "one image" and input == "left"
then "rooms/image_mask{tag}.png" then "rooms/image_mask{tag}.png"
else "rooms/image_mask_{input}{tag}.png" else "rooms/image_mask_{input}{tag}.png"
@@ -470,6 +478,7 @@ init script:
is_room := { is_room := {
chosen(styling.frames, choice:"room") or lang_setting("is_room")(card.sub_type) chosen(styling.frames, choice:"room") or lang_setting("is_room")(card.sub_type)
} }
is_short_room := { chosen(styling.other_options, choice:"short room image") and is_room() }
is_fuse := { card.rule_text_3 != "" and not is_room() } is_fuse := { card.rule_text_3 != "" and not is_room() }
is_arrows := { chosen(styling.frames, choice:"arrows") } is_arrows := { chosen(styling.frames, choice:"arrows") }
is_borderless := { chosen(styling.frames, choice:"borderless") } is_borderless := { chosen(styling.frames, choice:"borderless") }
@@ -601,6 +610,9 @@ init script:
] ]
] ]
} }
flavor_bar_width := { 251 }
flavor_bar_offset_left_1 := { 25 }
flavor_bar_offset_left_2 := { 268 }
harder_script := [ harder_script := [
alt_nyx: alt_nyx_template, alt_nyx: alt_nyx_template,
texture: texture_template texture: texture_template
@@ -650,7 +662,14 @@ styling field:
choice: ancestral generic mana choice: ancestral generic mana
choice: prerelease stamp choice: prerelease stamp
choice: two illustrators choice: two illustrators
choice: spillover image
choice: short room image
initial: two illustrators initial: two illustrators
styling field:
type: color
name: room backfill
default: rgb(0,0,0)
description: Sets the color of the room textbox on short rooms
styling field: styling field:
type: text type: text
name: popout image style name: popout image style
@@ -880,11 +899,11 @@ card style:
image: { card_symbol_image(face: 2) } image: { card_symbol_image(face: 2) }
############################# Image ############################# Image
image: image:
left: { if is_borderless() or left_clear() then 35 else if is_room() then 46 else 50 } left: { if is_borderless() or left_clear() then 35 else if is_short_room() then 50 else if is_room() then 46 else 50 }
top: { if is_borderless() then 0 else if left_clear() then 13 else 49 } top: { if is_borderless() then 0 else if left_clear() then 13 else 49 }
width: { image_width("left") } width: { image_width("left") }
height: { image_height("left") } height: { image_height("left") }
z index: 400 z index: 510
default: {default_image(card.card_color)} default: {default_image(card.card_color)}
mask: { image_mask("left") } mask: { image_mask("left") }
image 2: image 2:
@@ -892,7 +911,7 @@ card style:
top: { if is_borderless() then 0 else if right_clear() then 13 else 49 } top: { if is_borderless() then 0 else if right_clear() then 13 else 49 }
width: { image_width("right") } width: { image_width("right") }
height: { image_height("right") } height: { image_height("right") }
z index: 401 z index: 511
default: {default_image(card.card_color_2)} default: {default_image(card.card_color_2)}
mask: { image_mask("right") } mask: { image_mask("right") }
mainframe image: mainframe image:
@@ -903,11 +922,11 @@ card style:
z index: 1010 z index: 1010
mainframe image 2: mainframe image 2:
left: 245 left: 245
top: { if is_borderless() then 0 else 53 } top: { if is_borderless() then 0 else 49 }
width: { if (is_room() or is_borderless()) and styling.room_images == "three images" then 50 else 0 } width: { if (is_room() or is_borderless()) and styling.room_images == "three images" then 50 else 0 }
height: { if is_borderless() then 375 else 209 } height: { if is_borderless() then 375 else if is_short_room() then 149 else 211 }
z index: 410 z index: 520
mask: { "rooms/image_mask_middle" + (if not is_room() then "_fuse" else if is_borderless() then (if uses_fuse_arrows() then "_arrow" else "_bl") else "") + ".png" } mask: { if is_short_room() then "" else "rooms/image_mask_middle" + (if not is_room() then "_fuse" else if is_borderless() then (if uses_fuse_arrows() then "_arrow" else "_bl") else "") + ".png" }
############################# Card type ############################# Card type
indicator: indicator:
left: 50 left: 50
@@ -1184,6 +1203,12 @@ extra card field:
choice: patch choice: patch
editable: false editable: false
save value: false save value: false
extra card field:
type: color
name: spillblock
script: styling.room_backfill
editable: false
save value: false
extra card style: extra card style:
fuse_bridge: fuse_bridge:
@@ -1316,3 +1341,11 @@ extra card style:
render style: image render style: image
image: rooms/patch.png image: rooms/patch.png
visible: { borderless_frames() and is_room() and not left_clear() } visible: { borderless_frames() and is_room() and not left_clear() }
spillblock:
left: 46
top: 202
width: 452
height: 58
z index: 700
visible: { is_short_room() }
mask: rooms/bottom_mask.png

View File

@@ -38,7 +38,7 @@ init script:
else "2" # textbox else "2" # textbox
} }
template_prefix := template_prefix := [
card: "" card: ""
card2: "" card2: ""
card3: "" card3: ""

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 B

After

Width:  |  Height:  |  Size: 551 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 209 B

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 B

After

Width:  |  Height:  |  Size: 551 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 217 B

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -2,8 +2,8 @@ card style:
watermark: watermark:
left: { text_style_field(watermark_text_field_1()).left - face_coordinates_map(watermark_face_1()).width/375*10 - watermark_offset_width_1() + watermark_offset_left_1() } left: { text_style_field(watermark_text_field_1()).left - face_coordinates_map(watermark_face_1()).width/375*10 - watermark_offset_width_1() + watermark_offset_left_1() }
width: { text_style_field(watermark_text_field_1()).width + face_coordinates_map(watermark_face_1()).width/375*20 + watermark_offset_width_1()*2 } width: { text_style_field(watermark_text_field_1()).width + face_coordinates_map(watermark_face_1()).width/375*20 + watermark_offset_width_1()*2 }
top: { text_style_field(watermark_text_field_1()).top + face_coordinates_map(watermark_face_1()).height/523*3 - watermark_offset_height_1() + watermark_offset_top_1() } top: { text_style_field(watermark_text_field_1()).top + face_coordinates_map(watermark_face_1()).height/523*3 - watermark_offset_height_1() + watermark_offset_top_1() - chop_top() }
height: { text_style_field(watermark_text_field_1()).height - face_coordinates_map(watermark_face_1()).height/523*6 + watermark_offset_height_1()*2 + (if is_stamped(field: watermark_stamp_field_1()) then watermark_offset_stamp_1() else 0) } height: { text_style_field(watermark_text_field_1()).height - face_coordinates_map(watermark_face_1()).height/523*6 + watermark_offset_height_1()*2 + (if is_stamped(field: watermark_stamp_field_1()) then watermark_offset_stamp_1() else 0) + chop_top() + chop_bot() }
visible: { not watermark_disabled_1() } visible: { not watermark_disabled_1() }
alignment: middle center alignment: middle center
popup style: in place popup style: in place

View File

@@ -3,8 +3,8 @@ card style:
watermark 2: watermark 2:
left: { text_style_field(watermark_text_field_2()).left - face_coordinates_map(watermark_face_2()).width/375*10 - watermark_offset_width_2() + watermark_offset_left_2() } left: { text_style_field(watermark_text_field_2()).left - face_coordinates_map(watermark_face_2()).width/375*10 - watermark_offset_width_2() + watermark_offset_left_2() }
width: { text_style_field(watermark_text_field_2()).width + face_coordinates_map(watermark_face_2()).width/375*20 + watermark_offset_width_2()*2 } width: { text_style_field(watermark_text_field_2()).width + face_coordinates_map(watermark_face_2()).width/375*20 + watermark_offset_width_2()*2 }
top: { text_style_field(watermark_text_field_2()).top + face_coordinates_map(watermark_face_2()).height/523*3 - watermark_offset_height_2() + watermark_offset_top_2() } top: { text_style_field(watermark_text_field_2()).top + face_coordinates_map(watermark_face_2()).height/523*3 - watermark_offset_height_2() + watermark_offset_top_2() - chop_top2() }
height: { text_style_field(watermark_text_field_2()).height - face_coordinates_map(watermark_face_2()).height/523*6 + watermark_offset_height_2()*2 + (if is_stamped(field: watermark_stamp_field_2()) then watermark_offset_stamp_2() else 0) } height: { text_style_field(watermark_text_field_2()).height - face_coordinates_map(watermark_face_2()).height/523*6 + watermark_offset_height_2()*2 + (if is_stamped(field: watermark_stamp_field_2()) then watermark_offset_stamp_2() else 0) + chop_top2() + chop_bot2() }
visible: { not watermark_disabled_2() } visible: { not watermark_disabled_2() }
alignment: middle center alignment: middle center
popup style: in place popup style: in place

View File

@@ -3,8 +3,8 @@ card style:
watermark 3: watermark 3:
left: { text_style_field(watermark_text_field_3()).left - face_coordinates_map(watermark_face_3()).width/375*10 - watermark_offset_width_3() + watermark_offset_left_3() } left: { text_style_field(watermark_text_field_3()).left - face_coordinates_map(watermark_face_3()).width/375*10 - watermark_offset_width_3() + watermark_offset_left_3() }
width: { text_style_field(watermark_text_field_3()).width + face_coordinates_map(watermark_face_3()).width/375*20 + watermark_offset_width_3()*2 } width: { text_style_field(watermark_text_field_3()).width + face_coordinates_map(watermark_face_3()).width/375*20 + watermark_offset_width_3()*2 }
top: { text_style_field(watermark_text_field_3()).top + face_coordinates_map(watermark_face_3()).height/523*3 - watermark_offset_height_3() + watermark_offset_top_3() } top: { text_style_field(watermark_text_field_3()).top + face_coordinates_map(watermark_face_3()).height/523*3 - watermark_offset_height_3() + watermark_offset_top_3() - chop_top3() }
height: { text_style_field(watermark_text_field_3()).height - face_coordinates_map(watermark_face_3()).height/523*6 + watermark_offset_height_3()*2 + (if is_stamped(field: watermark_stamp_field_3()) then watermark_offset_stamp_3() else 0) } height: { text_style_field(watermark_text_field_3()).height - face_coordinates_map(watermark_face_3()).height/523*6 + watermark_offset_height_3()*2 + (if is_stamped(field: watermark_stamp_field_3()) then watermark_offset_stamp_3() else 0) + chop_top3() + chop_bot3() }
visible: { not watermark_disabled_3() } visible: { not watermark_disabled_3() }
alignment: middle center alignment: middle center
popup style: in place popup style: in place

View File

@@ -42,6 +42,7 @@ script:
else if contains(card.shape, match:"battle") then "split" else if contains(card.shape, match:"battle") then "split"
else if contains(card.shape, match:"leveler") then "normal" else if contains(card.shape, match:"leveler") then "normal"
else if contains(card.shape, match:"saga") then "normal" else if contains(card.shape, match:"saga") then "normal"
else if contains(card.shape, match:"class") then "normal"
else if contains(card.shape, match:"adventure") then "vsplit" else if contains(card.shape, match:"adventure") then "vsplit"
else if contains(card.shape, match:"aftermath") then "vsplit" else if contains(card.shape, match:"aftermath") then "vsplit"
else if contains(card.shape, match:"planeswalker") then "normal" else if contains(card.shape, match:"planeswalker") then "normal"

View File

@@ -815,7 +815,7 @@ extra card field:
type: text type: text
name: card code name: card code
save value: false save value: false
script: card_code_script_core() script: card_code_script(value)
extra card field: extra card field:
type: choice type: choice
name: artist arrow name: artist arrow

View File

@@ -333,7 +333,7 @@ extra card field:
type: text type: text
name: card code name: card code
save value: false save value: false
script: card_code_script_core() script: card_code_script(value)
extra card field: extra card field:
type: choice type: choice
name: artist arrow name: artist arrow

View File

@@ -105,7 +105,7 @@ keyword parameter type:
match: [p](?!ped)(?!ment) match: [p](?!ped)(?!ment)
keyword parameter type: keyword parameter type:
name: name name: name
match: ([^(.:;\n—]+|[ ]) match: ([^(.:;\n—]+[(.:;\n—]?|[ ])
#match: [A-Za-z0-9 ',"“”!?]+ #match: [A-Za-z0-9 ',"“”!?]+
refer script: refer script:
name: normal name: normal

View File

@@ -1187,7 +1187,9 @@ handle_merged_rt := {
handle_action_rt := { handle_action_rt := {
"<use-if-bumped>To " + to + ", " + to_lower(input) + "</use-if-bumped><otherwise>" + input + "</otherwise>" "<use-if-bumped>To " + to + ", " + to_lower(input) + "</use-if-bumped><otherwise>" + input + "</otherwise>"
} }
handle_action_rt_single := {
"<use-if-bumped>" + prefix + " " + to_lower(input) + "</use-if-bumped><otherwise>" + input + "</otherwise>"
}
############################################################## Complex reminder texts ############################################################## Complex reminder texts
self_pro_check := match@(match:"You ha(ve|s) <kw-A><nospellcheck>protection") self_pro_check := match@(match:"You ha(ve|s) <kw-A><nospellcheck>protection")
protection_code := { protection_code := {
@@ -1690,6 +1692,19 @@ text_filter :=
tag: "<atom-cardname>", tag: "<atom-cardname>",
contents: { "<nospellcheck>" + (if card_name=="" then "CARDNAME" else strip_card_codes(card_name, atom:true)) + "</nospellcheck>" } contents: { "<nospellcheck>" + (if card_name=="" then "CARDNAME" else strip_card_codes(card_name, atom:true)) + "</nospellcheck>" }
) + ) +
#### capitalize This type when appropriate
replace@(
match:"([•.]) <atom-cardname><nospellcheck>this",
replace:"\\1 <atom-cardname><nospellcheck>This"
) +
replace@(
match:"([\"“'])<atom-cardname><nospellcheck>this",
replace:"\\1<atom-cardname><nospellcheck>This"
) +
replace@(
match:"^<atom-cardname><nospellcheck>this",
replace:"<atom-cardname><nospellcheck>This"
) +
tag_contents@( tag_contents@(
tag: "<atom-legname>", tag: "<atom-legname>",
contents: { "<nospellcheck>" + (if card_name=="" then "LEGENDNAME" else legend_filter(strip_card_codes(card_name, atom:true))) + "</nospellcheck>" } contents: { "<nospellcheck>" + (if card_name=="" then "LEGENDNAME" else legend_filter(strip_card_codes(card_name, atom:true))) + "</nospellcheck>" }
@@ -2861,13 +2876,13 @@ card_number_old_1 := {
else if auto_copy then else if auto_copy then
combined_editor( combined_editor(
field1: card.auto_copyright, field1: card.auto_copyright,
separator: card.card_number, separator: " " + card.card_number + " ",
field2: card.card_code_text field2: card.card_code_text
) )
else else
combined_editor( combined_editor(
field1: card.copyright, field1: card.copyright,
separator: card.card_number, separator: " " + card.card_number + " ",
field2: card.card_code_text field2: card.card_code_text
) )
} }
@@ -3008,8 +3023,8 @@ card_name_for_level := {
if set.CARDNAME_replacement == "card's type" if set.CARDNAME_replacement == "card's type"
then ( then (
ty := to_lower(cardname_type(card["type"+tag])) ty := to_lower(cardname_type(card["type"+tag]))
if ty == "" then "this" if ty == "" then "This"
else "this " + ty else "This " + ty
) )
else if set.CARDNAME_replacement == "card's alias" and card["alias"+tag] != "" else if set.CARDNAME_replacement == "card's alias" and card["alias"+tag] != ""
then card["alias"+tag] then card["alias"+tag]
@@ -3756,7 +3771,16 @@ loyalty_textbox_background_image :=
############################################################## Separators ############################################################## Separators
separator_enable_level := { false } separator_enable_level := { false }
separator_default := { if set.use_flavor_bar then "flavor bar" else "none" } separator_default := {
if set.use_flavor_bar then (
if set.default_flavor_bar == "thin bar"
then "grey bar"
else if set.default_flavor_bar == "thick bar"
then "flavor bar"
else set.default_flavor_bar
)
else "none"
}
flavor_bar_left := { face_coordinates_map(input).left } flavor_bar_left := { face_coordinates_map(input).left }
flavor_bar_top := flavor_bar_top :=

View File

@@ -460,6 +460,13 @@ set field:
type: boolean type: boolean
name: use flavor bar name: use flavor bar
description: Enables the flavor bar on Mainframe templates. description: Enables the flavor bar on Mainframe templates.
set field:
type: choice
name: default flavor bar
choice: thin bar
choice: thick bar
choice: none
description: The style of flavor bar to use
set field: set field:
type: boolean type: boolean
name: auto legends name: auto legends

View File

@@ -133,7 +133,7 @@ statistics dimension:
script: if filter_from_statistic() == "Filtered" or trim_from_statistic() then "" else mana_value_statistic() script: if filter_from_statistic() == "Filtered" or trim_from_statistic() then "" else mana_value_statistic()
statistics dimension: statistics dimension:
name: permanent/non name: permanent / nonpermanent
position hint: 0200 position hint: 0200
icon: stats/type.png icon: stats/type.png
description: Counts the number of creatures, noncreature permanents, and nonpermanents. Counts each side/face separately. description: Counts the number of creatures, noncreature permanents, and nonpermanents. Counts each side/face separately.
@@ -689,8 +689,8 @@ statistics dimension:
statistics dimension: statistics dimension:
name: all mana production name: mana production (All)
position hint: 0500 position hint: 0520
icon: stats/land_production.png icon: stats/land_production.png
description: Counts how many cards can produce white mana. Repeat for all other colors. Then counts how many cards can produce mana of any color, and mana of a chosen color. description: Counts how many cards can produce white mana. Repeat for all other colors. Then counts how many cards can produce mana of any color, and mana of a chosen color.
split list: true split list: true
@@ -715,8 +715,8 @@ statistics dimension:
Chosen : rgb(112,38,128) Chosen : rgb(112,38,128)
statistics dimension: statistics dimension:
name: land mana prod. name: mana production (Lands)
position hint: 0510 position hint: 0500
icon: stats/land_production.png icon: stats/land_production.png
description: Counts how many lands can produce white mana. Repeat for all other colors. Then counts how many lands can produce mana of any color, and mana of a chosen color. If either side/face is a land, the card will be counted here. description: Counts how many lands can produce white mana. Repeat for all other colors. Then counts how many lands can produce mana of any color, and mana of a chosen color. If either side/face is a land, the card will be counted here.
split list: true split list: true
@@ -741,8 +741,8 @@ statistics dimension:
Chosen : rgb(112,38,128) Chosen : rgb(112,38,128)
statistics dimension: statistics dimension:
name: nonland mana prod. name: mana production (Nonlands)
position hint: 0520 position hint: 0510
icon: stats/land_production.png icon: stats/land_production.png
description: Counts how many non-land cards can produce white mana. Repeat for all other colors. Then counts how many non-land cards can produce mana of any color, and mana of a chosen color. description: Counts how many non-land cards can produce white mana. Repeat for all other colors. Then counts how many non-land cards can produce mana of any color, and mana of a chosen color.
split list: true split list: true
@@ -767,7 +767,7 @@ statistics dimension:
Chosen : rgb(112,38,128) Chosen : rgb(112,38,128)
statistics dimension: statistics dimension:
name: pip count (Casting) name: pip count (Casting Costs)
position hint: 0600 position hint: 0600
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts the number of casting costs that contain one colored pip. Repeat for all other amounts. description: Counts the number of casting costs that contain one colored pip. Repeat for all other amounts.
@@ -795,7 +795,7 @@ statistics dimension:
8+ : rgb(197,24,214) 8+ : rgb(197,24,214)
statistics dimension: statistics dimension:
name: pip colors (Casting) name: pip colors (Casting Costs)
position hint: 0630 position hint: 0630
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts how many cards have a single white pip in their casting cost. Repeat for two white pips. Then three, then four+, then for all other colors. Counts each side/face separately. description: Counts how many cards have a single white pip in their casting cost. Repeat for two white pips. Then three, then four+, then for all other colors. Counts each side/face separately.
@@ -829,7 +829,7 @@ statistics dimension:
GGGG+ : rgb(18,102,0) GGGG+ : rgb(18,102,0)
statistics dimension: statistics dimension:
name: total pips (Casting) name: total pips (Casting Costs)
position hint: 0660 position hint: 0660
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts the total number of white pips in all the casting costs. Repeat for all other colors. description: Counts the total number of white pips in all the casting costs. Repeat for all other colors.
@@ -851,7 +851,7 @@ statistics dimension:
G : rgb(68,144,15) G : rgb(68,144,15)
statistics dimension: statistics dimension:
name: pip count (Ability) name: pip count (Ability Costs)
position hint: 0610 position hint: 0610
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts the number of activated/triggered/keyworded ability costs that contain one colored pip. Repeat for all other amounts. description: Counts the number of activated/triggered/keyworded ability costs that contain one colored pip. Repeat for all other amounts.
@@ -879,7 +879,7 @@ statistics dimension:
8+ : rgb(197,24,214) 8+ : rgb(197,24,214)
statistics dimension: statistics dimension:
name: pip colors (Ability) name: pip colors (Ability Costs)
position hint: 0640 position hint: 0640
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts how many activated/triggered/keyworded abilities have a single white pip in their cost. Repeat for two white pips. Then three, then four+, then for all other colors. Counts each ability on each side/face separately. description: Counts how many activated/triggered/keyworded abilities have a single white pip in their cost. Repeat for two white pips. Then three, then four+, then for all other colors. Counts each ability on each side/face separately.
@@ -913,7 +913,7 @@ statistics dimension:
GGGG+ : rgb(18,102,0) GGGG+ : rgb(18,102,0)
statistics dimension: statistics dimension:
name: total pips (Ability) name: total pips (Ability Costs)
position hint: 0670 position hint: 0670
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts the total number of white pips in all the activated/triggered/keyworded ability costs. Repeat for all other colors. description: Counts the total number of white pips in all the activated/triggered/keyworded ability costs. Repeat for all other colors.
@@ -935,7 +935,7 @@ statistics dimension:
G : rgb(68,144,15) G : rgb(68,144,15)
statistics dimension: statistics dimension:
name: pip count (Combined) name: pip count (All Costs)
position hint: 0620 position hint: 0620
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts the number of costs that contain one colored pip. Repeat for all other amounts. description: Counts the number of costs that contain one colored pip. Repeat for all other amounts.
@@ -963,7 +963,7 @@ statistics dimension:
8+ : rgb(197,24,214) 8+ : rgb(197,24,214)
statistics dimension: statistics dimension:
name: pip color (Combined) name: pip color (All Costs)
position hint: 0650 position hint: 0650
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts how many costs contain a single white pip. Repeat for two white pips. Then three, then four+, then for all other colors. Counts each cost on each side/face separately. description: Counts how many costs contain a single white pip. Repeat for two white pips. Then three, then four+, then for all other colors. Counts each cost on each side/face separately.
@@ -997,7 +997,7 @@ statistics dimension:
GGGG+ : rgb(18,102,0) GGGG+ : rgb(18,102,0)
statistics dimension: statistics dimension:
name: total pips (Combined) name: total pips (All Costs)
position hint: 0680 position hint: 0680
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts the total number of white pips in all the costs. Repeat for all other colors. description: Counts the total number of white pips in all the costs. Repeat for all other colors.
@@ -1119,7 +1119,7 @@ statistics dimension:
script: if trim_from_draw_statistic() then "" else average_opening_hand_statistic() script: if trim_from_draw_statistic() then "" else average_opening_hand_statistic()
statistics dimension: statistics dimension:
name: land drop hit % (Play) name: land drop hit % (On The Play)
position hint: 1100 position hint: 1100
icon: stats/land_drops.png icon: stats/land_drops.png
description: If the set is a deck, probability of hitting every single land drop up to the given turn, when on the play. Always excludes cards with the word 'commander' in their card notes, as well as tokens, emblems, dungeons, conspiracies, heroes, vanguards, schemes, planes and phenomenons. description: If the set is a deck, probability of hitting every single land drop up to the given turn, when on the play. Always excludes cards with the word 'commander' in their card notes, as well as tokens, emblems, dungeons, conspiracies, heroes, vanguards, schemes, planes and phenomenons.
@@ -1128,7 +1128,7 @@ statistics dimension:
script: land_drop_hit_percentage_statistic(start: 6) script: land_drop_hit_percentage_statistic(start: 6)
statistics dimension: statistics dimension:
name: land drop hit % (Draw) name: land drop hit % (On The Draw)
position hint: 1110 position hint: 1110
icon: stats/land_drops.png icon: stats/land_drops.png
description: If the set is a deck, probability of hitting every single land drop up to the given turn, when on the draw. Always excludes cards with the word 'commander' in their card notes, as well as tokens, emblems, dungeons, conspiracies, heroes, vanguards, schemes, planes and phenomenons. description: If the set is a deck, probability of hitting every single land drop up to the given turn, when on the draw. Always excludes cards with the word 'commander' in their card notes, as well as tokens, emblems, dungeons, conspiracies, heroes, vanguards, schemes, planes and phenomenons.

View File

@@ -133,7 +133,7 @@ statistics dimension:
script: if filter_from_statistic() == "Filtré" or trim_from_statistic() then "" else mana_value_statistic() script: if filter_from_statistic() == "Filtré" or trim_from_statistic() then "" else mana_value_statistic()
statistics dimension: statistics dimension:
name: Permanent/Non name: Permanent / Nonpermanent
position hint: 0200 position hint: 0200
icon: stats/type.png icon: stats/type.png
description: Counts the number of creatures, noncreature permanents, and nonpermanents. Counts each side/face separately. description: Counts the number of creatures, noncreature permanents, and nonpermanents. Counts each side/face separately.
@@ -220,7 +220,7 @@ statistics dimension:
script: if filter_from_statistic() == "Filtré" or trim_from_statistic() then "" else combined_subtype_statistic() script: if filter_from_statistic() == "Filtré" or trim_from_statistic() then "" else combined_subtype_statistic()
statistics dimension: statistics dimension:
name: Sous-Type (Noncréature) name: Sous-Type De Noncréature
position hint: 0260 position hint: 0260
icon: stats/noncreature_subtype.png icon: stats/noncreature_subtype.png
description: Subtypes of all types except creature/tribal/kindred. description: Subtypes of all types except creature/tribal/kindred.
@@ -690,7 +690,7 @@ statistics dimension:
statistics dimension: statistics dimension:
name: Production de Mana (Tout) name: Production de Mana (Tout)
position hint: 0500 position hint: 0520
icon: stats/land_production.png icon: stats/land_production.png
description: Counts how many cards can produce white mana. Repeat for all other colors. Then counts how many cards can produce mana of any color, and mana of a chosen color. description: Counts how many cards can produce white mana. Repeat for all other colors. Then counts how many cards can produce mana of any color, and mana of a chosen color.
split list: true split list: true
@@ -715,8 +715,8 @@ statistics dimension:
Choisie : rgb(112,38,128) Choisie : rgb(112,38,128)
statistics dimension: statistics dimension:
name: Prod. de Mana (Terrain) name: Production de Mana (Terrain)
position hint: 0510 position hint: 0500
icon: stats/land_production.png icon: stats/land_production.png
description: Counts how many lands can produce white mana. Repeat for all other colors. Then counts how many lands can produce mana of any color, and mana of a chosen color. If either side/face is a land, the card will be counted here. description: Counts how many lands can produce white mana. Repeat for all other colors. Then counts how many lands can produce mana of any color, and mana of a chosen color. If either side/face is a land, the card will be counted here.
split list: true split list: true
@@ -741,8 +741,8 @@ statistics dimension:
Choisie : rgb(112,38,128) Choisie : rgb(112,38,128)
statistics dimension: statistics dimension:
name: Prod. de Mana (Nonterrain) name: Production de Mana (Nonterrain)
position hint: 0520 position hint: 0510
icon: stats/land_production.png icon: stats/land_production.png
description: Counts how many non-land cards can produce white mana. Repeat for all other colors. Then counts how many non-land cards can produce mana of any color, and mana of a chosen color. description: Counts how many non-land cards can produce white mana. Repeat for all other colors. Then counts how many non-land cards can produce mana of any color, and mana of a chosen color.
split list: true split list: true
@@ -767,7 +767,7 @@ statistics dimension:
Choisie : rgb(112,38,128) Choisie : rgb(112,38,128)
statistics dimension: statistics dimension:
name: # de Pépins (Lancement) name: # de Pépins (Coût de Lancement)
position hint: 0600 position hint: 0600
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts the number of casting costs that contain one colored pip. Repeat for all other amounts. description: Counts the number of casting costs that contain one colored pip. Repeat for all other amounts.
@@ -795,7 +795,7 @@ statistics dimension:
8+ : rgb(197,24,214) 8+ : rgb(197,24,214)
statistics dimension: statistics dimension:
name: Pépins (Lancement) name: Pépins (Coût de Lancement)
position hint: 0630 position hint: 0630
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts how many cards have a single white pip in their casting cost. Repeat for two white pips. Then three, then four+, then for all other colors. Counts each side/face separately. description: Counts how many cards have a single white pip in their casting cost. Repeat for two white pips. Then three, then four+, then for all other colors. Counts each side/face separately.
@@ -829,7 +829,7 @@ statistics dimension:
GGGG+ : rgb(18,102,0) GGGG+ : rgb(18,102,0)
statistics dimension: statistics dimension:
name: Pépins Totaux (Lancement) name: Pépins Totaux (Coût de Lancement)
position hint: 0660 position hint: 0660
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts the total number of white pips in all the casting costs. Repeat for all other colors. description: Counts the total number of white pips in all the casting costs. Repeat for all other colors.
@@ -851,7 +851,7 @@ statistics dimension:
G : rgb(68,144,15) G : rgb(68,144,15)
statistics dimension: statistics dimension:
name: # De Pépins (Capacités) name: # De Pépins (Coût de Capacités)
position hint: 0610 position hint: 0610
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts the number of activated/triggered/keyworded ability costs that contain one colored pip. Repeat for all other amounts. description: Counts the number of activated/triggered/keyworded ability costs that contain one colored pip. Repeat for all other amounts.
@@ -879,7 +879,7 @@ statistics dimension:
8+ : rgb(197,24,214) 8+ : rgb(197,24,214)
statistics dimension: statistics dimension:
name: Pépins (Capacités) name: Pépins (Coût de Capacités)
position hint: 0640 position hint: 0640
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts how many activated/triggered/keyworded abilities have a single white pip in their cost. Repeat for two white pips. Then three, then four+, then for all other colors. Counts each ability on each side/face separately. description: Counts how many activated/triggered/keyworded abilities have a single white pip in their cost. Repeat for two white pips. Then three, then four+, then for all other colors. Counts each ability on each side/face separately.
@@ -913,7 +913,7 @@ statistics dimension:
GGGG+ : rgb(18,102,0) GGGG+ : rgb(18,102,0)
statistics dimension: statistics dimension:
name: Pépins Totaux (Capacités) name: Pépins Totaux (Coût de Capacités)
position hint: 0670 position hint: 0670
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts the total number of white pips in all the activated/triggered/keyworded ability costs. Repeat for all other colors. description: Counts the total number of white pips in all the activated/triggered/keyworded ability costs. Repeat for all other colors.
@@ -935,7 +935,7 @@ statistics dimension:
G : rgb(68,144,15) G : rgb(68,144,15)
statistics dimension: statistics dimension:
name: # de Pépins (Tout) name: # de Pépins (Tout les Coûts)
position hint: 0620 position hint: 0620
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts the number of costs that contain one colored pip. Repeat for all other amounts. description: Counts the number of costs that contain one colored pip. Repeat for all other amounts.
@@ -963,7 +963,7 @@ statistics dimension:
8+ : rgb(197,24,214) 8+ : rgb(197,24,214)
statistics dimension: statistics dimension:
name: Pépins (Tout) name: Pépins (Tout les Coûts)
position hint: 0650 position hint: 0650
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts how many costs contain a single white pip. Repeat for two white pips. Then three, then four+, then for all other colors. Counts each cost on each side/face separately. description: Counts how many costs contain a single white pip. Repeat for two white pips. Then three, then four+, then for all other colors. Counts each cost on each side/face separately.
@@ -997,7 +997,7 @@ statistics dimension:
GGGG+ : rgb(18,102,0) GGGG+ : rgb(18,102,0)
statistics dimension: statistics dimension:
name: Pépins Totaux (Tout) name: Pépins Totaux (Tout les Coûts)
position hint: 0680 position hint: 0680
icon: stats/color_pips.png icon: stats/color_pips.png
description: Counts the total number of white pips in all the costs. Repeat for all other colors. description: Counts the total number of white pips in all the costs. Repeat for all other colors.
@@ -1019,7 +1019,7 @@ statistics dimension:
G : rgb(68,144,15) G : rgb(68,144,15)
statistics dimension: statistics dimension:
name: # De Mots name: Nombre De Mots
position hint: 0700 position hint: 0700
icon: stats/text_length.png icon: stats/text_length.png
description: How many words are in the cards various rule texts. description: How many words are in the cards various rule texts.
@@ -1029,7 +1029,7 @@ statistics dimension:
script: if filter_from_statistic() == "Filtré" or trim_from_statistic() then "" else total_word_count_statistic() script: if filter_from_statistic() == "Filtré" or trim_from_statistic() then "" else total_word_count_statistic()
#statistics dimension: #statistics dimension:
# name: # De Lignes # name: Nombre De Lignes
# position hint: 1110 # position hint: 1110
# icon: stats/text_length.png # icon: stats/text_length.png
# description: How many lines are in the cards various rule texts. # description: How many lines are in the cards various rule texts.
@@ -1038,7 +1038,7 @@ statistics dimension:
# script: if filter_from_statistic() == "Filtré" or trim_from_statistic() then "" else total_line_count_statistic() # Not reliable atm. # script: if filter_from_statistic() == "Filtré" or trim_from_statistic() then "" else total_line_count_statistic() # Not reliable atm.
statistics dimension: statistics dimension:
name: # De Paragraphes name: Nombre De Paragraphes
position hint: 0710 position hint: 0710
icon: stats/text_length.png icon: stats/text_length.png
description: How many paragraphs are in the cards various rule texts. description: How many paragraphs are in the cards various rule texts.
@@ -1119,7 +1119,7 @@ statistics dimension:
script: if trim_from_draw_statistic() then "" else average_opening_hand_statistic() script: if trim_from_draw_statistic() then "" else average_opening_hand_statistic()
statistics dimension: statistics dimension:
name: % DAvoir Un Terrain (1er) name: % DAvoir Un Terrain (Jouant 1er)
position hint: 1100 position hint: 1100
icon: stats/land_drops.png icon: stats/land_drops.png
description: If the set is a deck, probability of hitting every single land drop up to the given turn, when on the play. Always excludes cards with the word 'commander' in their card notes, as well as tokens, emblems, dungeons, conspiracies, heroes, vanguards, schemes, planes and phenomenons. description: If the set is a deck, probability of hitting every single land drop up to the given turn, when on the play. Always excludes cards with the word 'commander' in their card notes, as well as tokens, emblems, dungeons, conspiracies, heroes, vanguards, schemes, planes and phenomenons.
@@ -1128,7 +1128,7 @@ statistics dimension:
script: land_drop_hit_percentage_statistic(start: 6) script: land_drop_hit_percentage_statistic(start: 6)
statistics dimension: statistics dimension:
name: % DAvoir Un Terrain (2ème) name: % DAvoir Un Terrain (Jouant 2ème)
position hint: 1110 position hint: 1110
icon: stats/land_drops.png icon: stats/land_drops.png
description: If the set is a deck, probability of hitting every single land drop up to the given turn, when on the draw. Always excludes cards with the word 'commander' in their card notes, as well as tokens, emblems, dungeons, conspiracies, heroes, vanguards, schemes, planes and phenomenons. description: If the set is a deck, probability of hitting every single land drop up to the given turn, when on the draw. Always excludes cards with the word 'commander' in their card notes, as well as tokens, emblems, dungeons, conspiracies, heroes, vanguards, schemes, planes and phenomenons.
@@ -1137,7 +1137,7 @@ statistics dimension:
script: land_drop_hit_percentage_statistic(start: 7) script: land_drop_hit_percentage_statistic(start: 7)
statistics dimension: statistics dimension:
name: # De Couleurs name: Nombre De Couleurs
position hint: 1500 position hint: 1500
icon: stats/color.png icon: stats/color.png
description: How many cards have one color, how many have two, three, etc... description: How many cards have one color, how many have two, three, etc...
@@ -1159,7 +1159,7 @@ statistics dimension:
5 : rgb(161,54,169) 5 : rgb(161,54,169)
statistics dimension: statistics dimension:
name: # De Couleurs (Identité) name: Nombre De Couleurs (Identité)
position hint: 1510 position hint: 1510
icon: stats/color.png icon: stats/color.png
description: How many cards have one color in their color identity, how many have two, three, etc... description: How many cards have one color in their color identity, how many have two, three, etc...

View File

@@ -1380,6 +1380,8 @@ filter_field_map_statistic :=
color_identity_count: {color_identity_count_statistic()}, color_identity_count: {color_identity_count_statistic()},
mana_production: {mana_production_list_statistic(check_type: "all")}, mana_production: {mana_production_list_statistic(check_type: "all")},
"permanent/non": {replace_en_spaces_statistic(remove_zero_width_spaces_statistic(permanent_statistic()))}, "permanent/non": {replace_en_spaces_statistic(remove_zero_width_spaces_statistic(permanent_statistic()))},
"permanent/nonpermanent": {replace_en_spaces_statistic(remove_zero_width_spaces_statistic(permanent_statistic()))},
"permanent / nonpermanent": {replace_en_spaces_statistic(remove_zero_width_spaces_statistic(permanent_statistic()))},
mana_value: {cmc(card.casting_cost)}, mana_value: {cmc(card.casting_cost)},
mana_value_2: {cmc(card.casting_cost_2)}, mana_value_2: {cmc(card.casting_cost_2)},
supertype: {keep_only_supertypes_statistic(card.super_type)}, supertype: {keep_only_supertypes_statistic(card.super_type)},

Binary file not shown.

Binary file not shown.

BIN
mse.com

Binary file not shown.

BIN
mse.exe

Binary file not shown.