Added shapeshift keyword (from Lorwyn); added Art rampage and Super haste keywords (from Unhinged) in the spirit of Denimwalk.
Resized future sight type symbol watermarks. Added land to default images. Added card_shape scripts to splits, tokens, and "shifted"s. Redid sort_index script to be more modular and better allow correct sorting of splits and shifts inside of their colors, and for tokens to be at end of list and still follow other sorting rules. Fixed some dpi problems with fpm-promo and fpm-token. git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@668 0fc631ac-6414-0410-93d0-97cfa31319b6
|
After Width: | Height: | Size: 17 KiB |
@@ -10,13 +10,14 @@ default_images := [
|
||||
b: "/magic-default-image.mse-include/black.jpg"
|
||||
r: "/magic-default-image.mse-include/red.jpg"
|
||||
g: "/magic-default-image.mse-include/green.jpg"
|
||||
l: "/magic-default-image.mse-include/land.jpg"
|
||||
]
|
||||
|
||||
default_image := {
|
||||
color_background(color_combination: {
|
||||
combine := "symmetric overlay"
|
||||
base :=
|
||||
if color_count == 0 then if land then default_images.a else default_images.c
|
||||
if color_count == 0 then if land then default_images.l else default_images.c
|
||||
else if color_count == 1 then default_images[colors]
|
||||
else if color_count == 2 then combine_blend(
|
||||
image1: default_images[colors.0],
|
||||
@@ -24,7 +25,7 @@ default_image := {
|
||||
)
|
||||
else default_images.m
|
||||
|
||||
if land then combine_blend(image1: default_images.c, image2: base)
|
||||
if land then if color_count == 0 then default_images.l else combine_blend(image1: default_images.l, image2: base)
|
||||
else if multi then combine_blend(image1: default_images.m, image2: base)
|
||||
else if artifact then combine_blend(image1: default_images.a, image2: base)
|
||||
else base
|
||||
|
||||
@@ -7,7 +7,7 @@ position hint: 404
|
||||
|
||||
card width: 375
|
||||
card height: 523
|
||||
card dpi: 300
|
||||
card dpi: 150
|
||||
|
||||
############################################################## Extra scripts
|
||||
|
||||
|
||||
@@ -46,6 +46,8 @@ init script:
|
||||
font_colors_white := { input != "w" }
|
||||
|
||||
paintbrush_color := { if font_white() then "white" else "black" }
|
||||
|
||||
card_shape := { "split" }
|
||||
|
||||
############################################################## Extra style
|
||||
styling field:
|
||||
|
||||
@@ -7,7 +7,7 @@ position hint: 407
|
||||
|
||||
card width: 375
|
||||
card height: 523
|
||||
card dpi: 300
|
||||
card dpi: 150
|
||||
|
||||
############################################################## Extra scripts
|
||||
|
||||
@@ -41,6 +41,8 @@ init script:
|
||||
font_colors_white := { input != "w" }
|
||||
|
||||
paintbrush_color := { if font_white() then "white" else "black" }
|
||||
|
||||
card_shape := { "token" }
|
||||
|
||||
############################################################## Extra style
|
||||
styling field:
|
||||
|
||||
@@ -10,6 +10,7 @@ card height: 523
|
||||
card dpi: 150
|
||||
|
||||
#By: Pichoro
|
||||
#Images by Spiderboy4, Buttock1234, and Artfreakwiu
|
||||
############################################################## Extra scripts
|
||||
|
||||
init script:
|
||||
@@ -76,6 +77,8 @@ init script:
|
||||
else if contains(card.card_color, match:"artifact") or contains(card.card_color, match:"multicolor") or contains(card.card_color, match:"white") then "black"
|
||||
else "white"
|
||||
}
|
||||
|
||||
card_shape := { "shifted" }
|
||||
|
||||
############################################################## Set info fields
|
||||
set info style:
|
||||
@@ -218,7 +221,7 @@ card style:
|
||||
top : 434
|
||||
width: { 300 - max(18,card_style.rarity.content_width) }
|
||||
height: 28
|
||||
alignment: top shrink-overflow
|
||||
alignment: middle shrink-overflow
|
||||
z index: 1
|
||||
padding top: 2
|
||||
font:
|
||||
|
||||
@@ -10,6 +10,7 @@ card height: 523
|
||||
card dpi: 150
|
||||
|
||||
#By: Pichoro
|
||||
#Images by Spiderboy4, Buttock1234, and Artfreakwiu
|
||||
############################################################## Extra scripts
|
||||
|
||||
init script:
|
||||
@@ -143,6 +144,8 @@ init script:
|
||||
not contains(card.type, match:"Creature") then "enchantment"
|
||||
else "multitype"
|
||||
}
|
||||
|
||||
card_shape := { "shifted" }
|
||||
|
||||
############################################################## Set info fields
|
||||
set info style:
|
||||
|
||||
@@ -38,6 +38,8 @@ init script:
|
||||
# Use guild mana symbols?
|
||||
guild_mana := { styling.use_guild_mana_symbols }
|
||||
|
||||
card_shape := { "split" }
|
||||
|
||||
############################################################## Set info fields
|
||||
set info style:
|
||||
symbol:
|
||||
|
||||
@@ -49,6 +49,8 @@ init script:
|
||||
name_filter := { input }
|
||||
|
||||
paintbrush_color := { if font_white() then "white" else "black" }
|
||||
|
||||
card_shape := { "token" }
|
||||
|
||||
############################################################## Set info fields
|
||||
set info style:
|
||||
|
||||
@@ -68,6 +68,8 @@ init script:
|
||||
)
|
||||
else base
|
||||
}
|
||||
|
||||
card_shape := { "split" }
|
||||
|
||||
############################################################## Set info fields
|
||||
set info style:
|
||||
|
||||
@@ -67,6 +67,8 @@ init script:
|
||||
)
|
||||
else base
|
||||
}
|
||||
|
||||
card_shape := { "token" }
|
||||
|
||||
############################################################## Set info fields
|
||||
set info style:
|
||||
|
||||
@@ -29,6 +29,8 @@ init script:
|
||||
# Use guild mana symbols?
|
||||
guild_mana := { styling.use_guild_mana_symbols }
|
||||
|
||||
card_shape := { "shifted" }
|
||||
|
||||
############################################################## Set info fields
|
||||
set info style:
|
||||
symbol:
|
||||
|
||||
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 9.6 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 22 KiB |
@@ -170,48 +170,60 @@ init script:
|
||||
############################################################## Card number
|
||||
|
||||
# Index for sorting, white cards are first, so white->A, blue->B, .. ,
|
||||
# multi->F, hybrid->G, splits -> H, arti->I, land->K, basic land->L, plains->M, island->N, swamp->O, mountain->P, forest->Q
|
||||
# multi->F, hybrid->G, diff color splits -> H, arti->I, land->K, basic land->L, plains->M, island->N, swamp->O, mountain->P, forest->Q
|
||||
is_multicolor := { chosen(choice: "multicolor") and input != "artifact, multicolor" }
|
||||
is_null_cost := { input == "" or input == "0" }
|
||||
sort_index := {
|
||||
card_color := card.card_color
|
||||
basic_land_sort := {
|
||||
if contains(card.name, match:"Plains") then "LB" # Plains
|
||||
else if contains(card.name, match:"Island") then "LC" # Islands
|
||||
else if contains(card.name, match:"Swamp") then "LD" # Swamps
|
||||
else if contains(card.name, match:"Mountain") then "LE" # Mountains
|
||||
else if contains(card.name, match:"Forest") then "LF" # Forests
|
||||
else "LA" # other basic lands
|
||||
}
|
||||
norm_or_token := {
|
||||
if contains(card.shape, match:"token") then "T"
|
||||
else "N"
|
||||
}
|
||||
color_of_card := {
|
||||
card_color := card.card_color
|
||||
casting_cost := card.casting_cost
|
||||
if card.casting_cost_2 != "" and
|
||||
card_color != card.card_color_2 then "H" # multicolor splits
|
||||
if card.shape == "split" and
|
||||
casting_cost != card.casting_cost_2 then "H" # Diff Color Splits
|
||||
else if chosen(choice: "land", card_color) then (
|
||||
# land
|
||||
if card.rarity != "basic land" then "K" # nonbasic land
|
||||
else (
|
||||
if contains(card.name, match:"Plains") then "M"
|
||||
else if contains(card.name, match:"Island") then "N"
|
||||
else if contains(card.name, match:"Swamp") then "O"
|
||||
else if contains(card.name, match:"Mountain") then "P"
|
||||
else if contains(card.name, match:"Forest") then "Q"
|
||||
else "L" # other basic land
|
||||
)
|
||||
if card.rarity != "basic land" then "K" # Nonbasic Land
|
||||
else basic_land_sort()
|
||||
) else if is_null_cost(casting_cost) then (
|
||||
# no casting cost; use frame
|
||||
if chosen(choice: "hybrid", card_color) then "G" # Hybrid frame
|
||||
else if is_multicolor(card_color) then "F" # Multicolor frame
|
||||
else if chosen(choice:"white", card_color) then "A" # White
|
||||
else if chosen(choice:"blue", card_color) then "B" # Blue
|
||||
else if chosen(choice:"black", card_color) then "C" # Black
|
||||
else if chosen(choice:"red", card_color) then "D" # Red
|
||||
else if chosen(choice:"green", card_color) then "E" # Green
|
||||
else "I" # Non of the above = Colorless/artifact
|
||||
if chosen(choice: "hybrid", card_color) then "G" # Hybrids
|
||||
else if is_multicolor(card_color) then "F" # Multicolor
|
||||
else if chosen(choice:"white", card_color) then "A" # White
|
||||
else if chosen(choice:"blue", card_color) then "B" # Blue
|
||||
else if chosen(choice:"black", card_color) then "C" # Black
|
||||
else if chosen(choice:"red", card_color) then "D" # Red
|
||||
else if chosen(choice:"green", card_color) then "E" # Green
|
||||
else "I" # Colorless / Artifact
|
||||
) else (
|
||||
# use the casting cost
|
||||
colors := sort_text(casting_cost, order: "<WUBRG>")
|
||||
if colors == "" then "I" # Colorless
|
||||
else if contains(casting_cost, match:"/") then "G" # Hybrid cost
|
||||
else if colors == "W" then "A" # White
|
||||
else if colors == "U" then "B" # Blue
|
||||
else if colors == "B" then "C" # Black
|
||||
else if colors == "R" then "D" # Red
|
||||
else if colors == "G" then "E" # Green
|
||||
else "F" # non of the above = multicolor
|
||||
if colors == "" then "I" # Colorless / Artifact
|
||||
else if colors == "W" then "A" # White
|
||||
else if colors == "U" then "B" # Blue
|
||||
else if colors == "B" then "C" # Black
|
||||
else if colors == "R" then "D" # Red
|
||||
else if colors == "G" then "E" # Green
|
||||
else "F" # Multicolor
|
||||
)
|
||||
}
|
||||
is_shifted := {
|
||||
if contains(card.shape, match:"shifted") then "1"
|
||||
else "0"
|
||||
}
|
||||
is_split := {
|
||||
if contains(card.shape, match:"split") then "1"
|
||||
else "0"
|
||||
}
|
||||
sort_index := { norm_or_token() + color_of_card() + is_shifted() + is_split()
|
||||
}
|
||||
|
||||
rarity_sort := {
|
||||
if set.sort_special_rarity == "with the rest" or card.rarity != "special" then "A" else "Z"
|
||||
@@ -606,6 +618,7 @@ card field:
|
||||
choice: token
|
||||
choice: flip
|
||||
choice: split
|
||||
choice: shifted
|
||||
script: card_shape() # determined by the style
|
||||
card field:
|
||||
type: text
|
||||
@@ -618,7 +631,7 @@ card field:
|
||||
card list column: 1
|
||||
card list width: 150
|
||||
description: The name of the card
|
||||
script: if card_shape() == "split" then card.name + "//" + card.name_2 else card.name
|
||||
script: if card_shape() == "split" then card.name + " // " + card.name_2 else card.name
|
||||
|
||||
############################# Background stuff
|
||||
card field:
|
||||
@@ -1737,6 +1750,16 @@ keyword:
|
||||
match: Sunburst
|
||||
mode: expert
|
||||
reminder: This comes into play with a {if has_pt() then "+1/+1" else "charge"} counter on it for each color of mana used to pay its cost.
|
||||
keyword:
|
||||
keyword: Art rampage
|
||||
match: Art rampage <atom-param>number</atom-param>
|
||||
mode: expert
|
||||
reminder: Whenever this becomes blocked by a creature, it gets +{param1}/+{param1} for each creature in the blocker's art beyond the first.
|
||||
keyword:
|
||||
keyword: Super haste
|
||||
match: Super haste
|
||||
mode: expert
|
||||
reminder: This may attack the turn before you play it. (You may put this card into play from your hand, tapped and attacking, during your declare attackers step. If you do, you lose the game at the end of your next turn unless you pay this card's mana cost during that turn.)
|
||||
keyword:
|
||||
keyword: Gotcha
|
||||
match: Gotcha
|
||||
@@ -1966,3 +1989,8 @@ keyword:
|
||||
match: Clash
|
||||
mode: action
|
||||
reminder: Each clashing player reveals the top card of his or her library then puts that card on the top or bottom. A player wins if his or her card had a higher converted mana cost.
|
||||
keyword:
|
||||
keyword: Shapeshift
|
||||
match: Shapeshift
|
||||
mode: expert
|
||||
reminder: This creature is every creature type even if this card isn't in play.
|
||||
|
||||
@@ -722,6 +722,16 @@ keyword:
|
||||
match: sunburst
|
||||
mode: expert
|
||||
reminder: It comes into play with a +1/+1 counter on it for each color of mana used to pay its cost. If it isn't a creature, use charge counters instead.
|
||||
keyword:
|
||||
keyword: Art rampage
|
||||
match: art rampage <atom-param>number</atom-param>
|
||||
mode: expert
|
||||
reminder: Whenever it blocked by a creature, it gets +{param1}/+{param1} for each creature in the blocker's art beyond the first.
|
||||
keyword:
|
||||
keyword: Super haste
|
||||
match: Super haste
|
||||
mode: expert
|
||||
reminder: It may attack the turn before you play it. (You may put it into play from your hand, tapped and attacking, during your declare attackers step. If you do, you lose the game at the end of your next turn unless you pay its mana cost during that turn.)
|
||||
keyword:
|
||||
keyword: Gotcha
|
||||
match: Gotcha
|
||||
@@ -934,14 +944,19 @@ keyword:
|
||||
keyword: Evoke
|
||||
match: evoke <atom-param>cost</atom-param>
|
||||
mode: expert
|
||||
reminder: You may play this spell for its evoke cost. If you do, it's sacrificed when it comes into play.
|
||||
reminder: You may it for its evoke cost. If you do, it's sacrificed when it comes into play.
|
||||
keyword:
|
||||
keyword: Champion
|
||||
match: champion <atom-param>a</atom-param> <atom-param>name</atom-param>
|
||||
mode: expert
|
||||
reminder: When this comes into play, sacrifice it unless you remove another {param2} you control from the game. When this leaves play, that card returns to play.
|
||||
reminder: When it comes into play, sacrifice it unless you remove another {param2} you control from the game. When it leaves play, that card returns to play.
|
||||
keyword:
|
||||
keyword: Clash
|
||||
match: clash
|
||||
mode: expert
|
||||
reminder: Each clashing player reveals the top card of his or her library then puts that card on the top or bottom. A player wins if his or her card had a higher converted mana cost.
|
||||
keyword:
|
||||
keyword: Shapeshift
|
||||
match: shapeshift
|
||||
mode: expert
|
||||
reminder: It is every creature type even if it isn't in play.
|
||||
|
||||