Commit ea15424e authored by twanvl's avatar twanvl

Templates for magic, vanguard and vs-system

parent 203282d0
# Scripts for blending images
# Included by a style file in its init script
# Credits:
# 3/4/5 color blends by Guinea Pig
# vertical blends by Wolfwood
########################################################################
# Filenames and other defaults
########################################################################
mask_hybrid_with_land := { false }
land_template := { input + "lcard.jpg" }
card_template := { input + "card.jpg" }
pt_template := { input + "pt.jpg" }
pt2_template := { input + "pt2.jpg" }
########################################################################
# Hybrid blends
########################################################################
# Make parts of the input grey (land color)
card_hybrid_nt := {
if mask_hybrid_with_land() then
masked_blend(
mask: "hybrid_blend_nt.png",
dark: land_template(""),
light: input,
)
else input
}
# Card hybrid without land blending
card_hybrid := {
linear_blend(
image1: card_template(input[0])
image2: card_template(input[1])
x1: 0.4, y1: 0
x2: 0.6, y2: 0
)
}
card_hybrid_2 := card_hybrid + card_hybrid_nt
# vertical 2 color hybrid
card_hybrid_2v := {
card_hybrid_nt(
linear_blend(
image1: card_template(input[0])
image2: card_template(input[1])
x1: 0, y1: 0.4
x2: 0, y2: 0.62
)
)
}
# 'star' 3 color hybrid
card_hybrid_3 := {
card_hybrid_nt(
linear_blend(
image1: card_hybrid(input[0] + input[1]),
image2: card_template(input[2]),
x1: 0, y1: 0.55
x2: 0, y2: 0.77
)
)
}
# 'star' 4 color hybrid
card_hybrid_4 := {
card_hybrid_nt(
linear_blend(
image1: card_hybrid(input[0] + input[1])
image2: card_hybrid(input[2] + input[3])
x1: 0, y1: 0.4
x2: 0, y2: 0.62
)
)
}
# 'star' 5 color hybrid
card_hybrid_5 := {
card_hybrid_nt(
linear_blend(
image1: linear_blend(
image1: card_hybrid("gb"),
image2: card_hybrid("wu"),
x1: 0, y1: 0.19
x2: 0, y2: 0.35
),
image2: card_template("r"),
x1: 0, y1: 0.677
x2: 0, y2: 0.837
)
)
}
# horizontal 3 color hybrid
card_hybrid_3h := {
card_hybrid_nt(
linear_blend(
image1: card_template(input[0])
x1: 0.22, y1: 0
x2: 0.4, y2: 0
image2: linear_blend(
image1: card_template(input[1])
x1: 0.6, y1: 0
x2: 0.78, y2: 0
image2: card_template(input[2])
))
)
}
# horizontal 4 color hybrid
card_hybrid_4h := {
card_hybrid_nt(
linear_blend(
# blend = 0.16
image1: card_template(input[0])
x1: 0.15, y1: 0
x2: 0.31, y2: 0
image2: linear_blend(
image1: card_template(input[1])
x1: 0.42, y1: 0
x2: 0.58, y2: 0
image2: linear_blend(
image1: card_template(input[2])
x1: 0.69, y1: 0
x2: 0.85, y2: 0
image2: card_template(input[3])
)))
)
}
# horizontal 5 color hybrid
card_hybrid_5h := {
card_hybrid_nt(
linear_blend(
image1: card_template("w")
x1: 2.0 / 15, y1: 0
x2: 4.0 / 15, y2: 0
image2: linear_blend(
image1: card_template("u")
x1: 5.0 / 15, y1: 0
x2: 7.0 / 15, y2: 0
image2: linear_blend(
image1: card_template("b")
x1: 8.0 / 15, y1: 0
x2: 10.0 / 15, y2: 0
image2: linear_blend(
image1: card_template("r")
x1: 11.0 / 15, y1: 0
x2: 13.0 / 15, y2: 0
image2: card_template("g")
))))
)
}
########################################################################
# Multicolor blends
########################################################################
# Make a hybrid blend into a multicolor blend
multi_hybrid := {
masked_blend(
mask: "multicolor_dual_blend.png",
dark: "mcard.jpg",
light: input,
)
}
########################################################################
# Land blends
########################################################################
land_hybrid_2 := {
card_hybrid_nt(
linear_blend(
image1: land_template(input[0])
image2: land_template(input[1])
x1: 0.4, y1: 0
x2: 0.6, y2: 0
)
)
}
########################################################################
# Power/thoughness boxes
########################################################################
# Make parts of the input grey (hpt.jpg color)
# For p/t box
card_hybrid_pt := {
# Make the p/t box grey based on set.grey_hybrid_name
if mask_hybrid_with_land()
then land_hybrid_pt()
else pt_template()
}
# Mask part of the input p/t box with the "hpt.jpg" file
land_hybrid_pt := {
masked_blend(
mask: "hybrid_blend_pt.png",
dark: "hpt.jpg",
light: pt_template(),
)
}
# Multicolor blend for pt box
multi_hybrid_pt := {
masked_blend(
mask: "multicolor_dual_blend_pt.png",
dark: pt_template("m"),
light: pt_template(),
)
}
# 3 Color Horizontal Blending (based on templates by BunnieRein)
card_hybrid_3h_pt := {
linear_blend(
image1: pt_template(input[0])
image2: pt_template(input[1])
x1: -0.2, y1: 0
x2: 0.1, y2: 0
)
}
# 4 Color Horizontal Blending
card_hybrid_4h_pt := {
linear_blend(
image1: pt_template(input[0])
image2: pt_template(input[1])
x1: -0.1, y1: 0
x2: 0.6, y2: 0
)
}
########################################################################
# Power/thoughness boxes #2
########################################################################
# Make parts of the input grey (hpt.jpg color)
# For p/t box
card_hybrid_pt2 := {
# Make the p/t box grey based on set.grey_hybrid_name
if mask_hybrid_with_land()
then land_hybrid_pt2()
else pt2_template()
}
# Mask part of the input p/t box with the "hpt.jpg" file
land_hybrid_pt2 := {
masked_blend(
mask: "hybrid_blend_pt2.png",
dark: "hpt.jpg",
light: pt2_template(),
)
}
# Multicolor blend for pt box
multi_hybrid_pt2 := {
masked_blend(
mask: "multicolor_dual_blend_pt2.png",
dark: "mpt2.jpg",
light: pt2_template(),
)
}
# Card backgrounds, most are generated using the blend-scripts
# Requires
# include file: magic-blends.mse-include/blend-scripts
# In the init script of the style
choice images:
white : script: card_template("w")
blue : script: card_template("u")
black : script: card_template("b")
red : script: card_template("r")
green : script: card_template("g")
colorless : script: card_template("a")
multicolor : script: card_template("m")
multicolor 2 color white / blue : script: multi_hybrid(card_hybrid_2("wu"))
multicolor 2 color blue / black : script: multi_hybrid(card_hybrid_2("ub"))
multicolor 2 color black / red : script: multi_hybrid(card_hybrid_2("br"))
multicolor 2 color red / green : script: multi_hybrid(card_hybrid_2("rg"))
multicolor 2 color green / white : script: multi_hybrid(card_hybrid_2("gw"))
multicolor 2 color white / black : script: multi_hybrid(card_hybrid_2("wb"))
multicolor 2 color blue / red : script: multi_hybrid(card_hybrid_2("ur"))
multicolor 2 color black / green : script: multi_hybrid(card_hybrid_2("bg"))
multicolor 2 color red / white : script: multi_hybrid(card_hybrid_2("rw"))
multicolor 2 color green / blue : script: multi_hybrid(card_hybrid_2("gu"))
multicolor 3 color white / blue / black : script: multi_hybrid(card_hybrid_3("wub"))
multicolor 3 color blue / black / red : script: multi_hybrid(card_hybrid_3("ubr"))
multicolor 3 color black / red / green : script: multi_hybrid(card_hybrid_3("brg"))
multicolor 3 color red / green / white : script: multi_hybrid(card_hybrid_3("rgw"))
multicolor 3 color green / white / blue : script: multi_hybrid(card_hybrid_3("gwu"))
multicolor 3 color white / black / red : script: multi_hybrid(card_hybrid_3("wbr"))
multicolor 3 color blue / red / green : script: multi_hybrid(card_hybrid_3("urg"))
multicolor 3 color black / green / white : script: multi_hybrid(card_hybrid_3("bgw"))
multicolor 3 color red / white / blue : script: multi_hybrid(card_hybrid_3("rwu"))
multicolor 3 color green / blue / black : script: multi_hybrid(card_hybrid_3("gub"))
multicolor 4 color w/u/b/r : script: multi_hybrid(card_hybrid_4("wubr"))
multicolor 4 color u/b/r/g : script: multi_hybrid(card_hybrid_4("ubrg"))
multicolor 4 color b/r/g/w : script: multi_hybrid(card_hybrid_4("brgw"))
multicolor 4 color r/g/w/u : script: multi_hybrid(card_hybrid_4("rgwu"))
multicolor 4 color g/w/u/b : script: multi_hybrid(card_hybrid_4("gwub"))
multicolor 5 color w/u/b/r/g : script: multi_hybrid(card_hybrid_5())
multicolor 5 color w/u/b/r/g (horizontal) : script: multi_hybrid(card_hybrid_5h())
land : script: land_template("")
land 1 color white : script: land_template("w")
land 1 color blue : script: land_template("u")
land 1 color black : script: land_template("b")
land 1 color red : script: land_template("r")
land 1 color green : script: land_template("g")
land 1 color multicolor : script: land_template("m")
land 2 color white / blue : script: land_hybrid_2("wu")
land 2 color blue / black : script: land_hybrid_2("ub")
land 2 color black / red : script: land_hybrid_2("br")
land 2 color red / green : script: land_hybrid_2("rg")
land 2 color green / white : script: land_hybrid_2("gw")
land 2 color white / black : script: land_hybrid_2("wb")
land 2 color blue / red : script: land_hybrid_2("ur")
land 2 color black / green : script: land_hybrid_2("bg")
land 2 color red / white : script: land_hybrid_2("rw")
land 2 color green / blue : script: land_hybrid_2("gu")
hybrid 2 color white / blue : script: card_hybrid_2("wu")
hybrid 2 color blue / black : script: card_hybrid_2("ub")
hybrid 2 color black / red : script: card_hybrid_2("br")
hybrid 2 color red / green : script: card_hybrid_2("rg")
hybrid 2 color green / white : script: card_hybrid_2("gw")
hybrid 2 color white / black : script: card_hybrid_2("wb")
hybrid 2 color blue / red : script: card_hybrid_2("ur")
hybrid 2 color black / green : script: card_hybrid_2("bg")
hybrid 2 color red / white : script: card_hybrid_2("rw")
hybrid 2 color green / blue : script: card_hybrid_2("gu")
hybrid 2 color colorless / white : script: card_hybrid_2("aw")
hybrid 2 color colorless / blue : script: card_hybrid_2("au")
hybrid 2 color colorless / black : script: card_hybrid_2("ab")
hybrid 2 color colorless / red : script: card_hybrid_2("ar")
hybrid 2 color colorless / green : script: card_hybrid_2("ag")
hybrid 3 color white / blue / black : script: card_hybrid_3("wub")
hybrid 3 color blue / black / red : script: card_hybrid_3("ubr")
hybrid 3 color black / red / green : script: card_hybrid_3("brg")
hybrid 3 color red / green / white : script: card_hybrid_3("rgw")
hybrid 3 color green / white / blue : script: card_hybrid_3("gwu")
hybrid 3 color white / black / red : script: card_hybrid_3("wbr")
hybrid 3 color blue / red / green : script: card_hybrid_3("urg")
hybrid 3 color black / green / white : script: card_hybrid_3("bgw")
hybrid 3 color red / white / blue : script: card_hybrid_3("rwu")
hybrid 3 color green / blue / black : script: card_hybrid_3("gub")
hybrid 3 color horizontal white / blue / black : script: card_hybrid_3h("wub")
hybrid 3 color horizontal blue / black / red : script: card_hybrid_3h("ubr")
hybrid 3 color horizontal black / red / green : script: card_hybrid_3h("brg")
hybrid 3 color horizontal red / green / white : script: card_hybrid_3h("rgw")
hybrid 3 color horizontal green / white / blue : script: card_hybrid_3h("gwu")
hybrid 3 color horizontal white / black / red : script: card_hybrid_3h("wbr")
hybrid 3 color horizontal blue / red / green : script: card_hybrid_3h("urg")
hybrid 3 color horizontal black / green / white : script: card_hybrid_3h("bgw")
hybrid 3 color horizontal red / white / blue : script: card_hybrid_3h("rwu")
hybrid 3 color horizontal green / blue / black : script: card_hybrid_3h("gub")
hybrid 4 color w/u/b/r : script: card_hybrid_4("wubr")
hybrid 4 color u/b/r/g : script: card_hybrid_4("ubrg")
hybrid 4 color b/r/g/w : script: card_hybrid_4("brgw")
hybrid 4 color r/g/w/u : script: card_hybrid_4("rgwu")
hybrid 4 color g/w/u/b : script: card_hybrid_4("gwub")
hybrid 4 color horizontal w/u/b/r : script: card_hybrid_4h("wubr")
hybrid 4 color horizontal u/b/r/g : script: card_hybrid_4h("ubrg")
hybrid 4 color horizontal b/r/g/w : script: card_hybrid_4h("brgw")
hybrid 4 color horizontal r/g/w/u : script: card_hybrid_4h("rgwu")
hybrid 4 color horizontal g/w/u/b : script: card_hybrid_4h("gwub")
hybrid 5 color w/u/b/r/g : script: card_hybrid_5()
hybrid 5 color w/u/b/r/g (horizontal) : script: card_hybrid_5h()
hybrid vertical white / blue : script: card_hybrid_2v("wu")
hybrid vertical white / black : script: card_hybrid_2v("wb")
hybrid vertical white / red : script: card_hybrid_2v("wr")
hybrid vertical white / green : script: card_hybrid_2v("wg")
hybrid vertical blue / white : script: card_hybrid_2v("uw")
hybrid vertical blue / black : script: card_hybrid_2v("ub")
hybrid vertical blue / red : script: card_hybrid_2v("ur")
hybrid vertical blue / green : script: card_hybrid_2v("ug")
hybrid vertical black / white : script: card_hybrid_2v("bw")
hybrid vertical black / blue : script: card_hybrid_2v("bu")
hybrid vertical black / red : script: card_hybrid_2v("br")
hybrid vertical black / green : script: card_hybrid_2v("bg")
hybrid vertical red / white : script: card_hybrid_2v("rw")
hybrid vertical red / blue : script: card_hybrid_2v("ru")
hybrid vertical red / black : script: card_hybrid_2v("rb")
hybrid vertical red / green : script: card_hybrid_2v("rg")
hybrid vertical green / white : script: card_hybrid_2v("gw")
hybrid vertical green / blue : script: card_hybrid_2v("gu")
hybrid vertical green / red : script: card_hybrid_2v("gr")
hybrid vertical green / black : script: card_hybrid_2v("gb")
hybrid vertical colorless / white : script: card_hybrid_2v("aw")
hybrid vertical colorless / blue : script: card_hybrid_2v("au")
hybrid vertical colorless / black : script: card_hybrid_2v("ab")
hybrid vertical colorless / red : script: card_hybrid_2v("ar")
hybrid vertical colorless / green : script: card_hybrid_2v("ag")
hybrid vertical white / colorless : script: card_hybrid_2v("wa")
hybrid vertical blue / colorless : script: card_hybrid_2v("ua")
hybrid vertical black / colorless : script: card_hybrid_2v("ba")
hybrid vertical red / colorless : script: card_hybrid_2v("ra")
hybrid vertical green / colorless : script: card_hybrid_2v("ga")
# Also define colors for card list
card list colors: true
choice colors:
white : rgb(130,130,110)
blue : rgb(0,64,168)
black : rgb(0,0,0)
red : rgb(168,0,0)
green : rgb(0,168,0)
colorless : rgb(72,90,100)
multicolor : rgb(120,120,0)
land : rgb(84,84,60)
# Quite a lot of card colors
# Included by a game file
choice: white
choice: blue
choice: black
choice: red
choice: green
choice: colorless
choice:
name: multicolor
group choice: normal
choice:
name: 2 color
choice: white / blue
choice: blue / black
choice: black / red
choice: red / green
choice: green / white
choice: white / black
choice: blue / red
choice: black / green
choice: red / white
choice: green / blue
choice:
name: 3 color
choice: white / blue / black
choice: blue / black / red
choice: black / red / green
choice: red / green / white
choice: green / white / blue
choice: white / black / red
choice: blue / red / green
choice: black / green / white
choice: red / white / blue
choice: green / blue / black
choice:
name: 4 color
choice: w/u/b/r
choice: u/b/r/g
choice: b/r/g/w
choice: r/g/w/u
choice: g/w/u/b
choice:
name: 5 color
choice: w/u/b/r/g
choice: w/u/b/r/g (horizontal)
choice:
name: land
group choice: colorless
choice:
name: 1 color
choice: white
choice: blue
choice: black
choice: red
choice: green
choice: multicolor
choice:
name: 2 color
choice: white / blue
choice: blue / black
choice: black / red
choice: red / green
choice: green / white
choice: white / black
choice: blue / red
choice: black / green
choice: red / white
choice: green / blue
choice:
name: hybrid
choice:
name: 2 color
choice: white / blue
choice: blue / black
choice: black / red
choice: red / green
choice: green / white
choice: white / black
choice: blue / red
choice: black / green
choice: red / white
choice: green / blue
choice: colorless / white
choice: colorless / blue
choice: colorless / black
choice: colorless / red
choice: colorless / green
choice:
name: 3 color
choice: white / blue / black
choice: blue / black / red
choice: black / red / green
choice: red / green / white
choice: green / white / blue
choice: white / black / red
choice: blue / red / green
choice: black / green / white
choice: red / white / blue
choice: green / blue / black
choice:
name: horizontal
choice: white / blue / black
choice: blue / black / red
choice: black / red / green
choice: red / green / white
choice: green / white / blue
choice: white / black / red
choice: blue / red / green
choice: black / green / white
choice: red / white / blue
choice: green / blue / black
choice:
name: 4 color
choice: w/u/b/r
choice: u/b/r/g
choice: b/r/g/w
choice: r/g/w/u
choice: g/w/u/b
choice:
name: horizontal
choice: w/u/b/r
choice: u/b/r/g
choice: b/r/g/w
choice: r/g/w/u
choice: g/w/u/b
choice:
name: 5 color
choice: w/u/b/r/g
choice: w/u/b/r/g (horizontal)
choice:
# Vertical hybrids, for flip cards
# By: Wolfwood
name: vertical
choice: white / blue
choice: white / black
choice: white / red
choice: white / green
choice: white / colorless
choice: blue / white
choice: blue / black
choice: blue / red
choice: blue / green
choice: blue / colorless
choice: black / white
choice: black / blue
choice: black / red
choice: black / green
choice: black / colorless
choice: red / white
choice: red / blue
choice: red / black
choice: red / green
choice: red / colorless
choice: green / white
choice: green / blue
choice: green / black
choice: green / red
choice: green / colorless
choice: colorless / white
choice: colorless / blue
choice: colorless / black
choice: colorless / red
choice: colorless / green
\ No newline at end of file
# Card power/thoughness, most are generated using the blend-scripts
# Requires
# include file: magic-blends.mse-include/blend-scripts
# In the init script of the style
choice images:
white : script: pt_template("w")
blue : script: pt_template("u")
black : script: pt_template("b")
red : script: pt_template("r")
green : script: pt_template("g")
colorless : script: pt_template("a")
multicolor : script: pt_template("m")
multicolor 2 color white / blue : script: multi_hybrid_pt("u")
multicolor 2 color blue / black : script: multi_hybrid_pt("b")
multicolor 2 color black / red : script: multi_hybrid_pt("r")
multicolor 2 color red / green : script: multi_hybrid_pt("g")
multicolor 2 color green / white : script: multi_hybrid_pt("w")
multicolor 2 color white / black : script: multi_hybrid_pt("b")
multicolor 2 color blue / red : script: multi_hybrid_pt("r")
multicolor 2 color black / green : script: multi_hybrid_pt("g")
multicolor 2 color red / white : script: multi_hybrid_pt("w")
multicolor 2 color green / blue : script: multi_hybrid_pt("u")
multicolor 3 color white / blue / black : script: multi_hybrid_pt("b")
multicolor 3 color blue / black / red : script: multi_hybrid_pt("r")
multicolor 3 color black / red / green : script: multi_hybrid_pt("g")
multicolor 3 color red / green / white : script: multi_hybrid_pt("w")
multicolor 3 color green / white / blue : script: multi_hybrid_pt("u")
multicolor 3 color white / black / red : script: multi_hybrid_pt("r")
multicolor 3 color blue / red / green : script: multi_hybrid_pt("g")
multicolor 3 color black / green / white : script: multi_hybrid_pt("w")
multicolor 3 color red / white / blue : script: multi_hybrid_pt("u")
multicolor 3 color green / blue / black : script: multi_hybrid_pt("b")
multicolor 4 color w/u/b/r : script: multi_hybrid_pt("r")
multicolor 4 color u/b/r/g : script: multi_hybrid_pt("g")
multicolor 4 color b/r/g/w : script: multi_hybrid_pt("w")
multicolor 4 color r/g/w/u : script: multi_hybrid_pt("u")
multicolor 4 color g/w/u/b : script: multi_hybrid_pt("b")
multicolor 5 color w/u/b/r/g : script: multi_hybrid_pt("r")
multicolor 5 color w/u/b/r/g (horizontal) : script: multi_hybrid_pt("g")
land : script: pt_template("l")
land 1 color white : script: pt_template("wl")
land 1 color blue : script: pt_template("ul")
land 1 color black : script: pt_template("bl")
land 1 color red : script: pt_template("rl")
land 1 color green : script: pt_template("gl")
land 1 color multicolor : script: pt_template("ml")
land 2 color white / blue : script: card_hybrid_pt("ul")
land 2 color blue / black : script: card_hybrid_pt("bl")
land 2 color black / red : script: card_hybrid_pt("rl")
land 2 color red / green : script: card_hybrid_pt("gl")
land 2 color green / white : script: card_hybrid_pt("wl")
land 2 color white / black : script: card_hybrid_pt("bl")
land 2 color blue / red : script: card_hybrid_pt("rl")
land 2 color black / green : script: card_hybrid_pt("gl")
land 2 color red / white : script: card_hybrid_pt("wl")
land 2 color green / blue : script: card_hybrid_pt("ul")
hybrid 2 color white / blue : script: card_hybrid_pt("u")
hybrid 2 color blue / black : script: card_hybrid_pt("b")
hybrid 2 color black / red : script: card_hybrid_pt("r")
hybrid 2 color red / green : script: card_hybrid_pt("g")
hybrid 2 color green / white : script: card_hybrid_pt("w")
hybrid 2 color white / black : script: card_hybrid_pt("b")
hybrid 2 color blue / red : script: card_hybrid_pt("r")
hybrid 2 color black / green : script: card_hybrid_pt("g")
hybrid 2 color red / white : script: card_hybrid_pt("w")
hybrid 2 color green / blue : script: card_hybrid_pt("u")
hybrid 2 color colorless / white : script: card_hybrid_pt("w")
hybrid 2 color colorless / blue : script: card_hybrid_pt("u")
hybrid 2 color colorless / black : script: card_hybrid_pt("b")
hybrid 2 color colorless / red : script: card_hybrid_pt("r")
hybrid 2 color colorless / green : script: card_hybrid_pt("g")
hybrid 3 color white / blue / black : script: card_hybrid_pt("b")
hybrid 3 color blue / black / red : script: card_hybrid_pt("r")
hybrid 3 color black / red / green : script: card_hybrid_pt("g")
hybrid 3 color red / green / white : script: card_hybrid_pt("w")
hybrid 3 color green / white / blue : script: card_hybrid_pt("u")
hybrid 3 color white / black / red : script: card_hybrid_pt("r")
hybrid 3 color blue / red / green : script: card_hybrid_pt("g")
hybrid 3 color black / green / white : script: card_hybrid_pt("w")
hybrid 3 color red / white / blue : script: card_hybrid_pt("u")
hybrid 3 color green / blue / black : script: card_hybrid_pt("b")
hybrid 3 color horizontal white / blue / black : script: card_hybrid_3h_pt("ub")
hybrid 3 color horizontal blue / black / red : script: card_hybrid_3h_pt("br")
hybrid 3 color horizontal black / red / green : script: card_hybrid_3h_pt("rg")
hybrid 3 color horizontal red / green / white : script: card_hybrid_3h_pt("gw")
hybrid 3 color horizontal green / white / blue : script: card_hybrid_3h_pt("wu")
hybrid 3 color horizontal white / black / red : script: card_hybrid_3h_pt("br")
hybrid 3 color horizontal blue / red / green : script: card_hybrid_3h_pt("rg")
hybrid 3 color horizontal black / green / white : script: card_hybrid_3h_pt("gw")
hybrid 3 color horizontal red / white / blue : script: card_hybrid_3h_pt("wu")
hybrid 3 color horizontal green / blue / black : script: card_hybrid_3h_pt("ub")
hybrid 4 color w/u/b/r : script: card_hybrid_pt("r")
hybrid 4 color u/b/r/g : script: card_hybrid_pt("g")
hybrid 4 color b/r/g/w : script: card_hybrid_pt("w")
hybrid 4 color r/g/w/u : script: card_hybrid_pt("u")
hybrid 4 color g/w/u/b : script: card_hybrid_pt("b")
hybrid 4 color horizontal w/u/b/r : script: card_hybrid_4h_pt("br")
hybrid 4 color horizontal u/b/r/g : script: card_hybrid_4h_pt("rg")
hybrid 4 color horizontal b/r/g/w : script: card_hybrid_4h_pt("gw")
hybrid 4 color horizontal r/g/w/u : script: card_hybrid_4h_pt("wu")
hybrid 4 color horizontal g/w/u/b : script: card_hybrid_4h_pt("ub")
hybrid 5 color w/u/b/r/g : script: card_hybrid_pt("r")
hybrid 5 color w/u/b/r/g (horizontal) : script: card_hybrid_pt("5b")
hybrid vertical white / blue : script: card_hybrid_pt("u")
hybrid vertical white / black : script: card_hybrid_pt("b")
hybrid vertical white / red : script: card_hybrid_pt("r")
hybrid vertical white / green : script: card_hybrid_pt("g")
hybrid vertical blue / white : script: card_hybrid_pt("w")
hybrid vertical blue / black : script: card_hybrid_pt("b")
hybrid vertical blue / red : script: card_hybrid_pt("r")
hybrid vertical blue / green : script: card_hybrid_pt("g")
hybrid vertical black / white : script: card_hybrid_pt("w")
hybrid vertical black / blue : script: card_hybrid_pt("u")
hybrid vertical black / red : script: card_hybrid_pt("r")
hybrid vertical black / green : script: card_hybrid_pt("g")
hybrid vertical red / white : script: card_hybrid_pt("w")
hybrid vertical red / blue : script: card_hybrid_pt("u")
hybrid vertical red / black : script: card_hybrid_pt("b")
hybrid vertical red / green : script: card_hybrid_pt("g")
hybrid vertical green / white : script: card_hybrid_pt("w")
hybrid vertical green / blue : script: card_hybrid_pt("u")
hybrid vertical green / red : script: card_hybrid_pt("b")
hybrid vertical green / black : script: card_hybrid_pt("r")
hybrid vertical colorless / white : script: card_hybrid_pt("w")
hybrid vertical colorless / blue : script: card_hybrid_pt("u")
hybrid vertical colorless / black : script: card_hybrid_pt("b")
hybrid vertical colorless / red : script: card_hybrid_pt("r")
hybrid vertical colorless / green : script: card_hybrid_pt("g")
hybrid vertical white / colorless : script: card_hybrid_pt("a")
hybrid vertical blue / colorless : script: card_hybrid_pt("a")
hybrid vertical black / colorless : script: card_hybrid_pt("a")
hybrid vertical red / colorless : script: card_hybrid_pt("a")
hybrid vertical green / colorless : script: card_hybrid_pt("a")
# Card power/thoughness, most are generated using the blend-scripts
# Requires
# include file: magic-blends.mse-include/blend-scripts
# In the init script of the style
choice images:
white : script: pt_template("w")
blue : script: pt_template("u")
black : script: pt_template("b")
red : script: pt_template("r")
green : script: pt_template("g")
colorless : script: pt_template("a")
multicolor : script: pt_template("m")
multicolor 2 color white / blue : script: multi_hybrid_pt("u")
multicolor 2 color blue / black : script: multi_hybrid_pt("b")
multicolor 2 color black / red : script: multi_hybrid_pt("r")
multicolor 2 color red / green : script: multi_hybrid_pt("g")
multicolor 2 color green / white : script: multi_hybrid_pt("w")
multicolor 2 color white / black : script: multi_hybrid_pt("b")
multicolor 2 color blue / red : script: multi_hybrid_pt("r")
multicolor 2 color black / green : script: multi_hybrid_pt("g")
multicolor 2 color red / white : script: multi_hybrid_pt("w")
multicolor 2 color green / blue : script: multi_hybrid_pt("u")
multicolor 3 color white / blue / black : script: multi_hybrid_pt("b")
multicolor 3 color blue / black / red : script: multi_hybrid_pt("r")
multicolor 3 color black / red / green : script: multi_hybrid_pt("g")
multicolor 3 color red / green / white : script: multi_hybrid_pt("w")
multicolor 3 color green / white / blue : script: multi_hybrid_pt("u")
multicolor 3 color white / black / red : script: multi_hybrid_pt("r")
multicolor 3 color blue / red / green : script: multi_hybrid_pt("g")
multicolor 3 color black / green / white : script: multi_hybrid_pt("w")
multicolor 3 color red / white / blue : script: multi_hybrid_pt("u")
multicolor 3 color green / blue / black : script: multi_hybrid_pt("b")
multicolor 4 color w/u/b/r : script: multi_hybrid_pt("u")
multicolor 4 color u/b/r/g : script: multi_hybrid_pt("b")
multicolor 4 color b/r/g/w : script: multi_hybrid_pt("r")
multicolor 4 color r/g/w/u : script: multi_hybrid_pt("g")
multicolor 4 color g/w/u/b : script: multi_hybrid_pt("w")
multicolor 5 color w/u/b/r/g : script: multi_hybrid_pt("u")
multicolor 5 color w/u/b/r/g (horizontal) : script: multi_hybrid_pt("g")
# No p/t boxes for lands yet
land : script: pt_template("l")
land 1 color white : script: pt_template("wl")
land 1 color blue : script: pt_template("ul")
land 1 color black : script: pt_template("bl")
land 1 color red : script: pt_template("rl")
land 1 color green : script: pt_template("gl")
land 1 color multicolor : script: pt_template("ml")
land 2 color white / blue : script: card_hybrid_pt("ul")
land 2 color blue / black : script: card_hybrid_pt("bl")
land 2 color black / red : script: card_hybrid_pt("rl")
land 2 color red / green : script: card_hybrid_pt("gl")
land 2 color green / white : script: card_hybrid_pt("wl")
land 2 color white / black : script: card_hybrid_pt("bl")
land 2 color blue / red : script: card_hybrid_pt("rl")
land 2 color black / green : script: card_hybrid_pt("gl")
land 2 color red / white : script: card_hybrid_pt("wl")
land 2 color green / blue : script: card_hybrid_pt("ul")
hybrid 2 color white / blue : script: card_hybrid_pt("u")
hybrid 2 color blue / black : script: card_hybrid_pt("b")
hybrid 2 color black / red : script: card_hybrid_pt("r")
hybrid 2 color red / green : script: card_hybrid_pt("g")
hybrid 2 color green / white : script: card_hybrid_pt("w")
hybrid 2 color white / black : script: card_hybrid_pt("b")
hybrid 2 color blue / red : script: card_hybrid_pt("r")
hybrid 2 color black / green : script: card_hybrid_pt("g")
hybrid 2 color red / white : script: card_hybrid_pt("w")
hybrid 2 color green / blue : script: card_hybrid_pt("u")
hybrid 2 color colorless / white : script: card_hybrid_pt("w")
hybrid 2 color colorless / blue : script: card_hybrid_pt("u")
hybrid 2 color colorless / black : script: card_hybrid_pt("b")
hybrid 2 color colorless / red : script: card_hybrid_pt("r")
hybrid 2 color colorless / green : script: card_hybrid_pt("g")
hybrid 3 color white / blue / black : script: card_hybrid_pt("u")
hybrid 3 color blue / black / red : script: card_hybrid_pt("b")
hybrid 3 color black / red / green : script: card_hybrid_pt("r")
hybrid 3 color red / green / white : script: card_hybrid_pt("g")
hybrid 3 color green / white / blue : script: card_hybrid_pt("w")
hybrid 3 color white / black / red : script: card_hybrid_pt("b")
hybrid 3 color blue / red / green : script: card_hybrid_pt("r")
hybrid 3 color black / green / white : script: card_hybrid_pt("g")
hybrid 3 color red / white / blue : script: card_hybrid_pt("w")
hybrid 3 color green / blue / black : script: card_hybrid_pt("u")
hybrid 4 color w/u/b/r : script: card_hybrid_pt("u")
hybrid 4 color u/b/r/g : script: card_hybrid_pt("b")
hybrid 4 color b/r/g/w : script: card_hybrid_pt("r")
hybrid 4 color r/g/w/u : script: card_hybrid_pt("g")
hybrid 4 color g/w/u/b : script: card_hybrid_pt("w")
hybrid 5 color w/u/b/r/g : script: card_hybrid_pt("u")
hybrid 5 color w/u/b/r/g (horizontal) : script: card_hybrid_pt("g")
hybrid vertical white / blue : script: card_hybrid_pt("w")
hybrid vertical white / black : script: card_hybrid_pt("w")
hybrid vertical white / red : script: card_hybrid_pt("w")
hybrid vertical white / green : script: card_hybrid_pt("w")
hybrid vertical blue / white : script: card_hybrid_pt("u")
hybrid vertical blue / black : script: card_hybrid_pt("u")
hybrid vertical blue / red : script: card_hybrid_pt("u")
hybrid vertical blue / green : script: card_hybrid_pt("u")
hybrid vertical black / white : script: card_hybrid_pt("b")
hybrid vertical black / blue : script: card_hybrid_pt("b")
hybrid vertical black / red : script: card_hybrid_pt("b")
hybrid vertical black / green : script: card_hybrid_pt("b")
hybrid vertical red / white : script: card_hybrid_pt("r")
hybrid vertical red / blue : script: card_hybrid_pt("r")
hybrid vertical red / black : script: card_hybrid_pt("r")
hybrid vertical red / green : script: card_hybrid_pt("r")
hybrid vertical green / white : script: card_hybrid_pt("g")
hybrid vertical green / blue : script: card_hybrid_pt("g")
hybrid vertical green / red : script: card_hybrid_pt("g")
hybrid vertical green / black : script: card_hybrid_pt("g")
hybrid vertical colorless / white : script: card_hybrid_pt("a")
hybrid vertical colorless / blue : script: card_hybrid_pt("a")
hybrid vertical colorless / black : script: card_hybrid_pt("a")
hybrid vertical colorless / red : script: card_hybrid_pt("a")
hybrid vertical colorless / green : script: card_hybrid_pt("a")
hybrid vertical white / colorless : script: card_hybrid_pt("w")
hybrid vertical blue / colorless : script: card_hybrid_pt("u")
hybrid vertical black / colorless : script: card_hybrid_pt("b")
hybrid vertical red / colorless : script: card_hybrid_pt("r")
hybrid vertical green / colorless : script: card_hybrid_pt("g")
# Card power/thoughness, most are generated using the blend-scripts
# Requires
# include file: magic-blends.mse-include/blend-scripts
# In the init script of the style
choice images:
white : script: pt2_template("w")
blue : script: pt2_template("u")
black : script: pt2_template("b")
red : script: pt2_template("r")
green : script: pt2_template("g")
colorless : script: pt2_template("a")
multicolor : script: pt2_template("m")
multicolor 2 color white / blue : script: multi_hybrid_pt2("w")
multicolor 2 color blue / black : script: multi_hybrid_pt2("u")
multicolor 2 color black / red : script: multi_hybrid_pt2("b")
multicolor 2 color red / green : script: multi_hybrid_pt2("r")
multicolor 2 color green / white : script: multi_hybrid_pt2("g")
multicolor 2 color white / black : script: multi_hybrid_pt2("w")
multicolor 2 color blue / red : script: multi_hybrid_pt2("u")
multicolor 2 color black / green : script: multi_hybrid_pt2("b")
multicolor 2 color red / white : script: multi_hybrid_pt2("r")
multicolor 2 color green / blue : script: multi_hybrid_pt2("g")
multicolor 3 color white / blue / black : script: multi_hybrid_pt2("b")
multicolor 3 color blue / black / red : script: multi_hybrid_pt2("r")
multicolor 3 color black / red / green : script: multi_hybrid_pt2("g")
multicolor 3 color red / green / white : script: multi_hybrid_pt2("w")
multicolor 3 color green / white / blue : script: multi_hybrid_pt2("u")
multicolor 3 color white / black / red : script: multi_hybrid_pt2("r")
multicolor 3 color blue / red / green : script: multi_hybrid_pt2("g")
multicolor 3 color black / green / white : script: multi_hybrid_pt2("w")
multicolor 3 color red / white / blue : script: multi_hybrid_pt2("u")
multicolor 3 color green / blue / black : script: multi_hybrid_pt2("b")
multicolor 4 color w/u/b/r : script: multi_hybrid_pt2("b")
multicolor 4 color u/b/r/g : script: multi_hybrid_pt2("r")
multicolor 4 color b/r/g/w : script: multi_hybrid_pt2("g")
multicolor 4 color r/g/w/u : script: multi_hybrid_pt2("w")
multicolor 4 color g/w/u/b : script: multi_hybrid_pt2("u")
multicolor 5 color w/u/b/r/g : script: multi_hybrid_pt2("b")
multicolor 5 color w/u/b/r/g (horizontal) : script: multi_hybrid_pt2("w")
# No p/t boxes for lands yet
land : script: pt2_template("l")
land 1 color white : script: pt2_template("wl")
land 1 color blue : script: pt2_template("ul")
land 1 color black : script: pt2_template("bl")
land 1 color red : script: pt2_template("rl")
land 1 color green : script: pt2_template("gl")
land 1 color multicolor : script: pt2_template("ml")
land 2 color white / blue : script: card_hybrid_pt2("ul")
land 2 color blue / black : script: card_hybrid_pt2("bl")
land 2 color black / red : script: card_hybrid_pt2("rl")
land 2 color red / green : script: card_hybrid_pt2("gl")
land 2 color green / white : script: card_hybrid_pt2("wl")
land 2 color white / black : script: card_hybrid_pt2("bl")
land 2 color blue / red : script: card_hybrid_pt2("rl")
land 2 color black / green : script: card_hybrid_pt2("gl")
land 2 color red / white : script: card_hybrid_pt2("wl")
land 2 color green / blue : script: card_hybrid_pt2("ul")
hybrid 2 color white / blue : script: card_hybrid_pt2("w")
hybrid 2 color blue / black : script: card_hybrid_pt2("u")
hybrid 2 color black / red : script: card_hybrid_pt2("b")
hybrid 2 color red / green : script: card_hybrid_pt2("r")
hybrid 2 color green / white : script: card_hybrid_pt2("g")
hybrid 2 color white / black : script: card_hybrid_pt2("w")
hybrid 2 color blue / red : script: card_hybrid_pt2("u")
hybrid 2 color black / green : script: card_hybrid_pt2("b")
hybrid 2 color red / white : script: card_hybrid_pt2("r")
hybrid 2 color green / blue : script: card_hybrid_pt2("g")
hybrid 2 color colorless / white : script: card_hybrid_pt2("a")
hybrid 2 color colorless / blue : script: card_hybrid_pt2("a")
hybrid 2 color colorless / black : script: card_hybrid_pt2("a")
hybrid 2 color colorless / red : script: card_hybrid_pt2("a")
hybrid 2 color colorless / green : script: card_hybrid_pt2("a")
hybrid 3 color white / blue / black : script: card_hybrid_pt2("b")
hybrid 3 color blue / black / red : script: card_hybrid_pt2("r")
hybrid 3 color black / red / green : script: card_hybrid_pt2("g")
hybrid 3 color red / green / white : script: card_hybrid_pt2("w")
hybrid 3 color green / white / blue : script: card_hybrid_pt2("u")
hybrid 3 color white / black / red : script: card_hybrid_pt2("r")
hybrid 3 color blue / red / green : script: card_hybrid_pt2("g")
hybrid 3 color black / green / white : script: card_hybrid_pt2("w")
hybrid 3 color red / white / blue : script: card_hybrid_pt2("u")
hybrid 3 color green / blue / black : script: card_hybrid_pt2("b")
hybrid 4 color w/u/b/r : script: card_hybrid_pt2("b")
hybrid 4 color u/b/r/g : script: card_hybrid_pt2("r")
hybrid 4 color b/r/g/w : script: card_hybrid_pt2("g")
hybrid 4 color r/g/w/u : script: card_hybrid_pt2("w")
hybrid 4 color g/w/u/b : script: card_hybrid_pt2("u")
hybrid 5 color w/u/b/r/g : script: card_hybrid_pt2("g")
hybrid 5 color w/u/b/r/g (horizontal) : script: card_hybrid_pt2("w")
hybrid vertical white / blue : script: card_hybrid_pt2("u")
hybrid vertical white / black : script: card_hybrid_pt2("b")
hybrid vertical white / red : script: card_hybrid_pt2("r")
hybrid vertical white / green : script: card_hybrid_pt2("g")
hybrid vertical blue / white : script: card_hybrid_pt2("w")
hybrid vertical blue / black : script: card_hybrid_pt2("b")
hybrid vertical blue / red : script: card_hybrid_pt2("r")
hybrid vertical blue / green : script: card_hybrid_pt2("g")
hybrid vertical black / white : script: card_hybrid_pt2("w")
hybrid vertical black / blue : script: card_hybrid_pt2("u")
hybrid vertical black / red : script: card_hybrid_pt2("r")
hybrid vertical black / green : script: card_hybrid_pt2("g")
hybrid vertical red / white : script: card_hybrid_pt2("w")
hybrid vertical red / blue : script: card_hybrid_pt2("u")
hybrid vertical red / black : script: card_hybrid_pt2("b")
hybrid vertical red / green : script: card_hybrid_pt2("g")
hybrid vertical green / white : script: card_hybrid_pt2("w")
hybrid vertical green / blue : script: card_hybrid_pt2("u")
hybrid vertical green / red : script: card_hybrid_pt2("r")
hybrid vertical green / black : script: card_hybrid_pt2("b")
hybrid vertical colorless / white : script: card_hybrid_pt2("w")
hybrid vertical colorless / blue : script: card_hybrid_pt2("u")
hybrid vertical colorless / black : script: card_hybrid_pt2("b")
hybrid vertical colorless / red : script: card_hybrid_pt2("r")
hybrid vertical colorless / green : script: card_hybrid_pt2("g")
hybrid vertical white / colorless : script: card_hybrid_pt2("a")
hybrid vertical blue / colorless : script: card_hybrid_pt2("a")
hybrid vertical black / colorless : script: card_hybrid_pt2("a")
hybrid vertical red / colorless : script: card_hybrid_pt2("a")
hybrid vertical green / colorless : script: card_hybrid_pt2("a")
full name: Magic The Gathering, card blend utilities
version: 2006.01.17
# This file doesn't do anything, other files in this directory can be included
# in game/style files:
# card-colors Defines card color choices
# Use in game
# blend-scripts Defines card_hybrid, family of functions
# Use in init script of style
# card-backgrounds Uses the blend scripts to make choice images for card backgrounds
# Template names can be redefined
\ No newline at end of file
mse version: 0.2.7
# Symbol font in the 'popup' style, used for casting costs on modern cards
image font size: 135
horizontal space: 2
symbol:
image: mana_circle.png
symbol:
code: T
image: script: mana_t()
symbol:
code: W/U
image: mana_wu.png
image font size: 145
symbol:
code: U/B
image: mana_ub.png
image font size: 145
symbol:
code: B/R
image: mana_br.png
image font size: 145
symbol:
code: R/G
image: mana_rg.png
image font size: 145
symbol:
code: G/W
image: mana_gw.png
image font size: 145
symbol:
code: W/B
image: mana_wb.png
image font size: 145
symbol:
code: U/R
image: mana_ur.png
image font size: 145
symbol:
code: B/G
image: mana_bg.png
image font size: 145
symbol:
code: R/W
image: mana_rw.png
image font size: 145
symbol:
code: G/U
image: mana_gu.png
image font size: 145
symbol:
code: 1/2
image: mana_1_half.png
symbol:
code: |W
image: mana_w_half.png
symbol:
code: |U
image: mana_u_half.png
symbol:
code: |B
image: mana_b_half.png
symbol:
code: |R
image: mana_r_half.png
symbol:
code: |G
image: mana_g_half.png
symbol:
code: |S
image: mana_s_half.png
symbol:
code: W
image: mana_w.png
symbol:
code: U
image: mana_u.png
symbol:
code: B
image: mana_b.png
symbol:
code: R
image: mana_r.png
symbol:
code: G
image: mana_g.png
symbol:
code: S
image: mana_s.png
merge numbers: true
text font:
name: MPlantin
size: 15
color: rgb(0,0,0)
text margin left: 3
text margin right: 2
text margin top: -1
text margin bottom: -1
\ No newline at end of file
mse version: 0.2.7
# Symbol font in the normal, flat, style, used for text boxes and on old style cards
# Note:
# Define small_mana_t:="mana_t(_old)?.png" in the init script of the style
#
# So for example:
#
#init script:
# small_mana_t := "mana_t.png"
image font size: 135
horizontal space: 2
symbol:
image: mana_circle.png
symbol:
code: T
image: { mana_t() }
symbol:
code: W/U
image: mana_wu.png
image font size: 145
symbol:
code: U/B
image: mana_ub.png
image font size: 145
symbol:
code: B/R
image: mana_br.png
image font size: 145
symbol:
code: R/G
image: mana_rg.png
image font size: 145
symbol:
code: G/W
image: mana_gw.png
image font size: 145
symbol:
code: W/B
image: mana_wb.png
image font size: 145
symbol:
code: U/R
image: mana_ur.png
image font size: 145
symbol:
code: B/G
image: mana_bg.png
image font size: 145
symbol:
code: R/W
image: mana_rw.png
image font size: 145
symbol:
code: G/U
image: mana_gu.png
image font size: 145
symbol:
code: 1/2
image: mana_1_half.png
symbol:
code: |W
image: mana_w_half.png
symbol:
code: |U
image: mana_u_half.png
symbol:
code: |B
image: mana_b_half.png
symbol:
code: |R
image: mana_r_half.png
symbol:
code: |G
image: mana_g_half.png
symbol:
code: |S
image: mana_s_half.png
symbol:
code: W
image: mana_w.png
symbol:
code: U
image: mana_u.png
symbol:
code: B
image: mana_b.png
symbol:
code: R
image: mana_r.png
symbol:
code: G
image: mana_g.png
symbol:
code: S
image: mana_s.png
merge numbers: true
text font:
name: MPlantin
size: 15
color: rgb(0,0,0)
text margin left: 3
text margin right: 2
text margin top: -1
text margin bottom: -1
\ No newline at end of file
mse version: 0.2.7
game: magic
short name: Flip Cards
full name: Modern flip cards
icon: card-sample.png
# Author: Wolfwood
# Non-creature extension: Guinea Pig and Neko Asakami
# Lots of copy/paste from magic-new.mse-style
############################################################## Extra scripts
init script:
# Load blend scripts for hybrids/multicolors
include file: magic-blends.mse-include/blend-scripts
# Should hybrids have a grey name?
# Not supported (yet)
mask_hybrid_with_land := { false }
# We have no land templates
land_template := { "acard.jpg" }
# Use the normal tap symbol
mana_t := { "mana_t.png" }
# Does the card have a color that requires a white font for copyright/artist?
white_font_colors := filter_rule(match:"^(hybrid )?black|^land")
font_color := {
if white_font_colors(input:card.card_color) != "" then
rgb(255,255,255)
else
rgb(0,0,0)
}
############################################################## Set info fields
info style:
title:
padding left: 2
font:
size: 16
symbol:
variation:
name: common
border radius: 0.10
fill type: solid
fill color: rgb(0,0,0)
border color: rgb(255,255,255)
variation:
name: uncommon
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(224,224,224)
fill color 2: rgb(84, 84, 84)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: rare
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(214,196,94)
fill color 2: rgb(95, 84, 40)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: special
border radius: 0.10
fill type: linear gradient
fill color 1: rgb(224,170,247)
fill color 2: rgb(58,7,80)
border color 1: rgb(255,255,255)
border color 2: rgb(255,255,255)
automatic reminder text:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
use gradient multicolor:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
############################################################## Extra style
extra 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.
initial: no
extra 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
extra field:
type: boolean
name: popup mana symbols
description: Use the symbols of the casting cost line inside the text box as well
initial: no
extra style:
popup mana symbols:
choice images:
yes: /magic-mana-large.mse-symbol-font/mana_w.png
no: /magic-mana-small.mse-symbol-font/mana_w.png
############################################################## Card fields
card style:
############################# Background stuff
border color:
left: 0
top : 0
width: 375
height: 523
radius: 18
left width: 17
right width: 17
top width: 17
bottom width: 18
z index: -1
card color:
left: 0
top: 0
width: 375
height: 523
z index: -2
render style: image
popup style: in place
include file: magic-blends.mse-include/card-backgrounds
############################# Name line
name:
left:
script: if card.card_symbol=="none" then 32 else 51
top : 30
width:
script: if card.card_symbol=="none" then 246 else 227
height: 23
align: bottom shrink-overflow
padding bottom: 0
z index: 1
font:
name: Matrix
size: 17
weight: bold
color: rgb(0,0,0)
name 2:
left: 35
top : 454
width: 308
height: 23
align: bottom shrink-overflow
angle: 180
padding bottom: 0
z index: 1
font:
name: Matrix
size: 17
weight: bold
color: rgb(0,0,0)
casting cost:
left: 280
top : 30
width: 63
height: 23
align: bottom right
symbol font:
name: magic-mana-large
size: 15
align: bottom right
always symbol: true
z index: 2
padding top: 0
casting cost 2:
left: 32
top : 454
width: 63
height: 23
align: bottom right
angle: 180
symbol font:
name: magic-mana-large
size: 15
align: bottom right
always symbol: true
z index: 2
padding top: 0
card symbol:
left:
script: if card.card_symbol=="none" then 20 else 32
top : 31
height: 20
width: 14
render style: image
choice images:
tombstone: tombstone.png
############################# Image
image:
left: 32
top: 162
width: 311
height: 182
z index: 10
############################# Card type
type:
left: 33
top : 134
width: 253
height: 18
align: top shrink-overflow
z index: 1
font:
name: Matrix
size: 14
color: rgb(0,0,0)
separator color: rgb(128,128,128)
type 2:
left: 86
top : 353
width: 256
height: 18
align: top shrink-overflow
angle: 180
z index: 1
font:
name: Matrix
size: 14
color: rgb(0,0,0)
separator color: rgb(128,128,128)
rarity:
left: 320
top : 482
width: 22
height: 22
z index: 1
render style: image
choice images:
# Images based on the set symbol
basic land: script: symbol_variation(symbol: set.symbol, variation: "common")
common: script: symbol_variation(symbol: set.symbol, variation: "common")
uncommon: script: symbol_variation(symbol: set.symbol, variation: "uncommon")
rare: script: symbol_variation(symbol: set.symbol, variation: "rare")
special: script: symbol_variation(symbol: set.symbol, variation: "special")
############################# Text box
text:
left: 33
top : 60
width: 310
height: 65
font:
name: MPlantin
italic name: MPlantin-Italic
size: 14
scale down to: 8
color: rgb(0,0,0)
symbol font:
name:
script:
if styling.popup_mana_symbols
then "magic-mana-large"
else "magic-mana-small"
size: 14
align: middle left
z index: 2
padding left: 4
padding top: -1
padding right: 4
padding bottom: -1
line height hard: 1.2
line height line: 1.5
text 2:
left: 32
top : 380
width: 310
height: 65
angle: 180
font:
name: MPlantin
italic name: MPlantin-Italic
size: 14
scale down to: 8
color: rgb(0,0,0)
symbol font:
name:
script:
if styling.popup_mana_symbols
then "magic-mana-large"
else "magic-mana-small"
size: 14
align: middle left
z index: 2
padding left: 4
padding top: -1
padding right: 4
padding bottom: -1
line height hard: 1.2
line height line: 1.5
############################# PT
pt:
z index: 4
left: 287
top: 131
width: 60
height: 28
align: center middle
font:
name: Mplantin
size: 18
weight: bold
color: rgb(0,0,0)
separator color: rgb(200,0,0)
pt 2:
z index: 4
left: 24
top: 348
width: 60
height: 28
align: center middle
angle: 180
font:
name: Mplantin
size: 18
weight: bold
color: rgb(0,0,0)
separator color: rgb(200,0,0)
############################# PT, by Guinea Pig
########### pt box 1 needs to be at 286/124 (captured at 285/123), pt box 2 at 17/342 (captured at 17/342)
pt box:
left: 286
top: 123
width: 70
height: 38
z index: 1
visible:
script: card.pt != ""
render style: image
include file: magic-blends.mse-include/flip-ptboxes
pt box 1b:
left: 17
top: 342
width: 70
height: 38
z index: 2
visible:
script: card.pt_2 != ""
render style: image
include file: magic-blends.mse-include/flip-ptboxes2
############################# Card sorting / numbering
############################# Copyright stuff
illustrator:
left: 58
top : 479
width: 217
height: 16
z index: 1
font:
name: Matrix
size: 12
color:
script: font_color()
copyright line:
left: 26
top : 493
width: 247
height: 12
z index: 1
font:
name: MPlantin
size: 8
color:
script: font_color()
width: 375
height: 523
dpi: 150
\ No newline at end of file
mse version: 0.2.7
game: magic
short name: Promotional
full name: Large image
icon: card-sample.png
############################################################## Extra scripts
init script:
# Load blend scripts for hybrids/multicolors
include file: magic-blends.mse-include/blend-scripts
# Should hybrids have a grey name?
mask_hybrid_with_land := { styling.grey_hybrid_name }
# Which artifact template should be used?
artifact_template := {
if input == "a" and not styling.darker_artifacts
then "oa"
else input
}
card_template := { artifact_template() + "card.jpg" }
pt_template := { "/magic-new.mse-style/" + artifact_template() + "pt.jpg" }
# Use the normal tap symbol
mana_t := { "mana_t.png" }
# Does the card have a color that requires a white font for copyright/artist?
white_font_colors := filter_rule(match:"^(hybrid 2 color)?black|^land")
font_color := {
if white_font_colors(input:card.card_color) != "" then
rgb(255,255,255)
else
rgb(0,0,0)
}
############################################################## Set info fields
info style:
title:
padding left: 2
font:
size: 16
symbol:
variation:
name: common
border radius: 0.10
fill type: solid
fill color: rgb(0,0,0)
border color: rgb(255,255,255)
variation:
name: uncommon
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(224,224,224)
fill color 2: rgb(84, 84, 84)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: rare
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(214,196,94)
fill color 2: rgb(95, 84, 40)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: special
border radius: 0.10
fill type: linear gradient
fill color 1: rgb(224,170,247)
fill color 2: rgb(58,7,80)
border color 1: rgb(255,255,255)
border color 2: rgb(255,255,255)
automatic reminder text:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
use gradient multicolor:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
############################################################## Extra style
extra field:
type: boolean
name: colored mana symbols
description: Use colored mana symbols, as used by Wizards since Fifth Dawn.
extra field:
type: boolean
name: darker artifacts
description: Use darker artifacts, as used by Wizards since Fifth Dawn.
extra 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.
extra 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
extra field:
type: boolean
name: popup mana symbols
description: Use the symbols of the casting cost line inside the text box as well
initial: no
extra style:
popup mana symbols:
choice images:
yes: /magic-mana-large.mse-symbol-font/mana_w.png
no: /magic-mana-small.mse-symbol-font/mana_w.png
############################################################## Card fields
card style:
############################# Background stuff
border color:
left: 0
top : 0
width: 375
height: 523
radius: 18
left width: 17
right width: 17
top width: 17
bottom width: 18
z index: -1
card color:
left: 0
top: 0
width: 375
height: 523
z index: -2
render style: image
popup style: in place
include file: magic-blends.mse-include/card-backgrounds
############################# Name line
name:
left:
script: if card.card_symbol=="none" then 32 else 51
top : 30
width:
script: if card.card_symbol=="none" then 246 else 227
height: 23
align: bottom shrink-overflow
padding bottom: 0
z index: 1
font:
name: Matrix
size: 17
weight: bold
color: rgb(0,0,0)
casting cost:
left: 280
top : 30
width: 63
height: 23
align: bottom right
symbol font:
name: magic-mana-large
size: 15
align: bottom right
always symbol: true
z index: 2
padding top: 0
card symbol:
left:
script: if card.card_symbol=="none" then 20 else 32
top : 31
height: 20
width: 14
render style: image
choice images:
tombstone: tombstone.png
############################# Image
image:
left: 32
top: 62
width: 311
height: 408
z index: 1
############################# Card type
type:
left: 33
top : 317
width: 286
height: 18
align: top shrink-overflow
z index: 1
font:
name: Matrix
size: 16
color: rgb(255,255,255)
shadow color: rgb(0,0,0)
shadow displacement x: 1
shadow displacement y: 1
separator color: rgb(128,128,128)
############################# Text box
text:
left: 31
top : 328
width: 311
height: 138
font:
name: MPlantin
italic name: MPlantin-Italic
size: 14
scale down to: 8
shadow color: rgb(0,0,0)
shadow displacement x: 1
shadow displacement y: 1
color: rgb(255,255,255)
symbol font:
name:
script:
if styling.popup_mana_symbols
then "magic-mana-large"
else "magic-mana-small"
size: 14
align: middle left
z index: 2
padding left: 4
padding top: 2
padding right: 4
padding bottom: 2
line height hard: 1.2
line height line: 1.5
watermark:
left: 117
top : 321
width: 138
height: 156
z index: 1
render style: image
align: middle center
include file: magic-watermarks.mse-include/watermarks
############################# PT
pt:
z index: 4
left: 284
top: 467
width: 60
height: 28
align: center middle
font:
name: Mplantin
size: 18
weight: bold
color: rgb(0,0,0)
separator color: rgb(200,0,0)
pt box:
left: 271
top: 461
width: 81
height: 42
z index: 1
visible:
script: card.pt != ""
render style: image
mask: mask_pt.png
include file: magic-blends.mse-include/card-ptboxes
############################# Card sorting / numbering
############################# Copyright stuff
illustrator:
left: 56
top : 477
width: 217
height: 16
z index: 1
font:
name: Matrix
size: 12
color:
script: font_color()
copyright line:
left: 26
top : 493
width: 247
height: 12
z index: 1
font:
name: MPlantin
size: 8
color:
script: font_color()
width: 375
height: 523
dpi: 150
mse version: 0.2.7
game: magic
short name: Split Cards
full name: Modern split cards
icon: card-sample.png
# Author: Wolfwood
# Lots of copy/paste from magic-new.mse-style
############################################################## Extra scripts
init script:
# Load blend scripts for hybrids/multicolors
include file: magic-blends.mse-include/blend-scripts
# Which artifact template should be used?
artifact_template := {
if styling.darker_artifacts then "a" else "oa"
}
# Use the normal tap symbol
mana_t := { "mana_t.png" }
# Does the card have a color that requires a white font for copyright/artist?
white_font_colors := filter_rule(match:"^(hybrid 2 color)?black|^land")
font_color := {
if white_font_colors() != "" then
rgb(255,255,255)
else
rgb(0,0,0)
}
############################################################## Set info fields
info style:
title:
padding left: 2
font:
size: 16
symbol:
variation:
name: common
border radius: 0.10
fill type: solid
fill color: rgb(0,0,0)
border color: rgb(255,255,255)
variation:
name: uncommon
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(224,224,224)
fill color 2: rgb(84, 84, 84)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: rare
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(214,196,94)
fill color 2: rgb(95, 84, 40)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: special
border radius: 0.10
fill type: linear gradient
fill color 1: rgb(224,170,247)
fill color 2: rgb(58,7,80)
border color 1: rgb(255,255,255)
border color 2: rgb(255,255,255)
automatic reminder text:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
use gradient multicolor:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
############################################################## Extra style
extra field:
type: boolean
name: colored mana symbols
description: Use colored mana symbols, as used by Wizards since Fifth Dawn.
extra field:
type: boolean
name: darker artifacts
description: Use darker artifacts, as used by Wizards since Fifth Dawn.
extra 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
extra field:
type: boolean
name: popup mana symbols
description: Use the symbols of the casting cost line inside the text box as well
initial: no
extra style:
popup mana symbols:
choice images:
yes: /magic-mana-large.mse-symbol-font/mana_w.png
no: /magic-mana-small.mse-symbol-font/mana_w.png
############################################################## Card fields
card style:
############################# Background stuff
border color:
left: 0
top : 0
width: 523
height: 375
radius: 18
z index: -2
card color:
left: 18
top: 18
width: 236
height: 338
z index: -1
render style: image
popup style: in place
include file: magic-blends.mse-include/card-backgrounds
card color 2:
left: 269
top: 18
width: 236
height: 338
z index: -1
render style: image
popup style: in place
include file: magic-blends.mse-include/card-backgrounds
############################# Name line
name:
left:
script: if card.card_symbol=="none" then 30 else 51
top : 27
width:
script: if card.card_symbol=="none" then 175 else 168
height: 17
align: top shrink-overflow
padding bottom: 0
z index: 1
font:
name: Matrix
size: 13
weight: bold
color: rgb(0,0,0)
name 2:
left:
script: if card.card_symbol_2=="none" then 282 else 51
top : 27
width:
script: if card.card_symbol_2=="none" then 215 else 227
height: 17
align: top shrink-overflow
padding bottom: 0
z index: 1
font:
name: Matrix
size: 13
weight: bold
color: rgb(0,0,0)
casting cost:
left: 207
top : 27
width: 35
height: 16
align: bottom right
symbol font:
name: magic-mana-large
size: 12
align: bottom right
always symbol: true
z index: 2
padding top: 0
casting cost 2:
left: 459
top : 27
width: 35
height: 16
align: bottom right
symbol font:
name: magic-mana-large
size: 12
align: bottom right
always symbol: true
z index: 2
padding top: 0
############################# Image
image:
left: 28
top: 49
width: 216
height: 159
z index: 1
image 2:
left: 279
top: 49
width: 216
height: 159
z index: 1
############################# Card type
type:
left: 30
top : 211
width: 197
height: 17
align: top shrink-overflow
z index: 1
font:
name: Matrix
size: 12
color: rgb(0,0,0)
separator color: rgb(128,128,128)
type 2:
left: 282
top : 211
width: 197
height: 17
align: top shrink-overflow
z index: 1
font:
name: Matrix
size: 12
color: rgb(0,0,0)
separator color: rgb(128,128,128)
rarity:
left: 228
top : 213
width: 13
height: 13
z index: 1
render style: image
choice images:
# Images based on the set symbol
basic land: script: symbol_variation(symbol: set.symbol, variation: "common")
common: script: symbol_variation(symbol: set.symbol, variation: "common")
uncommon: script: symbol_variation(symbol: set.symbol, variation: "uncommon")
rare: script: symbol_variation(symbol: set.symbol, variation: "rare")
special: script: symbol_variation(symbol: set.symbol, variation: "special")
rarity 2:
left: 480
top : 213
width: 13
height: 13
z index: 1
render style: image
choice images:
# Images based on the set symbol
basic land: script: symbol_variation(symbol: set.symbol, variation: "common")
common: script: symbol_variation(symbol: set.symbol, variation: "common")
uncommon: script: symbol_variation(symbol: set.symbol, variation: "uncommon")
rare: script: symbol_variation(symbol: set.symbol, variation: "rare")
special: script: symbol_variation(symbol: set.symbol, variation: "special")
############################# Text box
text:
left: 29
top : 233
width: 214
height: 99
font:
name: MPlantin
italic name: MPlantin-Italic
size: 14
scale down to: 6
color: rgb(0,0,0)
symbol font:
name:
script:
if styling.popup_mana_symbols
then "magic-mana-large"
else "magic-mana-small"
size: 14
align: middle left
z index: 2
padding left: 2
padding top: 2
padding right: 2
padding bottom: 2
line height hard: 1.2
line height line: 1.5
text 2:
left: 279
top : 233
width: 214
height: 99
font:
name: MPlantin
italic name: MPlantin-Italic
size: 14
scale down to: 6
color: rgb(0,0,0)
symbol font:
name:
script:
if styling.popup_mana_symbols
then "magic-mana-large"
else "magic-mana-small"
size: 14
align: middle left
z index: 2
padding left: 2
padding top: 2
padding right: 2
padding bottom: 2
line height hard: 1.2
line height line: 1.5
############################# PT
pt:
z index: 4
left: 200
top: 328
width: 48
height: 25
align: center middle
font:
name: Mplantin
size: 14
weight: bold
color: rgb(0,0,0)
separator color: rgb(200,0,0)
pt 2:
z index: 4
left: 451
top: 328
width: 48
height: 25
align: center middle
font:
name: Mplantin
size: 14
weight: bold
color: rgb(0,0,0)
separator color: rgb(200,0,0)
pt box:
left: 194
top: 326
width: 56
height: 29
z index: 1
visible:
script: card.pt != ""
render style: image
include file: magic-blends.mse-include/card-ptboxes
pt box 2:
left: 445
top: 326
width: 56
height: 29
z index: 1
visible:
script: card.pt_2 != ""
render style: image
include file: magic-blends.mse-include/card-ptboxes
############################# Card sorting / numbering
############################# Copyright stuff
illustrator:
left: 46
top : 338
width: 155
height: 16
z index: 1
font:
name: Matrix
size: 8
color:
script: font_color(card.card_color)
illustrator 2:
left: 298
top : 338
width: 155
height: 16
z index: 1
font:
name: Matrix
size: 8
color:
script: font_color(card.card_color_2)
copyright line:
left: 26
top : 348
width: 175
height: 12
z index: 1
font:
name: MPlantin
size: 6
color:
script: font_color(card.card_color)
copyright line 2:
left: 278
top : 348
width: 175
height: 12
z index: 1
font:
name: MPlantin
size: 6
color:
script: font_color(card.card_color_2)
width: 523
height: 375
dpi: 150
mse version: 0.2.7
game: magic
short name: Modern style
full name: After 8th edition
icon: card-sample.png
############################################################## Extra scripts
init script:
# Load blend scripts for hybrids/multicolors
include file: magic-blends.mse-include/blend-scripts
# Should hybrids have a grey name?
mask_hybrid_with_land := { styling.grey_hybrid_name }
# Which artifact template should be used?
artifact_template := {
if input == "a" then (
if styling.artifact_style == "light" then "oa"
else if styling.artifact_style == "brown" then "ba"
else "a"
) else input
}
card_template := { artifact_template() + "card.jpg" }
pt_template := { artifact_template() + "pt.jpg" }
# Use the normal tap symbol
mana_t := {
if styling.tap_symbol == "old" then "mana_t_old.png"
else if styling.tap_symbol == "diagonal T" then "mana_t_older.png"
else "mana_t.png"
}
# Does the card have a color that requires a white font for copyright/artist?
white_font_colors := filter_rule(match:"^(hybrid 2 color )?(hybrid 3 color [^/]*/[^/]*/ )?(hybrid vertical [^/]*/ )?(black|land|hybrid 4 color w/u/b/r)")
font_color := {
if white_font_colors(input:card.card_color) != "" then
rgb(255,255,255)
else
rgb(0,0,0)
}
############################################################## Set info fields
info style:
title:
padding left: 2
font:
size: 16
symbol:
variation:
name: common
border radius: 0.10
fill type: solid
fill color: rgb(0,0,0)
border color: rgb(255,255,255)
variation:
name: uncommon
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(224,224,224)
fill color 2: rgb(84, 84, 84)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: rare
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(214,196,94)
fill color 2: rgb(95, 84, 40)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: special
border radius: 0.10
fill type: linear gradient
fill color 1: rgb(224,170,247)
fill color 2: rgb(58,7,80)
border color 1: rgb(255,255,255)
border color 2: rgb(255,255,255)
automatic reminder text:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
use gradient multicolor:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
############################################################## Extra style
extra field:
type: boolean
name: colored mana symbols
description: Use colored mana symbols, as used by Wizards since Fifth Dawn.
extra field:
type: choice
name: artifact style
description: Choose the style of artifacts: light = before Fifth Dawn, dark = used since Fifth Dawn, brown = old rust style.
initial: dark
choice: light
choice: dark
choice: brown
extra 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.
extra 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
extra field:
type: boolean
name: popup mana symbols
description: Use the symbols of the casting cost line inside the text box as well
initial: no
extra field:
type: choice
name: tap symbol
description: What tap symbol should be used on cards?
initial: modern
choice: modern
choice: old
choice: diagonal T
extra style:
artifact style:
render style: both
choice images:
light: oacard.jpg
dark: acard.jpg
brown: bacard.jpg
popup mana symbols:
choice images:
yes: /magic-mana-large.mse-symbol-font/mana_w.png
no: /magic-mana-small.mse-symbol-font/mana_w.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
############################################################## Card fields
card style:
############################# Background stuff
border color:
left: 0
top : 0
width: 375
height: 523
radius: 18
left width: 17
right width: 17
top width: 17
bottom width: 18
z index: -1
card color:
left: 0
top: 0
width: 375
height: 523
z index: -2
render style: image
popup style: in place
include file: magic-blends.mse-include/card-backgrounds
############################# Name line
name:
left: { if card.card_symbol=="none" then 32 else 51 }
top : 30
width: { if card.card_symbol=="none" then 246 else 227 }
height: 23
align: bottom shrink-overflow
padding bottom: 0
z index: 1
font:
name: Matrix
size: 17
weight: bold
color: rgb(0,0,0)
casting cost:
left: 280
top : 30
width: 63
height: 23
align: bottom right
symbol font:
name: magic-mana-large
size: 15
align: bottom right
always symbol: true
z index: 2
padding top: 0
card symbol:
left: {if card.card_symbol=="none" then 20 else 32}
top : 31
height: 20
width: 14
render style: image
choice images:
tombstone: tombstone.png
############################# Image
image:
left: 32
top: 62
width: 311
height: 228
z index: 1
############################# Card type
type:
left: 35
top : 298
width: 286
height: 20
align: top shrink-overflow
z index: 1
padding top: 2
font:
name: Matrix
size: 14
color: rgb(0,0,0)
separator color: rgb(128,128,128)
rarity:
left: 320
top : 297
width: 22
height: 22
z index: 1
render style: image
choice images:
# Images based on the set symbol
basic land: script: symbol_variation(symbol: set.symbol, variation: "common")
common: script: symbol_variation(symbol: set.symbol, variation: "common")
uncommon: script: symbol_variation(symbol: set.symbol, variation: "uncommon")
rare: script: symbol_variation(symbol: set.symbol, variation: "rare")
special: script: symbol_variation(symbol: set.symbol, variation: "special")
############################# Text box
text:
left: 31
top : 328
width: 311
height: 142
font:
name: MPlantin
italic name: MPlantin-Italic
size: 14
scale down to: 6
color: rgb(0,0,0)
symbol font:
name:
script:
if styling.popup_mana_symbols
then "magic-mana-large"
else "magic-mana-small"
size: 14
align: middle left
z index: 2
padding left: 6
padding top: 2
padding right: 4
padding bottom: 2
line height hard: 1.2
line height line: 1.5
watermark:
left: 117
top : 321
width: 138
height: 156
z index: 1
render style: image
align: middle center
include file: magic-watermarks.mse-include/watermarks
############################# PT
pt:
z index: 4
left: 284
top: 467
width: 60
height: 28
align: center middle
font:
name: Mplantin
size: 18
weight: bold
color: rgb(0,0,0)
separator color: rgb(200,0,0)
pt box:
left: 271
top: 461
width: 81
height: 42
z index: 1
visible: { card.pt != "" }
render style: image
include file: magic-blends.mse-include/card-ptboxes
############################# Card sorting / numbering
############################# Copyright stuff
illustrator:
left: 56
top : 478
width: 217
height: 16
z index: 1
font:
name: Matrix
size: 10
weight: bold
color: { font_color() }
copyright line:
left: 30
top : 493
width: 247
height: 12
z index: 1
font:
name: MPlantin
size: 6.5
color: { font_color() }
width: 375
height: 523
dpi: 150
##############################################################
##############################################################
############################################################## Old Tokens
##############################################################
##############################################################
mse version: 0.2.7
game: magic
short name: Tokens
full name: Old style
icon: card-sample.png
############################################################## Extra scripts
## COPY/PASTE from magic-old.mse-style/style
init script:
# Load blend scripts for hybrids/multicolors
include file: magic-blends.mse-include/blend-scripts
# There is no land template
land_template := { "acard.jpg" }
# Horizontal 5 color blends are not supported
card_hybrid_5b := card_hybrid_5
# Use the normal tap symbol
mana_t := { "mana_t_old.png" }
# Does the card have a color that requires a black font for copyright/artist?
black_font_colors := filter_rule(match:"^(hybrid 2 color)?white")
font_color := {
if black_font_colors(input:card.card_color) != "" then
rgb(0,0,0)
else
rgb(255,255,255)
}
############################################################## Set info fields
info style:
title:
padding left: 2
font:
size: 16
symbol:
variation:
name: common
border radius: 0.10
fill type: solid
fill color: rgb(0,0,0)
border color: rgb(255,255,255)
variation:
name: uncommon
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(224,224,224)
fill color 2: rgb(84, 84, 84)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: rare
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(214,196,94)
fill color 2: rgb(95, 84, 40)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: special
border radius: 0.10
fill type: linear gradient
fill color 1: rgb(224,170,247)
fill color 2: rgb(58,7,80)
border color 1: rgb(255,255,255)
border color 2: rgb(255,255,255)
automatic reminder text:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
use gradient multicolor:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
############################################################## Extra style
############################################################## Card fields
card style:
############################# Background stuff
border color:
left: 0
top : 0
width: 312
height: 444
radius: 0
left width: 12
right width: 12
top width: 12
bottom width: 12
z index: -1
card color:
left: 0
top: 0
width: 312
height: 444
z index: -2
render style: image
popup style: in place
include file: magic-blends.mse-include/card-backgrounds
############################# Name line
name:
left: 29
top : 16
width: 250
height: 22
align: middle center
padding bottom: 0
z index: 1
font:
name: MagicMedieval
size: 14
color: rgb(255,255,255)
shadow color: rgb(0,0,0)
shadow displacement x: 1
shadow displacement y: 1
############################# Image
image:
left: 33
top: 46
width: 244
height: 232
z index: 1
############################# Card type
type:
left: 47
top : 296
width: 199
height: 18
align: top left
z index: 1
font:
name: MPlantin
size: 11
color: rgb(255,255,255)
shadow color: rgb(0,0,0)
shadow displacement x: 1
shadow displacement y: 1
separator color: rgb(192,192,192)
rarity:
left: 247
top : 294
width: 22
height: 22
z index: 1
render style: image
choice images:
# Images based on the set symbol
basic land: script: symbol_variation(symbol: set.symbol, variation: "common")
common: script: symbol_variation(symbol: set.symbol, variation: "common")
uncommon: script: symbol_variation(symbol: set.symbol, variation: "uncommon")
rare: script: symbol_variation(symbol: set.symbol, variation: "rare")
special: script: symbol_variation(symbol: set.symbol, variation: "special")
############################# Text box
text:
left: 47
top : 318
width: 216
height: 67
font:
name: MPlantin
italic name: MPlantin-Italic
size: 13
scale down to: 6
color: rgb(0,0,0)
symbol font:
name: magic-mana-small
size: 13
align: middle center
z index: 2
padding left: 2
padding top: 2
padding right: 2
padding bottom: 2
line height hard: 1.2
line height line: 1.5
############################# PT
pt:
z index: 4
left: 233
top: 391
width: 42
height: 28
align: right top
font:
name: Mplantin
size: 16
weight: bold
color: rgb(255,255,255)
shadow color: rgb(0,0,0)
shadow displacement x: 2
shadow displacement y: 2
separator color: rgb(255,50,50)
############################# Card sorting / numbering
############################# Copyright stuff
illustrator:
left: 47
top : 391
width: 160
height: 13
z index: 1
align: middle left
font:
name: Mplantin
size: 9
color: rgb(255,255,255)
shadow color: rgb(0,0,0)
shadow displacement x: 1
shadow displacement y: 1
copyright line:
left: 47
top : 404
width: 160
height: 10
z index: 1
align: middle left
font:
name: MPlantin
size: 6
color: script: font_color()
width: 312
height: 444
dpi: 127.34225621414913957934990439771
##############################################################
##############################################################
############################################################## OLD STYLE MAGIC
##############################################################
##############################################################
mse version: 0.2.7
game: magic
short name: Old style
full name: Before 8th edition
icon: card-sample.png
############################################################## Extra scripts
## COPY/PASTE from magic-new.mse-style/style
init script:
# Load blend scripts for hybrids/multicolors
include file: magic-blends.mse-include/blend-scripts
# There are currently no colored lands
land_template := { "lcard.jpg" }
# Horizontal 5 color blends are not supported
card_hybrid_5b := card_hybrid_5
# Use the normal tap symbol
mana_t := { "mana_t_old.png" }
# Does the card have a color that requires a black font for copyright/artist?
black_font_colors := filter_rule(match:"^(hybrid 2 color)?white")
font_color := {
if black_font_colors(input:card.card_color) != "" then
rgb(0,0,0)
else
rgb(255,255,255)
}
############################################################## Set info fields
info style:
title:
padding left: 2
font:
size: 16
symbol:
variation:
name: common
border radius: 0.10
fill type: solid
fill color: rgb(0,0,0)
border color: rgb(255,255,255)
variation:
name: uncommon
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(224,224,224)
fill color 2: rgb(84, 84, 84)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: rare
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(214,196,94)
fill color 2: rgb(95, 84, 40)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: special
border radius: 0.10
fill type: linear gradient
fill color 1: rgb(224,170,247)
fill color 2: rgb(58,7,80)
border color 1: rgb(255,255,255)
border color 2: rgb(255,255,255)
automatic reminder text:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
use gradient multicolor:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
############################################################## Extra style
############################################################## Card fields
card style:
############################# Background stuff
border color:
left: 0
top : 0
width: 312
height: 444
radius: 0
left width: 6
right width: 6
top width: 6
bottom width: 6
z index: -1
card color:
left: 0
top: 0
width: 312
height: 444
z index: -2
render style: image
popup style: in place
include file: magic-blends.mse-include/card-backgrounds
############################# Name line
name:
left: 27
top : 9
width: 210
height: 22
align: bottom shrink-overflow
padding bottom: 0
z index: 1
font:
name: MagicMedieval
size: 14
color: rgb(255,255,255)
shadow color: rgb(0,0,0)
shadow displacement x: 1
shadow displacement y: 1
casting cost:
left: 238
top : 9
width: 54
height: 22
align: middle right
symbol font:
name: magic-mana-small
size: 14
align: middle right
always symbol: true
z index: 2
padding top: 0
card symbol:
left: 10
top : 9
height: 20
width: 14
render style: image
choice images:
tombstone: tombstone.png
############################# Image
image:
left: 29
top: 35
width: 255
height: 207
z index: 1
############################# Card type
type:
left: 25
top : 248
width: 240
height: 18
align: top left
z index: 1
font:
name: MPlantin
size: 11
color: rgb(255,255,255)
shadow color: rgb(0,0,0)
shadow displacement x: 1
shadow displacement y: 1
separator color: rgb(192,192,192)
rarity:
left: 265
top : 245
width: 22
height: 22
z index: 1
render style: image
choice images:
# Images based on the set symbol
basic land: script: symbol_variation(symbol: set.symbol, variation: "common")
common: script: symbol_variation(symbol: set.symbol, variation: "common")
uncommon: script: symbol_variation(symbol: set.symbol, variation: "uncommon")
rare: script: symbol_variation(symbol: set.symbol, variation: "rare")
special: script: symbol_variation(symbol: set.symbol, variation: "special")
############################# Text box
text:
left: 29
top : 271
width: 255
height: 128
font:
name: MPlantin
italic name: MPlantin-Italic
size: 13
scale down to: 6
color: rgb(0,0,0)
symbol font:
name: magic-mana-small
size: 13
align: middle left
z index: 2
padding left: 2
padding top: 2
padding right: 2
padding bottom: 2
line height hard: 1.2
line height line: 1.5
watermark:
left: 99
top : 265
width: 124
height: 140
z index: 1
render style: image
align: middle center
include file: magic-watermarks.mse-include/watermarks
############################# PT
pt:
z index: 4
left: 254
top: 408
width: 42
height: 28
align: right top
font:
name: Mplantin
size: 16
weight: bold
color: rgb(255,255,255)
shadow color: rgb(0,0,0)
shadow displacement x: 2
shadow displacement y: 2
separator color: rgb(255,50,50)
############################# Card sorting / numbering
############################# Copyright stuff
illustrator:
left: 56
top : 407
width: 200
height: 14
z index: 1
align: center
font:
name: Mplantin
size: 9
color: rgb(255,255,255)
shadow color: rgb(0,0,0)
shadow displacement x: 1
shadow displacement y: 1
copyright line:
left: 56
top : 422
width: 200
height: 9
z index: 1
align: center
font:
name: MPlantin
size: 6
color: script: font_color()
width: 312
height: 444
dpi: 127.34225621414913957934990439771
mse version: 0.2.7
game: magic
short name: Textless
full name: Modern style
icon: card-sample.png
#By: Wolfwood
############################################################## Extra scripts
init script:
# Load blend scripts for hybrids/multicolors
include file: magic-blends.mse-include/blend-scripts
# Should hybrids have a grey name?
mask_hybrid_with_land := { styling.grey_hybrid_name }
# There is no land template
land_template := { "acard.jpg" }
# there is no multi template
multi_hybrid := { input }
card_template := { if input == "m" then "acard.jpg" else input + "card.jpg" }
pt_template := { input + "pt.jpg" }
# Use the normal tap symbol
small_mana_t := "mana_t.png"
# Does the card have a color that requires a white font for copyright/artist?
white_font_colors := filter_rule(match:"^(hybrid 2 color)?black|^land")
font_color := {
if white_font_colors(input:card.card_color) != "" then
rgb(255,255,255)
else
rgb(0,0,0)
}
############################################################## Set info fields
info style:
title:
padding left: 2
font:
size: 16
symbol:
variation:
name: common
border radius: 0.10
fill type: solid
fill color: rgb(0,0,0)
border color: rgb(255,255,255)
variation:
name: uncommon
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(224,224,224)
fill color 2: rgb(84, 84, 84)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: rare
border radius: 0.05
fill type: linear gradient
fill color 1: rgb(214,196,94)
fill color 2: rgb(95, 84, 40)
border color 1: rgb(0, 0, 0)
border color 2: rgb(0, 0, 0)
variation:
name: special
border radius: 0.10
fill type: linear gradient
fill color 1: rgb(224,170,247)
fill color 2: rgb(58,7,80)
border color 1: rgb(255,255,255)
border color 2: rgb(255,255,255)
automatic reminder text:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
use gradient multicolor:
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
############################################################## Extra style
extra field:
type: boolean
name: colored mana symbols
description: Use colored mana symbols, as used by Wizards since Fifth Dawn.
extra field:
type: boolean
name: darker artifacts
description: Use darker artifacts, as used by Wizards since Fifth Dawn.
extra 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.
initial: no
extra 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
extra field:
type: boolean
name: popup mana symbols
description: Use the symbols of the casting cost line inside the text box as well
initial: no
extra style:
popup mana symbols:
choice images:
yes: /magic-mana-large.mse-symbol-font/mana_w.png
no: /magic-mana-small.mse-symbol-font/mana_w.png
############################################################## Card fields
card style:
############################# Background stuff
border color:
left: 0
top : 0
width: 375
height: 523
radius: 18
left width: 17
right width: 17
top width: 17
bottom width: 18
z index: -1
card color:
left: 0
top: 0
width: 375
height: 523
z index: -2
render style: image
popup style: in place
include file: magic-blends.mse-include/card-backgrounds
############################# Name line
name:
left:
script: if card.card_symbol=="none" then 32 else 51
top : 30
width:
script: if card.card_symbol=="none" then 246 else 227
height: 23
align: bottom shrink-overflow
padding bottom: 0
z index: 1
font:
name: Matrix
size: 17
weight: bold
color: rgb(0,0,0)
casting cost:
left: 280
top : 29
width: 63
height: 23
align: bottom right
symbol font:
name: magic-mana-large
size: 15
align: bottom right
always symbol: true
z index: 2
padding top: 0
card symbol:
left:
script: if card.card_symbol=="none" then 20 else 32
top : 31
height: 20
width: 14
render style: image
choice images:
tombstone: tombstone.png
############################# Image
image:
left: 0
top: 55
width: 375
height: 472
mask: mask_image.png
z index: 1
############################# Card type
rarity:
left: 320
top : 480
width: 22
height: 22
z index: 1
render style: image
choice images:
# Images based on the set symbol
basic land: script: symbol_variation(symbol: set.symbol, variation: "common")
common: script: symbol_variation(symbol: set.symbol, variation: "common")
uncommon: script: symbol_variation(symbol: set.symbol, variation: "uncommon")
rare: script: symbol_variation(symbol: set.symbol, variation: "rare")
special: script: symbol_variation(symbol: set.symbol, variation: "special")
############################# PT
pt:
z index: 4
left: 290
top: 448
width: 60
height: 28
align: center middle
font:
name: Mplantin
size: 18
weight: bold
color: rgb(0,0,0)
separator color: rgb(200,0,0)
pt box:
left: 277
top: 442
width: 81
height: 42
z index: 1
visible:
script: card.pt != ""
render style: image
mask: mask_pt.png
include file: magic-blends.mse-include/card-ptboxes
############################# Card sorting / numbering
############################# Copyright stuff
illustrator:
left: 56
top : 477
width: 217
height: 16
z index: 1
font:
name: Matrix
size: 12
color:
script: font_color()
copyright line:
left: 26
top : 493
width: 247
height: 12
z index: 1
font:
name: MPlantin
size: 8
color:
script: font_color()
width: 375
height: 523
dpi: 150
full name: Magic The Gathering, textbox watermarks
version: 2006.08.03
# This file doesn't do anything, other files in this directory can be included
# in game/style files:
# watermarks Includes references to the watermark images, to be used in a style file
\ No newline at end of file
# Watermark images
choice images:
mana symbol white: /magic-watermarks.mse-include/watermark_w.png
mana symbol blue: /magic-watermarks.mse-include/watermark_u.png
mana symbol black: /magic-watermarks.mse-include/watermark_b.png
mana symbol red: /magic-watermarks.mse-include/watermark_r.png
mana symbol green: /magic-watermarks.mse-include/watermark_g.png
guild symbol Azorius Senate (W/U): script: set_combine(combine:"shadow", input:"/magic-watermarks.mse-include/watermark_azorius.png")
guild symbol House Dimir (U/B): script: set_combine(combine:"shadow", input:"/magic-watermarks.mse-include/watermark_dimir.png")
guild symbol Cult of Rakdos (B/R): script: set_combine(combine:"shadow", input:"/magic-watermarks.mse-include/watermark_rakados.png")
guild symbol Gruul Clans (R/G): script: set_combine(combine:"shadow", input:"/magic-watermarks.mse-include/watermark_gruul.png")
guild symbol Selesnya Conclave (G/W): script: set_combine(combine:"shadow", input:"/magic-watermarks.mse-include/watermark_selesnya.png")
guild symbol Orzhov Syndicate (W/B): script: set_combine(combine:"shadow", input:"/magic-watermarks.mse-include/watermark_orzhov.png")
guild symbol The Izzet (U/R): script: set_combine(combine:"shadow", input:"/magic-watermarks.mse-include/watermark_izzet.png")
guild symbol The Golgari (B/G): script: set_combine(combine:"shadow", input:"/magic-watermarks.mse-include/watermark_golgari.png")
guild symbol Boros Legion (R/W): script: set_combine(combine:"shadow", input:"/magic-watermarks.mse-include/watermark_boros.png")
guild symbol The Simic (G/U): script: set_combine(combine:"shadow", input:"/magic-watermarks.mse-include/watermark_simic.png")
mse version: 0.2.7
short name: Magic
full name: Magic the Gathering
icon: card-back.png
############################################################## Functions & filters
# General functions
init script:
# correctly sort a mana symbol (no guild mana)
mana_sort := sort_rule(order: "XYZ[0123456789]S(WUBRG)")
# correctly sort guild mana
mana_sort_guild := replace_rule( # swap these:
match: "U/W|B/U|R/B|G/B|W/G|B/W|R/U|G/B|W/R|U/G",
in_context: "(^|[^/])<match>($|[^/])",
replace: {input[2] + "/" + input[0]}) +
replace_rule(
match: "T", replace: ""
)
mana_has_guild := sort_rule(order: "</|>") # Is there guild or half mana in the input?
# A mana cost can contain both normal and guild mana
mana_filter := to_upper + {
if mana_has_guild()!="" then mana_sort_guild()
else mana_sort()
}
# Like mana filter, only also allow tap symbols:
tap_filter := sort_rule(order: "<T>")
mana_filter_t := replace_rule( # Remove [] used for forcing mana symbols
match: "[\\[\\]]",
replace: ""
) + { tap_filter() + mana_filter() }
# Names of colors
color_name := {
if input = "W" then "white"
else if input = "U" then "blue"
else if input = "B" then "black"
else if input = "R" then "red"
else if input = "G" then "green"
else ""
}
# color based on mana cost, input = a mana cost
color_filter := sort_rule(order: "<WUBRG>") + sort_rule(order: "(WUBRG)")
color_filterH := sort_rule(order: "</>")
mana_to_color := {
colors := color_filter()
hybrid := color_filterH()
count := number_of_items(in: colors)
if hybrid == "" then
# not a hybrid
if count == 0 then "colorless"
else if count == 1 then color_name(colors[0])
else if set.set_info.use_gradient_multicolor == "no" then "multicolor" # stop here
else if count == 2 then "multicolor 2 color " + color_name(colors[0]) + " / " + color_name(colors[1])
else if set.set_info.use_gradient_multicolor != "yes" then "multicolor" # stop here
else if count == 3 then "multicolor 3 color " + color_name(colors[0]) + " / " + color_name(colors[1]) + " / " + color_name(colors[2])
else if count == 3 then "multicolor 4 color " + to_lower(colors[0]) + "/" + to_lower(colors[1]) + "/" + to_lower(colors[2]) + to_lower(colors[3])
else if count == 5 then "multicolor 5 color w/u/b/r/g"
else "multicolor"
else
# hybrid
if count == 2 then "hybrid 2 color " + color_name(colors[0]) + " / " + color_name(colors[1])
else "multicolor"
}
# color based on land text box, input = textbox contents
color_text_filter := filter_rule(match: "<sym[^>]*>([^<]+)") + color_filter;
land_to_color := {
# Based on watermark
if card.watermark = "mana symbol white" then "land 1 color white"
else if card.watermark = "mana symbol blue" then "land 1 color blue"
else if card.watermark = "mana symbol black" then "land 1 color black"
else if card.watermark = "mana symbol red" then "land 1 color red"
else if card.watermark = "mana symbol green" then "land 1 color green"
else (
# Based on colors in text box
colors := color_text_filter(input: card.rule_text);
if colors = "" then "land"
else if colors = "W" then "land 1 color white"
else if colors = "U" then "land 1 color blue"
else if colors = "B" then "land 1 color black"
else if colors = "R" then "land 1 color red"
else if colors = "G" then "land 1 color green"
else if colors = "WU" then "land 2 color white / blue"
else if colors = "UB" then "land 2 color blue / black"
else if colors = "BR" then "land 2 color black / red"
else if colors = "RG" then "land 2 color red / green"
else if colors = "WG" then "land 2 color green / white"
else if colors = "WB" then "land 2 color white / black"
else if colors = "UR" then "land 2 color blue / red"
else if colors = "BG" then "land 2 color black / green"
else if colors = "WR" then "land 2 color red / white"
else if colors = "UG" then "land 2 color green / blue"
else "land 1 color multicolor"
)
};
# Index for sorting, white cards are first, so white->1, blue->2, .. ,
# multi->6, hybrid->7, arti->8, land->9, basic land->10
is_multicolor := filter_rule(match: "^multicolor") + {input != ""};
is_hybrid := filter_rule(match: "^hybrid") + {input != ""};
is_colorless := filter_rule(match: "^colorless") + {input != ""};
sort_index := {
if card.card_color=="white" then "A"
else if card.card_color=="blue" then "B"
else if card.card_color=="black" then "C"
else if card.card_color=="red" then "D"
else if card.card_color=="green" then "E"
else if is_multicolor(card.card_color) then "F"
else if is_hybrid (card.card_color) then "G"
else if is_colorless (card.card_color) then "H"
else if card.super_type!="Basic Land" then "I"
else "J"
};
# The color of a card
is_land := filter_rule(match: "(?i)Land") + {input != ""};
card_color := {
# usually the color of mana
mana_color := mana_to_color(casting_cost);
if mana_color == "colorless" and is_land(input: card.super_type)
then land_to_color()
else mana_color
};
# Filters for the text box
# context in which mana symbols are found
mana_context :=
"(?ix) # case insensitive, ignore whitespace
(^|[[:space:]\"(]) # start of a word
( <match>: # G: something
| <match>, # G, tap: something
| <match>[ ]can[ ]be[ ]pay
| (pays?|additional|costs?|the # pay X. creatures cost 1 less. pay an additional G.
|adds?|pay(ed)?[ ](with|using)
)
([ ]either)? # pay either X or Y
([ ]<sym[^>]*>[XYZWUBRG0-9/|]+</sym[^>]*>[ ](and|or))* # pay X or Y
[ ]<match>
([,.)]|$ # (end of word)
|[ ][^ .,]*$ # still typing...
|[ ]( or | and | in | less | more | to ) # or next word is ...
)
)
| <param-mana><match></param-mana> # keyword argument that is declared as mana
| <param-cost><match></param-cost> # keyword argument that is declared as cost
| <param-cost><match>, # keyword argument that is declared as cost
";
# the rule text filter
# - adds mana symbols
# - makes text in parentheses italic
text_filter :=
# step 1 : remove all automatic tags
tag_remove_rule(tag: "<sym-auto>") +
tag_remove_rule(tag: "<i-auto>") +
# # step 2 : reminder text for keywords
# keyword_rule(
# expand_reminder_game: { set.automatic_reminder_text == "yes" },
# expand_reminder_set: { set.automatic_reminder_text != "no" },
# before: " (",
# after: ")",
# fix_english: true
# ) +
# step 3 : expand shortcut words ~ and CARDNAME
replace_rule(
match: "~|~THIS~|CARDNAME",
in_context: "(^|[[:space:]]|\\()<match>", # TODO: Allow any punctuation before
replace: "<atom-cardname></atom-cardname>"
) +
# step 4 : fill in atom fields
tag_contents_rule(
tag: "<atom-cardname>",
contents: { if card_name=="" then "CARDNAME" else card_name }
) +
# step 4.5 : explict non mana symbols
replace_rule(
match: "\\][STXYZWUBRG0-9/|]+\\[",
replace: {"<nosym>" + mana_filter_t() + "</nosym>"} ) +
# step 5 : add mana & tap symbols
replace_rule(
match: "[STXYZWUBRG0-9/|]+",
in_context: mana_context,
replace: {"<sym-auto>" + mana_filter_t() + "</sym-auto>"} ) +
# step 5b : add explict mana symbols
replace_rule(
match: "\\[[STXYZWUBRG0-9/|]+\\]",
replace: {"<sym>" + mana_filter_t() + "</sym>"} ) +
# step 6 : longdash
replace_rule(
match: "-",
in_context: "(?i)[a-z0-9] <match> |<param-cost> ?<match>" # Lengthen dashes in Keyword--Cost -- jimrandomh
replace: "—")+
# step 7 : italic reminder text
replace_rule(
match: "[(][^)\n]*[)]?",
in_context: "(^|[[:space:]])<match>|<atom-keyword><match></",
replace: "<i-auto>&</i-auto>")
# the flavor text filter
# - makes all text italic
flavor_text_filter :=
# step 1 : remove italic tags
tag_remove_rule(tag: "<i-flavor>") +
# step 2 : surround by <i> tags
{ "<i-flavor>" + input + "</i-flavor>" }
# Converted mana cost
cmc := {
1 * number_of_items(in: sort(order:"SWUBRG")) # colored mana
- 1 * number_of_items(in: sort(order:"/")) # guild mana, W/U -> 2 - 1
+ 1 * sort(order: "[0123456789]") # colorless mana
}
# TODO : somewhere else?
#card to conversion:
# name: MTGnews.com forums
# script:
# "[b]" + card.name + "[/b]\n" +
# card.sub_type + " - " + card.super_type + "\n" +
# card.rules_text + "\n"
# card.pt + "\n"
# "[i]" + card.flavor_text + "[/i]"
############################################################## Set fields
set field:
type: text
name: title
set field:
type: text
name: description
multi line: true
set field:
type: text
name: artist
set field:
type: text
name: copyright
set field:
type: symbol
name: symbol
description: The symbol for this set, double click to edit
set field:
type: color
name: border color
description: The default border color for cards
choice:
name: black
color: rgb(0,0,0)
choice:
name: white
color: rgb(255,255,255)
choice:
name: silver
color: rgb(128,128,128)
choice:
name: gold
color: rgb(200,180,0)
set field:
type: choice
name: automatic reminder text
choice: yes
choice: only for custom keywords
choice: no
description: Should reminder text be added to keywords by default? Note: you can enable/disable reminder text by right clicking the keyword.
set field:
type: boolean
name: automatic card numbers
description: Should card numbers be shown on the cards?
set field:
type: boolean
name: mark errors
description: Marks errors on cards, for example wording and spelling errors, non unique card names, etc.
set field:
type: choice
name: use gradient multicolor
choice: yes
choice: only for two color cards
choice: no
description: Use gradients on multicolor cards by default, you can always change it be clicking on the card border.
initial: no
############################################################## Card fields
############################# Background stuff
card field:
type: color
name: border color
default: set.border_color
choice:
name: black
color: rgb(0,0,0)
choice:
name: white
color: rgb(255,255,255)
choice:
name: silver
color: rgb(128,128,128)
choice:
name: gold
color: rgb(200,180,0)
show statistics: false
card field:
type: choice
name: card color
icon: stats/card_color.png
# Specify the colors somewhere else, to keep things clean
include file: magic-blends.mse-include/card-colors
default: card_color(casting_cost: card.casting_cost)
############################# Name line
card field:
type: text
name: name
identifying: true
show statistics: false
card list visible: true
card list column: 1
card list width: 150
description: The name of the card
card field:
type: text
name: casting cost
icon: stats/casting_cost.png
script: mana_filter(value)
move cursor with sort: true
card list visible: true
card list column: 2
card list alignment: right
card list width: 50
card list name: CC
description: The casting cost of the card
card field:
type: choice
name: card symbol
icon: stats/card_symbol.png
choice: none
choice: tombstone
description: Symbol for this card (tombstone)
############################# Image
card field:
type: image
name: image
show statistics: false
############################# Card type
card field:
type: text
name: super type
icon: stats/creature_type.png
editable: false
card field:
type: text
name: sub type
icon: stats/creature_type.png
editable: false
card field:
type: text
name: type
icon: stats/creature_type.png
save value: false
script:
# Either just supertype, or subtype - supertype
combined_editor(
field1: card.super_type,
separator: " — ",
field2: card.sub_type,
soft_before_empty: true,
hide_when_empty: true,
type_over1: " -",
type_over2: "-"
)
card list visible: true
card list column:4
description: The type of this card, type - to go the sub type
card field:
type: choice
name: rarity
icon: stats/rarity.png
choice: basic land
choice: common
choice: uncommon
choice: rare
choice: special
initial: common
card list visible: true
card list column: 6
description: The rarity of the card, to edit the symbol switch to the 'set info' tab
############################# Text box
card field:
type: text
name: rule text
script: text_filter(input: value, card_name: card.name)
editable: false
show statistics: false
card field:
type: text
name: flavor text
script: flavor_text_filter(value)
editable: false
show statistics: false
card field:
type: text
name: text
multi line: true
save value: false
show statistics: false
script:
combined_editor(field1: card.rule_text, separator: "<line>\n</line>", field2: card.flavor_text)
card field:
type: choice
name: watermark
icon: stats/watermark.png
choice: none
choice:
name: mana symbol
choice: white
choice: blue
choice: black
choice: red
choice: green
choice:
name: guild symbol
choice: Azorius Senate (W/U)
choice: House Dimir (U/B)
choice: Cult of Rakdos (B/R)
choice: Gruul Clans (R/G)
choice: Selesnya Conclave (G/W)
choice: Orzhov Syndicate (W/B)
choice: The Izzet (U/R)
choice: The Golgari (B/G)
choice: Boros Legion (R/W)
choice: The Simic (G/U)
description: A watermark for below the textbox, this can be a big mana symbol used on basic lands, or a guild symbol
############################# PT
card field:
type: text
name: power
icon: stats/power.png
editable: false
card field:
type: text
name: toughness
icon: stats/toughness.png
editable: false
card field:
type: text
name: pt
save value: false
script:
combined_editor(
field1: card.power,
separator: "/",
field2: card.toughness,
soft_before_empty: true,
hide_when_empty: true,
type_over1: "/"
)
card list visible: true
card list column: 5
card list width: 50
card list name: P/T
description: Power/toughness
show statistics: false
card field: # box for power/toughness
type: choice
name: pt box
include file: magic-blends.mse-include/card-colors
script: card.card_color
editable: false
save value: false
show statistics: false
############################# Card sorting / numbering
card field:
type: text
name: card number
save value: false
script:
position(
of: card
in: set
order_by: { sort_index() + card.name }
) + 1
+ "/" +
number_of_items(in: set)
card list visible: true
card list column: 10
card list width: 50
card list name: #
card list alignment: right
editable: false
show statistics: false
############################# Copyright stuff
card field:
type: text
name: illustrator
icon: stats/illustrator.png
default: set.artist
description: Illustrator of this card, the default value can be changed on the 'set info' tab
card field:
type: text
name: copyright
default: set.copyright
editable: false
show statistics: false
card field:
type: text
name: copyright line
save value: false
show statistics: false
script:
if set.automatic_card_numbers then
combined_editor(field1: card.copyright, separator: " ", field2: card.card_number)
else
forward_editor(field: card.copyright)
description: Copyright of this card and cardnumber, the default value can be changed on the 'set info' tab
############################################################## Duplicate fields (split/flip cards)
# Based on flip templates by Wolfwood
# These are a direct copy of the fields above, only with a 2
card field:
type: choice
name: card color 2
icon: stats/card_color.png
include file: magic-blends.mse-include/card-colors
default: card_color(casting_cost: card.casting_cost_2)
show statistics: false
card field:
type: text
name: name 2
identifying: true
show statistics: false
card field:
type: text
name: casting cost 2
icon: stats/casting_cost.png
script: mana_filter(value)
move cursor with sort: true
card list alignment: right
card list width: 50
card list name: CC
show statistics: false
card field:
type: choice
name: card symbol 2
icon: stats/card_symbol.png
choice: none
choice: tombstone
show statistics: false
card field:
type: image
name: image 2
show statistics: false
card field:
type: text
name: super type 2
icon: stats/creature_type.png
editable: false
show statistics: false
card field:
type: text
name: sub type 2
icon: stats/creature_type.png
editable: false
show statistics: false
card field:
type: text
name: type 2
save value: false
script:
combined_editor(
field1: card.super_type_2,
separator: " — ",
field2: card.sub_type_2,
hide_when_empty: true,
soft_before_empty: true,
type_over1: " -",
type_over2: "-"
)
show statistics: false
card field:
type: choice
name: rarity 2
icon: stats/rarity.png
choice: basic land
choice: common
choice: uncommon
choice: rare
choice: special
initial: common
# Both rarities will be the same
script: card.rarity
editable: false
show statistics: false
card field:
type: text
name: rule text 2
script: text_filter(input: value, card_name: card.name_2)
editable: false
show statistics: false
card field:
type: text
name: flavor text 2
script: flavor_text_filter(value)
editable: false
show statistics: false
card field:
type: text
name: text 2
multi line: true
save value: false
show statistics: false
script:
combined_editor(field1: card.rule_text_2, separator: "<line>\n</line>", field2: card.flavor_text_2)
card field:
type: text
name: power 2
icon: stats/power.png
editable: false
show statistics: false
card field:
type: text
name: toughness 2
icon: stats/toughness.png
editable: false
show statistics: false
card field:
type: text
name: pt 2
save value: false
script:
combined_editor(
field1: card.power_2,
separator: "/",
field2: card.toughness_2,
soft_before_empty: true,
hide_when_empty: true,
type_over1: "/"
)
card list width: 50
card list name: P/T2
show statistics: false
card field:
type: choice
name: pt box 2
include file: magic-blends.mse-include/card-colors
script: card.card_color_2
editable: false
save value: false
show statistics: false
card field:
# Another pt box witht the same value as pt box 1
type: choice
name: pt box 1b
include file: magic-blends.mse-include/card-colors
script: card.card_color
editable: false
save value: false
show statistics: false
card field:
type: text
name: illustrator 2
icon: stats/illustrator.png
default: set.artist
show statistics: false
card field:
type: text
name: copyright 2
default: set.copyright
editable: false
show statistics: false
card field:
type: text
name: copyright line 2
save value: false
show statistics: false
script:
if set.automatic_card_numbers then
combined_editor(field1: card.copyright_2, separator: " ", field2: card.card_number)
else
forward_editor(field: card.copyright_2)
# The following (until keywords) doesn't do anything yet
############################################################## Statistics categories
statistics dimension:
name: converted mana cost
script: cmc(card.casting_cost)
numeric: true
icon: stats/casting_cost.png
statistics dimension:
name: rarity_twice
script: card.rarity + card.rarity
statistics category:
name: color / rarity
dimension: card_color
dimension: rarity
#statistics field:
# name: creature type
# data 1:
# if card.super_type == "Creature" or card.super_type == "Legendary Creature" then
# split(around:" ", input: card.sub_type)
#statistics field:
# name: converted mana cost
# graph style: bar
# data 1:
# card.casting_cost
# # TODO
#statistics field:
# name: color / rarity
# graph style: cross
# data 1: card.card_color
# data 2: card.rarity
############################################################## Word lists
#word list:
# name: card types
# word: Creature
# word: Artifact
# word: Enchantment
# word: Instant
# word: Sorcery
# word: Land
# word: Legendary Creature
# word: Legendary Artifact
# word: Legendary Enchantment
# word: Legendary Land
#word list:
# name: creature types
# word: Goblin
# word: Elf
# word: Wizard
# word: Human
#word list:
# name: enchantment types
# word:
# word: Aura
############################################################## Card packs
#pack:
# name: Base set
# pack type:
#pack:
# name:
#pack:
# name: Booster
# pack type: random
# card type:
# amount: 1
# filter: rarity = "rare"
# card type:
# amount: 3
# filter: rarity = "uncommon"
# card type:
# amount: 11
# filter: rarity = "common"
############################################################## Keywords
############################# Keyword rules
keyword parameter type:
name: no parameter
keyword parameter type:
name: mana
match: [XYZ0-9WUBRGS/]+
# By jimrandomh
keyword parameter type:
name: cost
#insert as: word
match: ***:[XYZ0-9WUBRGS/]+|[^(.,\n]|([XYZ0-9WUBRGS/]+,)?[^(.,\n]*
keyword parameter type:
name: number
match: [XYZ0-9]+
keyword parameter type:
name: number (one, two, ...)
#insert as: number: one, two
match: [XYZ0-9]+
keyword parameter type:
name: number (a, two, ...)
#insert as: number: a, two
match: [XYZ0-9]+
keyword parameter type:
name: number (, two, ...)
#insert as: number: , two
match: [XYZ0-9]+
keyword parameter type:
name: action
#insert as: word
match: ***:[^(.,\n]+
keyword parameter type:
name: name
#insert as: word
match: ***:[^(.,\n]+
############################# All Magic keywords
# By JrEye and Neko_Asakami
keyword:
keyword: Flying
reminder: This creature can’t be blocked except by creatures with flying.
keyword:
keyword: Haste
reminder: This creature can attack and tap the turn it comes under your control.
keyword:
keyword: Fear
reminder: This creature can’t be blocked except by artifact creatures and/or black creatures.
keyword:
keyword: First strike
reminder: This creature deals combat damage before creatures without first strike.
keyword:
keyword: Enchant
separator: whitespace [ ]
parameter: name
reminder: Target a <param> as you play this. This card comes into play attached to that <param>.
keyword:
keyword: Cycling
separator: whitespace [ ]
parameter: cost
reminder: <param>, Discard this card: Draw a card.
keyword:
keyword: Trample
reminder: If this creature would deal enough combat damage to its blockers to destroy them, you may have it deal the rest of its damage to defending player.
keyword:
keyword: Banding
reminder: When declaring attackers or blockers this creature may group with others creatures with banding and one creature without banding. When damage is dealt, you decide where damage is dealt.
keyword:
keyword: Rampage
separator: whitespace [ ]
parameter: number
reminder: Whenever this creature becomes blocked, it gets +<param>/+<param> until end of turn for each creature blocking it beyond the first.
keyword:
keyword: Vigilance
reminder: Attacking doesn’t cause this creature to tap.
keyword:
keyword: Defender
reminder: This creature can’t attack.
keyword:
keyword: Cumulative upkeep
separator: whitespace [ ]
parameter: cost
reminder: At the beginning of your upkeep, put an age counter on this permanent, then sacrifice it unless you pay <param> for each age counter on it.
keyword:
keyword: Horsemanship
reminder: This creature can’t be blocked except by creatures with horsemanship.
keyword:
keyword: Phasing
reminder: At the beginning of your upkeep, put this and any cards attached to it in the phased-out zone. If this is already in the phased-out zone, return it and any card attached to it to play. If there were counters on this card when it phased out, put that many counters on it when it returns to play. This ability does not cause comes-into-play or leaves play abilities to trigger.
keyword:
keyword: Flanking
separator: whitespace [ ]
parameter: number
reminder: Whenever a creature without flanking blocks this creature, the blocking creature gets -<param>/-<param> until end of turn.
keyword:
keyword: Shadow
reminder: This creature can block or be blocked by only creatures with shadow.
keyword:
keyword: Buyback
separator: whitespace [ ]
parameter: name
reminder: You may pay <param> in addition to any other costs as you play this spell. If you do, put ~ into your hand instead of your graveyard as part of its resolution.
keyword:
keyword: Echo
reminder: At the beginning of your next upkeep after this permanent comes under your control, sacrifice it unless you pay its mana cost.
keyword:
keyword: Plainscycling
separator: whitespace [ ]
parameter: cost
reminder: <param>, Discard this card: Search your library for a Plains card, reveal it, and put it into your hand. Then shuffle your library.
keyword:
keyword: Islandcycling
separator: whitespace [ ]
parameter: cost
reminder: <param>, Discard this card: Search your library for a Island card, reveal it, and put it into your hand. Then shuffle your library.
keyword:
keyword: Swampcycling
separator: whitespace [ ]
parameter: cost
reminder: <param>, Discard this card: Search your library for a Swamp card, reveal it, and put it into your hand. Then shuffle your library.
keyword:
keyword: Mountaincycling
separator: whitespace [ ]
parameter: cost
reminder: <param>, Discard this card: Search your library for a Mountain card, reveal it, and put it into your hand. Then shuffle your library.
keyword:
keyword: Forestcycling
separator: whitespace [ ]
parameter: cost
reminder: <param>, Discard this card: Search your library for a Forest card, reveal it, and put it into your hand. Then shuffle your library.
keyword:
keyword: Fading
separator: whitespace [ ]
parameter: number (a, two, ...)
reminder: This comes into play with <param> fade counter(s) on it. At the beginning of your upkeep, remove a fade counter from it. If you can’t, sacrifice it.
keyword:
keyword: Kicker
separator: whitespace [ ]
parameter: cost
reminder: You may pay an additional <param> as you play this spell.
keyword:
keyword: Madness
separator: whitespace [ ]
parameter: cost
reminder: You may play this card for its madness cost at the time you discard it.
keyword:
keyword: Threshold
separator: dash [ - ]
parameter: action
reminder: You have threshold as long as seven or more cards are in your graveyard.
keyword:
keyword: Flashback
separator: whitespace [ ]
parameter: cost
reminder: You may play this card from your graveyard for its flashback cost. Then remove it from the game.
keyword:
keyword: Morph
separator: whitespace [ ]
parameter: cost
reminder: You may play this face down as a 2/2 creature for [3]. Turn it face up any time for its morph cost.
keyword:
keyword: Amplify
separator: whitespace [ ]
parameter: number (a, two, ...)
reminder: As this card comes into play, put <param> +1/+1 counter(s) on it for each creature that shares a type with this that you reveal in your hand.
keyword:
keyword: Double strike
reminder: This creature deals both first-strike and regular combat damage.
keyword:
keyword: Provoke
reminder: When this attacks, you may have target creature defending player controls untap and block it if able.
keyword:
keyword: Storm
reminder: When you play this spell, copy it for each spell played before it this turn. You may choose new targets for the copies.
keyword:
keyword: Affinity for
separator: whitespace [ ]
parameter: name
reminder: This spell costs <sym>1</sym> less to play for each <param> you control.
keyword:
keyword: Entwine
separator: whitespace [ ]
parameter: cost
reminder: Choose both if you pay the entwine cost.
keyword:
keyword: Equip
separator: whitespace [ ]
parameter: cost
reminder: <param>: Attach to target creature you control. Equip only as a sorcery. This card comes into play unattached and stays in play if the creature leaves play.
keyword:
keyword: Imprint
separator: dash [ - ]
parameter: action
reminder: The removed card is imprinted on this artifact.
keyword:
keyword: Modular
separator: whitespace [ ]
parameter: number (a, two, ...)
reminder: This comes into play with <param> +1/+1 counter(s) on it. When it’s put into a graveyard, you may put its +1/+1 counters on target artifact creature.
keyword:
keyword: Scry
separator: whitespace [ ]
parameter: number (, two, ...)
reminder: Look at the top <param> card(s) of your library. Put any number of them on the bottom of your library in any order and the rest on top of your library in any order.
keyword:
keyword: Sunburst
reminder: This comes into play with a +1/+1 counter on it for each color of mana used to pay its cost. If it is not a creature, use charge counters instead.
#keyword:
# keyword: Splice onto
# separator: whitespace [ ]
# parameter: name
# reminder: As you play a <param> spell, you may reveal this card from your hand and pay its splice cost. If you do, add this card’s effects to that spell.
keyword:
keyword: Splice onto Arcane
separator: whitespace [ ]
parameter: cost
reminder: As you play an Arcane spell, you may reveal this card from your hand and pay its splice cost. If you do, add this card’s effects to that spell.
keyword:
keyword: Offering
separator: dash [ - ]
parameter: name
reminder: You may play this card any time you could play an instant by sacrificing a <param> and paying the difference in mana costs between this and the sacrificed <param>. Mana cost includes color.
keyword:
keyword: Bushido
separator: whitespace [ ]
parameter: number
reminder: When this blocks or becomes blocked, it gets +<param>/+<param> until end of turn.
keyword:
keyword: Ninjutsu
separator: whitespace [ ]
parameter: cost
reminder: <param>, Return an unblocked attacker you control to hand: Put this card into play from your hand tapped and attacking.
keyword:
keyword: Soulshift
separator: whitespace [ ]
parameter: number
reminder: When this is put into a graveyard from play, you may return target Spirit card with converted mana cost <param> or less from you graveyard to your hand.
keyword:
keyword: Epic
reminder: For the rest of the game, you can’t play spells. At the beginning of each of your upkeeps, copy this spell except for its epic ability. If the spell has any targets, you may choose new targets for the copy.
keyword:
keyword: Convoke
reminder: Each creature you tap while playing this spell reduces its cost by <sym>1</sym> or by one mana of that creature’s color.
keyword:
keyword: Transmute
separator: whitespace [ ]
parameter: cost
reminder: <param>, Discard this card: Search your library for a card with the same converted mana cost as this card, reveal it, and put it into your hand. Then shuffle your library. Play only as a sorcery.
keyword:
keyword: Haunt
reminder: When this card is put into a graveyard from play, remove it from the game haunting target creature.
keyword:
keyword: Bloodthirst
separator: whitespace [ ]
parameter: number (a, two, ...)
reminder: If an opponent was dealt damage this turn, this creature comes into play with <param> +1/+1 counter(s) on it.
keyword:
keyword: Replicate
separator: whitespace [ ]
parameter: cost
reminder: When you play this spell, copy it for each time you paid its replicate cost. You may choose new targets for the copies.
keyword:
keyword: Islandwalk
reminder: This creature is unblockable as long as defending player controls a Island.
keyword:
keyword: Forestwalk
reminder: This creature is unblockable as long as defending player controls a Forest.
keyword:
keyword: Mountainwalk
reminder: This creature is unblockable as long as defending player controls a Mountain.
keyword:
keyword: Plainswalk
reminder: This creature is unblockable as long as defending player controls a Plains.
keyword:
keyword: Swampwalk
reminder: This creature is unblockable as long as defending player controls a Swamp.
keyword:
keyword: Legendary Landwalk
reminder: This creature is unblockable as long as defending player controls a Legendary land.
keyword:
keyword: Non-basic Landwalk
reminder: This creature is unblockable as long as defending player controls a non-basic land.
keyword:
keyword: Snow-covered Landwalk
reminder: This creature is unblockable as long as defending player controls a Snow-covered land.
keyword:
keyword: Denimwalk
reminder: If defending player is wearing any clothing made of denim, this creature is unblockable.
keyword:
keyword: Protection from
separator: whitespace [ ]
parameter: name
reminder: This creature can’t be blocked, targeted, dealt damage, or enchanted by anything <param>.
keyword:
keyword: Dredge
separator: whitespace [ ]
parameter: number (one, two, ...)
reminder: As long as you have at least <param> card(s) in your library, if you would draw a card, you may instead put exactly <param> card(s) from the top of your library into your graveyard and return this card from your graveyard to your hand.
keyword:
keyword: Graft
separator: whitespace [ ]
parameter: number (a, two, ...)
reminder: This creature comes into play with <param> +1/+1 counter(s) on it. Whenever another creature comes into play, you may move a +1/+1 counter from this creature onto it.
keyword:
keyword: Forecast
separator: whitespace [ ]
parameter: cost
reminder: Play this ability only during your upkeep and only once each turn.
mse version: 0.2.7
game: vanguard
short name: Standard
icon: card-sample.png
# Author: Wolfwood
# Based on: magic-new
############################################################## Extra scripts
init script:
# Use the normal tap symbol
small_mana_t := "mana_t.png"
############################################################## Set info fields
info style:
title:
padding left: 2
font:
size: 16
############################################################## Extra style
extra field:
type: boolean
name: popup mana symbols
description: Use the symbols of the casting cost line inside the text box as well
initial: no
############################################################## Card fields
card style:
############################# Background stuff
border color:
left: 0
top : 0
width: 375
height: 523
radius: 18
left width: 17
right width: 17
top width: 17
bottom width: 18
z index: -1
background:
left: 0
top: 0
width: 375
height: 523
z index: -2
render style: image
choice images:
normal: card.jpg
############################# Name line
name:
left: 74
top : 30
width: 224
height: 23
align: bottom center shrink-overflow
padding bottom: 0
z index: 1
font:
name: Matrix
size: 17
weight: bold
color: rgb(0,0,0)
############################# Image
image:
left: 46
top: 56
width: 281
height: 248
z index: 1
############################# Card type
type:
left: 53
top : 306
width: 268
height: 18
align: top center shrink-overflow
z index: 1
font:
name: Matrix
size: 13.5
color: rgb(0,0,0)
############################# Text box
rule text:
left: 46
top : 328
width: 280
height: 65
font:
name: MPlantin
italic name: MPlantin-Italic
size: 14
scale down to: 6
color: rgb(0,0,0)
symbol font:
name:
script:
if styling.popup_mana_symbols
then "magic-mana-large"
else "magic-mana-small"
size: 14
align: middle center
z index: 2
padding left: 4
padding top: 2
padding right: 4
padding bottom: 2
line height hard: 1.2
line height line: 1.5
flavor text:
left: 76
top : 393
width: 220
height: 73
font:
name: MPlantin-Italic
italic name: MPlantin-Italic
size: 10
scale down to: 6
color: rgb(0,0,0)
align: bottom left
z index: 2
padding left: 2
padding top: 2
padding right: 2
padding bottom: 2
############################# Life/Hand mod
lifemod:
z index: 4
left: 304
top: 433
width: 22
height: 32
align: center middle shrink-overflow
font:
name: Mplantin
size: 12
color: rgb(0,0,0)
handmod:
z index: 4
left: 43
top: 433
width: 22
height: 32
align: center middle shrink-overflow
font:
name: Mplantin
size: 12
color: rgb(0,0,0)
############################# Card sorting / numbering
############################# Copyright stuff
illustrator:
left: 40
top : 466
width: 295
height: 16
align: center
z index: 1
font:
name: Matrix
size: 10
color: rgb(0,0,0)
copyright line:
left: 40
top : 476
width: 295
height: 12
align: center
z index: 1
font:
name: MPlantin
size: 6
color: rgb(0,0,0)
width: 375
height: 523
dpi: 150
mse version: 0.2.7
short name: Vanguard
full name: Magic Vanguard
icon: card-sample.png
# Author : Wolfwood
# Most stuff is copy/pasted from magic.mse-game
############################################################## Functions & filters
# General functions
init script:
# correctly sort a mana symbol (no guild mana)
mana_sort := sort_rule(order: "XYZ[0123456789]S(WUBRG)")
# correctly sort guild mana
mana_sort_guild := replace_rule( # swap these:
match: "U/W|B/U|R/B|G/B|W/G|B/W|R/U|G/B|W/R|U/G",
in_context: "(^|[^/])<match>($|[^/])",
replace: {input[2] + "/" + input[0]})
mana_has_guild := sort_rule(order: "</|>") # Is there guild or half mana in the input?
# A mana cost can contain both normal and guild mana
mana_filter := to_upper + {
if mana_has_guild()!="" then mana_sort_guild()
else mana_sort()
}
# Like mana filter, only also allow tap symbols:
tap_filter := sort_rule(order: "<T>")
mana_filter_t := replace_rule( # Remove [] used for forcing mana symbols
match: "[\\[\\]]",
replace: ""
) + { tap_filter() + mana_filter() }
# Filters for the text box
# context in which mana symbols are found
mana_context :=
"(?ix) # case insensitive, ignore whitespace
(^|[[:space:]\"(]) # start of a word
( <match>: # G: something
| <match>, # G, tap: something
| <match>[ ]can[ ]be[ ]pay
| (pays?|additional|costs?|the # pay X. creatures cost 1 less. pay an additional G.
|adds?|pay(ed)?[ ](with|using)
)
([ ]either)? # pay either X or Y
([ ]<sym[^>]*>[XYZWUBRG0-9/|]+</sym[^>]*>[ ](and|or))* # pay X or Y
[ ]<match>
([,.)]|$ # (end of word)
|[ ][^ .,]*$ # still typing...
|[ ]( or | and | in | less | more | to ) # or next word is ...
)
)
| <param-mana><match></param-mana> # keyword argument that is declared as mana
| <param-cost><match></param-cost> # keyword argument that is declared as cost
| <param-cost><match>, # keyword argument that is declared as cost
";
# the rule text filter
# - adds mana symbols
# - makes text in parentheses italic
text_filter :=
# step 1 : remove all automatic tags
tag_remove_rule(tag: "<sym-auto>") +
tag_remove_rule(tag: "<i-auto>") +
# step 3 : expand shortcut words ~ and CARDNAME
replace_rule(
match: "~|~THIS~|CARDNAME",
in_context: "(^|[[:space:]]|\\()<match>",
replace: "<atom-cardname></atom-cardname>"
) +
# step 4 : fill in atom fields
tag_contents_rule(
tag: "<atom-cardname>",
contents: { if card.name=="" then "CARDNAME" else card.name }
) +
# step 4.5 : explict non mana symbols
replace_rule(
match: "\\][STXYZWUBRG0-9/|]+\\[",
replace: {"<nosym>" + mana_filter_t() + "</nosym>"} ) +
# step 5 : add mana & tap symbols
replace_rule(
match: "[STXYZWUBRG0-9/|]+",
in_context: mana_context,
replace: {"<sym-auto>" + mana_filter_t() + "</sym-auto>"} ) +
# step 5b : add explict mana symbols
replace_rule(
match: "\\[[STXYZWUBRG0-9/|]+\\]",
replace: {"<sym>" + mana_filter_t() + "</sym>"} ) +
# step 7 : italic reminder text
replace_rule(
match: "[(][^)\n]*[)]?",
in_context: "(^|[[:space:]])<match>|<atom-keyword><match></>",
replace: "<i-auto>&</i-auto>");
############################################################## Set fields
set field:
type: text
name: title
set field:
type: text
name: description
multi line: true
set field:
type: text
name: artist
set field:
type: text
name: copyright
set field:
type: color
name: border color
description: The default border color for cards
choice:
name: black
color: rgb(0,0,0)
choice:
name: white
color: rgb(255,255,255)
choice:
name: silver
color: rgb(128,128,128)
choice:
name: gold
color: rgb(200,180,0)
set field:
type: boolean
name: automatic card numbers
initial: no
description: Should card numbers be shown on the cards?
############################################################## Card fields
############################# Background stuff
card field:
type: color
name: border color
default: set.border_color
choice:
name: black
color: rgb(0,0,0)
choice:
name: white
color: rgb(255,255,255)
choice:
name: silver
color: rgb(128,128,128)
choice:
name: gold
color: rgb(200,180,0)
show statistics: false
card field:
type: choice
name: background
choice: normal
editable: false
############################# Name line
card field:
type: text
name: name
identifying: true
show statistics: false
card list visible: true
card list column: 1
card list width: 150
############################# Image
card field:
type: image
name: image
show statistics: false
############################# Card type
card field:
type: text
name: type
card list visible: true
card list column: 2
############################# Text box
card field:
type: text
name: rule text
script: text_filter(value)
show statistics: false
multi line: true
card field:
type: text
name: flavor text
show statistics: false
multi line: true
############################# PT
card field:
type: text
name: handmod
card list visible: true
card list column: 3
card list width: 50
card list name: hand
card field:
type: text
name: lifemod
card list visible: true
card list column: 4
card list width: 50
card list name: life
############################# Card sorting / numbering
card field:
type: text
name: card number
save value: false
script:
position(
of: card
in: set
order_by: { card.name }
)
+ "/" +
number_of_items(in: set)
card list visible: true
card list column: 10
card list width: 50
card list name: #
editable: false
show statistics: false
############################# Copyright stuff
card field:
type: text
name: illustrator
default: set.artist
card field:
type: text
name: copyright
default: set.copyright
editable: false
card field:
type: text
name: copyright line
save value: false
show statistics: false
script:
if set.automatic_card_numbers then
combined_editor(field1: card.copyright, separator: " ", field2: card.card_number)
else
forward_editor(field: card.copyright)
############################################################## Keywords
############################# Keyword rules
keyword parameter type:
name: no parameter
keyword parameter type:
name: mana
match: [XYZ0-9WUBRG/]+
keyword parameter type:
name: number
match: [0-9]+
keyword parameter type:
name: action
match: [^\n(.,]+
keyword parameter type:
name: name
match:
[^
(.,]+
############################# All Magic keywords
keyword:
keyword: Flying
reminder: This creature can’t be blocked except by creatures with flying.
keyword:
keyword: Haste
reminder: This creature can attack the turn it comes under your control.
keyword:
keyword: Fear
reminder: This creature can't be blocked except by artifact creatures and/or black creatures.
keyword:
keyword: First strike
reminder: This creature deals combat damage before creatures without first strike.
keyword:
keyword: Enchant
separator: whitespace [ ]
parameter: name
reminder: Target a <param> as you play this. This card comes into play attached to that <param>.
keyword:
keyword: Cycling
separator: whitespace [ ]
parameter: mana
reminder: <param>, Discard this card: Draw a card.
\ No newline at end of file
mse version: 0.2.7
game: vs
short name: Promotional
full name: Extended Art Promo
icon: card-sample.png
############################################################## Extra scripts
############################################################## Set info fields
info style:
title:
padding left: 2
font:
size: 16
automatic reminder text:
font:
size: 16
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
############################################################## Extra style
############################################################## Card fields
card style:
############################# Background stuff
card type:
left: 0
top: 0
width: 375
height: 523
z index: -2
render style: image
popup style: in place
choice images:
character: card-character.jpg
character dual: card-character-dual.jpg
character dual (new): card-character-dual.jpg
concealed: card-concealed.jpg
concealed dual: card-concealed-dual.jpg
concealed dual (new): card-concealed-dual.jpg
equipment: card-equipment.jpg
location: card-location.jpg
plot twist: card-plot-twist.jpg
card list colors: true
choice colors:
character: rgb(120,18,0)
character dual: rgb(120,18,0)
concealed: rgb(26,26,26)
concealed dual: rgb(26,26,26)
equipment: rgb(80,80,80)
location: rgb(30,110,0)
plot twist: rgb(10,0,110)
############################# Name line
name:
left: 85
top : 23
width: 224
height: 24
align: bottom shrink-overflow
font:
name: Percolator Expert
size: 22
color:
script: if is_concealed() then rgb(23,4,6)
else if is_equipment() then rgb(18,21,26)
else if is_location() then rgb(31,53,30)
else if is_plot_twist() then rgb(28,47,87)
else rgb(22,10,10)
symbol font:
name: vs-standard-arrow
size: 15
align: middle center
z index: 4
cost:
left: 31
top : 28
width: 13
height: 31
align: middle center
font:
name: Dirty Headline
size: 18
color:
script: if is_equipment() then rgb(240,221,146)
else if is_location() then rgb(193,240,250)
else if is_plot_twist() then rgb(161,174,238)
else rgb(255,210,110)
z index: 4
card symbol:
left: 315
top : 31
height: 30
width: 30
z index: 4
############################# Image
image:
left:
script: if is_dual() then 60 else 42
top: 73
width:
script: if is_dual() then 283 else 301
height: 342
mask:
script: if is_dual() then "image-mask-dual.png" else "image-mask.png"
z index: 1
############################# Type Bar
type text:
left: script: if is_dual() then 87 else 72
top: 395
width: script: if is_dual() then 243 else 256
height: 20
font:
name: Eurostile
size: 11
color: rgb(0,0,0)
weight: bold
visible: script: is_character()
align: middle center
z index: 3
type bar:
left: script: if is_dual() then 87 else 72
top: 395
width: script: if is_dual() then 243 else 256
height: 20
visible:
script: card.type_text != ""
render style: image
choice images:
type bar: type-bar.png
z index: 2
############################# Version
version:
left: 85
top : 44
width: 224
height: 18
align: top shrink-overflow
z index: 4
font:
name: Percolator Expert
size: 14
color:
script: if is_concealed() then rgb(23,4,6)
else if is_equipment() then rgb(18,21,26)
else if is_location() then rgb(31,53,30)
else if is_plot_twist() then rgb(28,47,87)
else rgb(22,10,10)
separator color: rgb(128,128,128)
symbol font:
name: vs-standard-arrow
size: 8
align: middle center
############################# Card ID
number:
left: 136
top : 495
width: 30
height: 13
z index: 3
font:
name: Eurostile
size: 8
color:
script: if card.rarity=="common" then rgb(255,255,255)
else if card.rarity=="uncommon" then rgb(80,174,255)
else if card.rarity=="rare" then rgb(255,210,60)
else if card.rarity=="promo" then rgb(255,20,20)
else rgb(255,255,255)
weight: bold
rarity:
left: 135
top: 489
width: 50
height: 16
z index: 4
render style: image hidden
choice images:
common: rarity-common.png
uncommon: rarity-uncommon.png
rare: rarity-rare.png
promo: rarity-promo.png
############################# Affiliation
team 2:
left: 18
top : 100
height: 245
width: 28
angle: 90
font:
name: Percolator Expert
size: 19
scale down to: 18
color: rgb(245,230,197)
symbol font:
name: vs-standard-arrow
size: 18
align: middle center
visible: is_dual()
align: center shrink-overflow
z index: 4
padding left: 2
padding top: 2
padding right: 2
padding bottom: 2
############################# FlightRange
symbols:
left: 20
top :
script: if is_dual() then 365 else 320
height:
script: if is_dual() then 34 else 17
width:
script: if is_dual() then 38 else 19
z index: 4
render style: image
choice images:
flight:
script: if is_dual() then "flight.png" else "flight2.png"
ongoing:
script: if is_dual() then "ongoing.png" else "ongoing2.png"
range:
script: if is_dual() then "range.png" else "range2.png"
direction: vertical
spacing: 0
############################# Text box
rule text:
left:
script: if is_dual() then 95 else 90
top : 430
width: 265
height: 50
mask: text-mask.png
font:
name: Eurostile
italic name: EurostileObl-Normal
size: 8
scale down to: 4
color: rgb(0,0,0)
symbol font:
name: vs-standard-arrow
size: 8
align: middle center
align: top left
z index: 4
padding left: 2
padding top: 2
padding right: 2
padding bottom: 2
line height hard: 1.4
flavor text:
left:
script: if is_dual() then 95 else 90
top : 440
width: 265
height: 50
mask: flavor-text-mask.png
font:
name: EurostileObl-Normal
size: 8
scale down to: 4
color: rgb(0,0,0)
align: bottom left
z index: 3
padding left: 2
padding top: 2
padding right: 2
padding bottom: 2
line height hard: 1.2
############################# Atack/defence
attack:
z index: 4
left: 50
top: 435
width: 25
height: 32
visible: script: is_character()
z index: 4
align: left middle
font:
name: Dirty Headline
size: 20
color: rgb(255,210,110)
shadow color: rgb(0,0,0)
shadow displacement x: 2
shadow displacement y: 0
defence:
z index: 4
left: 50
top: 471
width: 25
height: 32
visible: script: is_character()
z index: 4
align: left middle
padding bottom: -4
font:
name: Dirty Headline
size: 20
color: rgb(200,213,225)
shadow color: rgb(0,0,0)
shadow displacement x: -2
shadow displacement y: 0
############################# Card sorting / numbering
############################# Copyright stuff
illustrator:
left: 122
top : 417
width: 170
height: 10
align: center top
z index: 4
font:
name: Eurostile
size: 6
weight: bold
color: rgb(255,255,255)
copyright:
left: 195
top : 495
width: 110
height: 13
z index: 4
align: middle left
font:
name: Eurostile
size: 4
color: rgb(255,255,255)
width: 375
height: 523
dpi: 150
mse version: 0.2.7
# Symbol font for arrow symbol
image font size: 135
horizontal space: 0
symbol:
code: ->
image: arrow.png
symbol:
code: @
image: diamond.png
mse version: 0.2.7
game: vs
short name: Standard
full name: Normal VS cards
icon: card-sample.png
############################################################## Extra scripts
############################################################## Set info fields
info style:
title:
padding left: 2
font:
size: 16
automatic reminder text:
font:
size: 16
render style: both
choice images:
yes: script: buildin_image("bool_yes")
no: script: buildin_image("bool_no")
############################################################## Extra style
############################################################## Card fields
card style:
############################# Background stuff
card type:
left: 0
top: 0
width: 375
height: 523
z index: -2
render style: image
popup style: in place
choice images:
character: card-character.jpg
character dual: card-character-dual.jpg
character dual (new): card-character-dual-new.jpg
concealed: card-concealed.jpg
concealed dual: card-concealed-dual.jpg
concealed dual (new): card-concealed-dual-new.jpg
equipment: card-equipment.jpg
location: card-location.jpg
plot twist: card-plot-twist.jpg
card list colors: true
choice colors:
character: rgb(120,18,0)
character dual: rgb(120,18,0)
concealed: rgb(26,26,26)
concealed dual: rgb(26,26,26)
equipment: rgb(80,80,80)
location: rgb(30,110,0)
plot twist: rgb(10,0,110)
############################# Name line
name:
left: 90
top : 25
width: 219
height: 24
align: bottom shrink-overflow
padding bottom: 0
z index: 4
font:
name: Percolator Expert
size: 22
color:
script: if is_concealed() then rgb(23,4,6)
else if is_equipment() then rgb(18,21,26)
else if is_location() then rgb(31,53,30)
else if is_plot_twist() then rgb(28,47,87)
else rgb(22,10,10)
symbol font:
name: vs-standard-arrow
size: 15
align: middle center
cost:
left: 33
top : 28
width: 25
height: 41
align: middle center
font:
name: Dirty Headline
size: 24
color:
script: if is_equipment() then rgb(240,221,146)
else if is_location() then rgb(193,240,250)
else if is_plot_twist() then rgb(161,174,238)
else rgb(255,210,110)
z index: 4
padding top: 0
card symbol:
left: 315
top : 31
height: 30
width: 30
z index: 4
############################# Image
image:
left: 65
top: 78
width:
script: if is_dual() then 249 else 282
height: 241
mask:
script: if is_dual() then "image-mask-dual.png" else "image-mask.png"
z index: 1
############################# Type Bar
type text:
left: 72
top: 299
width:
script: if is_dual() then 235 else 268
height: 20
font:
name: Eurostile
size: 11
color: rgb(0,0,0)
weight: bold
align: middle center
z index: 3
type bar:
left: 72
top: 299
width: script: if is_dual() then 235 else 268
height: 20
visible:
script: card.type_text != ""
render style: image
choice images:
type bar: type-bar.png
z index: 2
############################# Version
version:
left: 90
top : 46
width: 219
height: 18
align: top shrink-overflow
z index: 4
font:
name: Percolator Expert
size: 14
color:
script: if is_concealed() then rgb(23,4,6)
else if is_equipment() then rgb(18,21,26)
else if is_location() then rgb(31,53,30)
else if is_plot_twist() then rgb(28,47,87)
else rgb(22,10,10)
separator color: rgb(128,128,128)
############################# Card ID
number:
left: 136
top : 485
width: 30
height: 22
z index: 3
font:
name: Eurostile
size: 10
color:
script: if card.rarity=="common" then rgb(255,255,255)
else if card.rarity=="uncommon" then rgb(80,174,255)
else if card.rarity=="rare" then rgb(255,210,60)
else if card.rarity=="promo" then rgb(255,20,20)
else rgb(255,255,255)
weight: bold
rarity:
left: 135
top: 484
width: 50
height: 16
z index: 4
render style: image hidden
choice images:
common: rarity-common.png
uncommon: rarity-uncommon.png
rare: rarity-rare.png
promo: rarity-promo.png
############################# Affiliation
team:
left: 23
top : 100
height:
script: if is_new_dual() then 240 else 200
width: 28
angle: 90
font:
name: Percolator Expert
size: 19
scale down to: 18
color: rgb(245,230,197)
symbol font:
name: vs-standard-arrow
size: 18
align: middle center
align: middle center
z index: 4
padding left: 2
padding top: 2
padding right: 2
padding bottom: 2
team 2:
left: 325
top : 100
height: 200
width: 28
angle: 270
font:
name: Percolator Expert
size: 19
scale down to: 18
color: rgb(245,230,197)
symbol font:
name: vs-standard-arrow
size: 18
align: middle center
visible: is_dual()
align: middle center
z index: 4
padding left: 2
padding top: 2
padding right: 2
padding bottom: 2
############################# FlightRange
symbols:
left: 25
top :
script: if is_new_dual() then 366 else 322
height: 67
width: 38
z index: 4
render style: image
choice images:
flight: flight.png
ongoing: ongoing.png
range: range.png
direction: vertical
spacing: 0
############################# Text box
rule text:
left: 84
top : 336
width: 272
height: 120
mask: text-mask.png
font:
name: Eurostile
italic name: EurostileObl-Normal
size: 11
scale down to: 8
color: rgb(0,0,0)
symbol font:
name: vs-standard-arrow
size: 11
align: middle center
align: top left
z index: 4
padding left: 2
padding top: 2
padding right: 2
padding bottom: 2
line height hard: 1.4
flavor text:
left: 84
top : 356
width: 272
height: 120
mask: flavor-text-mask.png
font:
name: EurostileObl-Normal
size: 11
scale down to: 8
color: rgb(0,0,0)
align: bottom left
z index: 3
padding left: 2
padding top: 2
padding right: 2
padding bottom: 2
line height hard: 1.2
############################# Atack/defence
attack:
z index: 4
left: 50
top: 430
width: 30
height: 37
visible: script: is_character()
z index: 4
align: left middle
font:
name: Dirty Headline
size: 24
color: rgb(255,210,110)
shadow color: rgb(0,0,0)
shadow displacement x: 2
shadow displacement y: 0
defence:
z index: 4
left: 50
top: 468
width: 30
height: 37
visible: script: is_character()
z index: 4
align: left middle
padding bottom: -4
font:
name: Dirty Headline
size: 24
color: rgb(200,213,225)
shadow color: rgb(0,0,0)
shadow displacement x: -2
shadow displacement y: 0
############################# Card sorting / numbering
############################# Copyright stuff
illustrator:
left: 122
top : 320
width: 170
height: 16
align: center top
z index: 4
font:
name: Eurostile
size: 9
weight: bold
color: rgb(255,255,255)
copyright:
left: 195
top : 480
width: 110
height: 26
z index: 4
align: middle left
font:
name: Eurostile
size: 6
color: rgb(255,255,255)
width: 375
height: 523
dpi: 150
mse version: 0.2.7
short name: VS System
icon: card-back.png
############################################################## Functions & filters
## Copied and Pasted from magic-new.mse-style/style, with a few modifications
# General functions
init script:
# add symbols to text
symbol_filter :=
# step 5a : add arrow/diamond/dot symbols
replace_rule(
match: "->|@",
replace: "<sym-auto>&</sym-auto>" ) +
# step 5b : dot separator
replace_rule(
match: "`|::",
replace: "•")+
# step 5c : longdash for keywords
replace_rule(
match: "--",
replace: "—")
# the rule text filter
# - adds -> symbols
# - adds @ symbols
# - adds :: symbols
# - makes text in parentheses italic
text_filter :=
# step 1 : remove all automatic tags
tag_remove_rule(tag: "<sym-auto>") +
tag_remove_rule(tag: "<i-auto>") +
tag_remove_rule(tag: "<b-auto>") +
# step 2 : reminder text for keywords
#keyword_rule(
# expand_reminder_game: { set.automatic_reminder_text == "yes" },
# expand_reminder_set: { set.automatic_reminder_text != "no" },
# before: " (",
# after: ")"
# ) +
# step 3 : expand shortcut words ~ and CARDNAME
replace_rule(
match: "~|~THIS~|CARDNAME",
in_context: "(^|[[:space:]])<match>",
replace: "<atom-cardname></atom-cardname>"
) +
# step 5 : symbols
symbol_filter +
# step 4 : fill in atom fields
tag_contents_rule(
tag: "<atom-cardname>",
contents: { if card.name=="" then "CARDNAME" else card.name }
) +
# step 7 : italic reminder text
replace_rule(
match: "[(][^)\n]*[)]?",
in_context: "(^|[[:space:]])<match>|<atom-keyword><match></atom-keyword>",
replace: "<i-auto>&</i-auto>") +
# step 7b : Bold keywords
replace_rule(
match: "<kw[^>]*>[^<]+</",
replace: "<b-auto>&</b-auto>")
# Determine type of card
dual_name := filter_rule(match: "•")
card_type := {
if card.team == "Location" then "location"
else if card.team == "Equipment" then "equipment"
else if card.team == "Plot Twist" then "plot twist"
else if card.team_2 != "" then "character dual"
else if dual_name(card.team) != "" then "character dual (new)"
else "character"
}
# Default 'team' name of card
team := {
if is_location() then "Location"
else if is_equipment() then "Equipment"
else if is_plot_twist() then "Plot Twist"
else ""
}
# Only pass numbers
only_numbers := filter_rule(match: "[0-9]")
############### Type of card
is_dual := {
card.card_type == "character dual" or
card.card_type == "concealed dual"
}
is_new_dual := {
card.card_type == "character dual (new)" or
card.card_type == "concealed dual (new)"
}
is_character := {
card.card_type == "character" or
card.card_type == "character dual" or
card.card_type == "character dual (new)" or
card.card_type == "concealed" or
card.card_type == "concealed dual" or
card.card_type == "concealed dual (new)"
}
is_concealed := {
card.card_type == "concealed" or
card.card_type == "concealed dual" or
card.card_type == "concealed dual (new)"
}
is_equipment := {
card.card_type == "equipment"
}
is_location := {
card.card_type == "location"
}
is_plot_twist := {
card.card_type == "plot twist"
}
is_ch_or_pt := {
is_character() or is_plot_twist()
}
############################################################## Set fields
set field:
type: text
name: title
description: This information will not appear on the card.
set field:
type: text
name: code
description: Recommended only 3 Capital digits. Will appear before card number. ex: MOR-1
set field:
type: text
name: description
multi line: true
description: This information will not appear on the card.
set field:
type: text
name: artist
description: Editting this will set 1 artist for all the cards and will appear in the artist bar below the picture.
set field:
type: text
name: copyright
description: Copytight information. This information will not appear on the card.
set field:
type: choice
name: automatic reminder text
choice: yes
choice: only for custom keywords
choice: no
initial: no
description: Should reminder text be added to keywords by default? Note: you can enable/disable reminder text by right clicking the keyword.
############################################################## Card fields
############################# Background stuff
card field:
type: choice
name: card type
choice: character
choice: character dual
choice: character dual (new)
choice: concealed
choice: concealed dual
choice: concealed dual (new)
choice: equipment
choice: location
choice: plot twist
default: card_type()
show statistics: false
############################# Name line
card field:
type: text
name: name
script: symbol_filter(value)
identifying: true
show statistics: false
card list visible: true
card list column: 1
description: The name of the card, use @ for a diamond
card field:
type: text
name: cost
script: only_numbers(value)
card list visible: true
card list column: 3
card list alignment: right
card list width: 37
card list name: Cost
card field:
type: image
name: card symbol
show statistics: false
description: Double click to load a symbol for the card
############################# Image
card field:
type: image
name: image
show statistics: false
############################# Type Bar
card field:
type: text
name: type text
description: The type of the card
card field:
type: choice
name: type bar
choice: type bar
editable: false
############################# Version
card field:
type: text
name: version
card list visible: true
card list column: 2
script: symbol_filter(value)
############################# Card ID
card field:
type: text
name: number
script:
set.code
+ "-" +
position(
of: card
in: set
order_by: {
card.name
})
card list visible: true
card list column: 6
card list width: 55
card list name: #
editable: false
card field:
type: choice
name: rarity
choice: common
choice: uncommon
choice: rare
choice: promo
############################# Affiliation
card field:
type: text
name: team
default: team()
script: symbol_filter(value)
description: The team of the card, use ` for a separator for dual cards
card field:
type: text
name: team 2
script: symbol_filter(value)
description: The second affiliation of the card (for dual cards)
############################# FlightRange
card field:
type: multiple choice
name: symbols
choice: flight
choice: range
choice: ongoing
description: Symbols for this card (flight/range/ongoing), multiple symbols can be selected
############################# Text box
card field:
type: text
name: rule text
script: text_filter(value)
show statistics: false
multi line: true
description: Rule text of the card, use @ for a diamond, -> for an arrow and :: for a dot
card field:
type: text
name: flavor text
show statistics: false
multi line: true
############################# Atack / Defense
card field:
type: text
name: attack
save value: true
card list visible: true
card list column: 4
card list width: 33
card list name: ATK
card field:
type: text
name: defence
save value: true
card list visible: true
card list column: 5
card list width: 33
card list name: DEF
############################# Copyright stuff
card field:
type: text
name: illustrator
default: set.artist
card field:
type: text
name: copyright
default: set.copyright
multi line: true
############################################################## Word lists
# Doesn't do anything yet
#word list:
# name: affiliation or type
# word: anti-matter
# word: arkham inmates
# word: darkseid's elite
# word: deathstroke
# word: emerald enemies
# word: fearsome five
# word: gotham knights
# word: green lantern
# word: injustice gang
# word: jla
# word: jli
# word: league of assassins
# word: manhunter
# word: new gods
# word: revenge squad
# word: secret society
# word: shadowpact
# word: team superman
# word: teen titans
# word: avengers
# word: brotherhood
# word: crimelords
# word: doom
# word: fantastic four
# word: kang council
# word: marvel knights
# word: masters of evil
# word: negative zone
# word: sentinel
# word: sinister syndicate
# word: skrull
# word: spider-friends
# word: squadron supreme
# word: thunderbolts
# word: underworld
# word: x-men
# word: x-statix
# word: equipment
# word: location
# word: plot twist
############################################################## Keywords
############################# Keyword rules
keyword parameter type:
name: no parameter
keyword parameter type:
name: number
match: [0-9]+
keyword parameter type:
name: action
match: [^\n(.,]+
keyword parameter type:
name: name
match:
[^
(.,]+
############################# All VS System keywords
keyword:
keyword: Concealed—Optional.
reminder: You may have ~THIS~ come into play in the hidden area.
keyword:
keyword: Concealed.
reminder: This character comes into play in the hidden area.
keyword:
keyword: Loyalty—Reveal.
reminder: If you don’t control a character that shares an affiliation with ~THIS~, then as an additional cost to recruit ~THIS~, reveal a character card from your hand or resource row that shares an affiliation with ~THIS~.
keyword:
keyword: Loyalty.
reminder: As an additional cost to recruit ~THIS~, you must control a character that shares a team affiliation with ~THIS~.
keyword:
keyword: Evasion.
reminder: Stun ~THIS~ -> Recover ~THIS~ at the start of the recovery phase this turn.
keyword:
keyword: Invulnerability.
reminder: Whenever ~THIS~ becomes stunned, you do not take stun damage. Breakthrough is applied normally.
keyword:
keyword: Cosmic:
reminder:
keyword:
keyword: Boost
separator: whitespace [ ]
parameter: text
reminder:
keyword:
keyword: Willpower
separator: whitespace [ ]
parameter: number
reminder:
keyword:
keyword: Leader:
reminder:
keyword:
keyword: Ally:
reminder:
keyword:
keyword: Unique.
reminder:
keyword:
keyword: Ongoing:
reminder:
keyword:
keyword: Reservist.
reminder: You may recruit this card from your resource row. If you do, you may put a card from your hand face down into your resource row.
keyword:
keyword: Transferable.
reminder: During your recruit step you may unequip ~THIS~ and equip it to another character you control.
keyword:
keyword: Vengeance:
reminder: This ability is activated whenever ~THIS~ is stunned.
keyword:
keyword: Backup:
reminder: This ability can only be used during the build step.
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment