Initial commit
This commit is contained in:
579
data/magic-m15-spellbook.mse-style/style
Normal file
579
data/magic-m15-spellbook.mse-style/style
Normal file
@@ -0,0 +1,579 @@
|
||||
mse version: 2.0.0
|
||||
game: magic
|
||||
short name: M15 Spellbook
|
||||
full name: w/Flavor Bar
|
||||
icon: card-sample.png
|
||||
installer group: magic/m15 style/normal cards
|
||||
position hint: 018
|
||||
|
||||
version: 2018-05-03
|
||||
depends on:
|
||||
package: magic.mse-game
|
||||
version: 2014-06-25
|
||||
depends on:
|
||||
package: magic-default-image.mse-include
|
||||
version: 2007-09-23
|
||||
depends on:
|
||||
package: magic-watermarks.mse-include
|
||||
version: 2007-09-23
|
||||
depends on:
|
||||
package: magic-identity-new.mse-include
|
||||
version: 2012-01-22
|
||||
depends on:
|
||||
package: magic-mana-small-spellbook.mse-symbol-font
|
||||
version: 2018-05-07
|
||||
depends on:
|
||||
package: magic-mana-large.mse-symbol-font
|
||||
version: 2007-09-23
|
||||
depends on:
|
||||
package: magic-mana-small.mse-symbol-font
|
||||
version: 2007-09-23
|
||||
|
||||
card width: 375
|
||||
card height: 523
|
||||
card dpi: 150
|
||||
##### Flavor bar image by SirnightNano
|
||||
##### Blue spellbook image by HQ Cardgen
|
||||
##### Other images colorshifted by Cajun
|
||||
############################################################## Extra scripts
|
||||
init script:
|
||||
# Load scripts for image box
|
||||
include file: /magic-default-image.mse-include/scripts
|
||||
|
||||
# Should hybrids have a grey name?
|
||||
mask_hybrid_with_land := { styling.grey_hybrid_name }
|
||||
|
||||
#Should multicolor lands with basic land types have a colored name?
|
||||
mask_multi_land_with_color := { styling.colored_multicolor_land_name }
|
||||
|
||||
template_prefix := [card: "" pt: "" identity: "/magic-identity-new.mse-include/"]
|
||||
template_suffix := [card: "card.jpg" pt: "pt.png" identity: "identity.png"]
|
||||
template := { template_prefix[type] + input + template_suffix[type] }
|
||||
land_template := { template_prefix[type] + input + template_suffix[type] }
|
||||
# Use land templates for previews because they show more contrast
|
||||
hybrid_previews := "land,hybrid"
|
||||
|
||||
# Use the normal tap symbol
|
||||
mana_t := {
|
||||
if styling.tap_symbol == "old" then "old"
|
||||
else if styling.tap_symbol == "diagonal T" then "older"
|
||||
else "new"
|
||||
}
|
||||
|
||||
# Use guild mana symbols?
|
||||
guild_mana := { styling.use_guild_mana_symbols }
|
||||
|
||||
# Is the card a promo card?
|
||||
is_promo := { styling.promo }
|
||||
mana_sort := {
|
||||
if styling.unsorted_casting_cost then
|
||||
input
|
||||
else
|
||||
sort_text@(order: "XYZI[0123456789]HSCA(WUBRG)")()
|
||||
}
|
||||
has_identity := { styling.color_indicator_dot }
|
||||
is_unsorted := {styling.remove_from_autocount}
|
||||
|
||||
top_of_textbox := {if styling.chop_top != "" then (335 - (-styling.chop_top)) else 335 }
|
||||
bottom_of_textbox := {if styling.chop_bottom != "" then (460 - styling.chop_bottom) else 460 }
|
||||
paragraph_count := filter_text@(match:"\n")
|
||||
hard_paragraph_count :=
|
||||
replace@(match:"<soft-line>\n", replace:"")+
|
||||
filter_text@(match:"\n")
|
||||
soft_break_filter :=
|
||||
filter_text @(match:"<", in_context: "<match>soft-line>")
|
||||
flavor_text := {remove_tags(card.flavor_text) + "\n"}
|
||||
length_of_flavor := { to_int(length(split_text(match:"\n", flavor_text()).0)) }
|
||||
hard_flavor_break := { if not contains(card.flavor_text, match:"\n") then 0 else if contains(card.flavor_text, match:"<soft-line>\n") then 0 else if lines_of_rules() >= 3 then -3 else -2}
|
||||
char_per_line := { (if card_style.text.content_lines == "9" then 60 else if card_style.text.content_lines == "8" then 52 else if card_style.text.content_lines == "7" then 49 else if card_style.text.content_lines == "6" then 46 else 42.5) + (if card_style.text.content_lines < 7 then (4*chop_correction())/line_height())}
|
||||
chop_correction := { (if styling.chop_bottom != "" then styling.chop_bottom else 0) }
|
||||
lines_of_flavor := { to_int((length_of_flavor() / char_per_line()) + 0.99) + (if length(split_text(match:"\n", flavor_text()).1) >= max(43,char_per_line()-4) then 2 else if split_text(match:"\n", flavor_text()).1 != "" then length(soft_break_filter(card.flavor_text)) else 0) + length(filter_text(styling.flavor_bar_offset, match:"u")) - length(filter_text(styling.flavor_bar_offset, match:"d")) + (if contains(card.notes, match:"!fbu") then 1 else 0)}
|
||||
lines_of_rules := { card_style.text.content_lines - lines_of_flavor() }
|
||||
line_height := {(card_style.text.content_height / card_style.text.content_lines)}
|
||||
height_of_flavor := { lines_of_flavor() * line_height() }
|
||||
padding_height := { 0.5*(bottom_of_textbox() - top_of_textbox() - card_style.text.content_height) }
|
||||
linebreak_height := { 2*length(hard_paragraph_count(card.rule_text)) }
|
||||
uneven_correction := { if lines_of_flavor() == 1 then max(4, (card_style.text.content_lines - (2*lines_of_flavor()))) else (card_style.text.content_lines - (2*lines_of_flavor())) }
|
||||
bar_offset := {if styling_offset() == "-" then 0 else if styling_offset() != "" then -styling_offset() else 0}
|
||||
styling_offset := { replace(styling.flavor_bar_offset, match:"(u|d)+", replace: "") }
|
||||
bar_equation := { top_of_textbox() + padding_height() + card_style.text.content_height - height_of_flavor() + linebreak_height() - uneven_correction() + correction_coeff() + bar_offset() + hard_flavor_break() +1 }
|
||||
correction_coeff := {
|
||||
(if lines_of_rules() == 1 then
|
||||
(if lines_of_flavor() == 1 then 3
|
||||
else if lines_of_flavor() == 2 then 1
|
||||
else if lines_of_flavor() == 3 then 1.5
|
||||
else if lines_of_flavor() == 4 then 0
|
||||
else 5 - lines_of_flavor())
|
||||
else if lines_of_rules() == 2 and linebreak_height() == 2 then
|
||||
(if lines_of_flavor() == 1 then 1
|
||||
else if lines_of_flavor() == 2 then 1
|
||||
else if lines_of_flavor() == 3 then 2
|
||||
else if lines_of_flavor() == 4 then 2
|
||||
else 3)
|
||||
else if lines_of_rules() == 2 then
|
||||
(if lines_of_flavor() == 1 then 1
|
||||
else if lines_of_flavor() == 2 then 0
|
||||
else if lines_of_flavor() == 3 then 0
|
||||
else if lines_of_flavor() == 4 then 0
|
||||
else -1)
|
||||
else if lines_of_rules() == 3 and linebreak_height() == 2 then
|
||||
(if lines_of_flavor() == 1 then 0
|
||||
else if lines_of_flavor() == 2 then 0
|
||||
else if lines_of_flavor() == 3 then 1
|
||||
else if lines_of_flavor() == 4 then 1
|
||||
else 2)
|
||||
else if lines_of_rules() == 3 then
|
||||
(if lines_of_flavor() == 1 then 0
|
||||
else if lines_of_flavor() == 2 then -1
|
||||
else if lines_of_flavor() == 3 then -0.5
|
||||
else if lines_of_flavor() == 4 then -1
|
||||
else 0)
|
||||
else if lines_of_rules() == 4 and linebreak_height() == 2 then
|
||||
(-2 + lines_of_flavor())
|
||||
else if lines_of_rules() == 4 then
|
||||
(if lines_of_flavor() == 1 then -1
|
||||
else if lines_of_flavor() == 2 then 0
|
||||
else if lines_of_flavor() == 3 then -0.5
|
||||
else -1)
|
||||
else if lines_of_rules() == 5 and linebreak_height() == 4 then
|
||||
(-5 + lines_of_flavor())
|
||||
else if lines_of_rules() == 5 and linebreak_height() == 2 then
|
||||
(-2 + lines_of_flavor())
|
||||
else if lines_of_rules() == 5 then
|
||||
(2 - lines_of_flavor())
|
||||
else if lines_of_rules() == 6 and linebreak_height() == 2 then
|
||||
(-1 - lines_of_flavor())
|
||||
else if lines_of_rules() == 6 then
|
||||
(2 - lines_of_flavor())
|
||||
else 0) + (if linebreak_height() >= 4 then 0.5*linebreak_height()-1)
|
||||
}
|
||||
############################################################## Set info fields
|
||||
set info style:
|
||||
symbol:
|
||||
variation:
|
||||
name: invertedcommon
|
||||
border radius: 0.10
|
||||
fill type: solid
|
||||
fill color: rgb(255,255,255)
|
||||
border color: rgb(0,0,0)
|
||||
############################################################## Extra style options
|
||||
styling field:
|
||||
type: text
|
||||
name: chop top
|
||||
description: Shrinks the textbox from the top.
|
||||
styling field:
|
||||
type: text
|
||||
name: chop bottom
|
||||
description: Shrinks the textbox from the bottom.
|
||||
styling field:
|
||||
type: text
|
||||
name: flavor bar offset
|
||||
description: Moves the flavor bar.
|
||||
styling field:
|
||||
type: boolean
|
||||
name: use flavor bar
|
||||
description: Enables the flavor bar.
|
||||
styling field:
|
||||
type: boolean
|
||||
name: black on black
|
||||
description: Uses black font on the monoblack text box. (Default white)
|
||||
initial: no
|
||||
styling field:
|
||||
type: boolean
|
||||
name: use holofoil stamps
|
||||
description: Change to no to disable rare holofoil stamps
|
||||
styling field:
|
||||
type: boolean
|
||||
name: color indicator dot
|
||||
description: Use the color indicator dot
|
||||
initial: no
|
||||
styling field:
|
||||
type: boolean
|
||||
name: remove from autocount
|
||||
description: Removes the automatic card number for specific cards, to allow for overcounted cards like in Planeswalker Decks.
|
||||
initial: no
|
||||
styling field:
|
||||
type: boolean
|
||||
name: grey hybrid name
|
||||
description: Use a grey background for the name and type line on hybrid cards. This is done on real cards.
|
||||
styling field:
|
||||
type: boolean
|
||||
name: unsorted casting cost
|
||||
description: Disables automatic mana symbol sorting.
|
||||
initial: no
|
||||
styling field:
|
||||
type: boolean
|
||||
name: colored multicolor land name
|
||||
description: Use a colored background for the name and type on multicolor land cards with a basic land type. This is done on real cards.
|
||||
styling field:
|
||||
type: boolean
|
||||
name: use guild mana symbols
|
||||
description: Use the Ravnica guild symbols instead of the official half/half circles for hybrid mana.
|
||||
initial: no
|
||||
styling field:
|
||||
type: choice
|
||||
name: tap symbol
|
||||
description: What tap and untap symbols should be used on cards?
|
||||
initial: modern
|
||||
choice: modern
|
||||
choice: old
|
||||
choice: diagonal T
|
||||
styling field:
|
||||
type: package choice
|
||||
name: text box mana symbols
|
||||
match: magic-mana-*.mse-symbol-font
|
||||
initial: magic-mana-small.mse-symbol-font
|
||||
styling field:
|
||||
type: choice
|
||||
name: center text
|
||||
description: When to center text (short text only means only on one-line cards with no flavor text)
|
||||
choice: always
|
||||
choice: short text only
|
||||
choice: never
|
||||
initial: never
|
||||
styling field:
|
||||
type: boolean
|
||||
name: promo
|
||||
description: Is this card a promo card, with the "P" rarity?
|
||||
initial: no
|
||||
styling field:
|
||||
type: boolean
|
||||
name: inverted common symbol
|
||||
description: Should the common rarity symbol be inverted, like in Coldsnap?
|
||||
initial: no
|
||||
styling field:
|
||||
type: package choice
|
||||
name: overlay
|
||||
description: Should there be an overlay applied, such as foil?
|
||||
match: magic-overlay-*.mse-include
|
||||
required: false
|
||||
styling style:
|
||||
use guild mana symbols:
|
||||
choice images:
|
||||
yes: /magic-mana-small.mse-symbol-font/mana_guild_rg.png
|
||||
no: /magic-mana-small.mse-symbol-font/mana_rg.png
|
||||
tap symbol:
|
||||
render style: both
|
||||
choice images:
|
||||
modern: /magic-mana-large.mse-symbol-font/mana_t.png
|
||||
old: /magic-mana-large.mse-symbol-font/mana_t_old.png
|
||||
diagonal T: /magic-mana-large.mse-symbol-font/mana_t_older.png
|
||||
center text:
|
||||
render style: both
|
||||
choice images:
|
||||
always: /magic.mse-game/icons/center-all-text.png
|
||||
short text only: /magic.mse-game/icons/center-short-text.png
|
||||
never: /magic.mse-game/icons/center-no-text.png
|
||||
inverted common symbol:
|
||||
choice images:
|
||||
no: { symbol_variation(symbol: set.symbol, variation: "common") }
|
||||
yes: { symbol_variation(symbol: set.symbol, variation: "invertedcommon") }
|
||||
############################################################## 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: 4
|
||||
mask: border_mask.png
|
||||
card color:
|
||||
left: 0
|
||||
top: 0
|
||||
width: 375
|
||||
height: 523
|
||||
z index: 0
|
||||
render style: image
|
||||
popup style: in place
|
||||
image: { card_background() }
|
||||
############################# Name line
|
||||
name:
|
||||
left: { if card.card_symbol=="none" then 32 else 50 }
|
||||
top: 30
|
||||
right: { 341 - card_style.casting_cost.content_width }
|
||||
height: 23
|
||||
alignment: bottom shrink-overflow
|
||||
padding bottom: 0
|
||||
z index: 1
|
||||
font:
|
||||
name: Beleren Bold
|
||||
size: 16
|
||||
color: white
|
||||
casting cost:
|
||||
right: 346
|
||||
top: 29
|
||||
width: { max(30, card_style.casting_cost.content_width) + 5 }
|
||||
height: 23
|
||||
alignment: middle right
|
||||
font:
|
||||
name: MPlantin
|
||||
size: 15
|
||||
symbol font:
|
||||
name: magic-mana-small-spellbook
|
||||
size: 15
|
||||
alignment: middle right
|
||||
always symbol: true
|
||||
z index: 2
|
||||
padding top: 0
|
||||
card symbol:
|
||||
left: {if card.card_symbol=="none" then 20 else 30}
|
||||
top: 29
|
||||
height: 20
|
||||
width: 14
|
||||
z index: 1
|
||||
render style: image
|
||||
choice images:
|
||||
tombstone: tombstone.png
|
||||
############################# Image
|
||||
image:
|
||||
left: 29
|
||||
top: 59
|
||||
width: 315
|
||||
height: 231
|
||||
z index: 1
|
||||
default: {default_image(card.card_color)}
|
||||
############################# Card type
|
||||
indicator:
|
||||
left: 31
|
||||
top: 300
|
||||
width: 17
|
||||
height: 17
|
||||
z index: 2
|
||||
render style: image
|
||||
visible: { has_identity() }
|
||||
image: { card_identity() }
|
||||
type:
|
||||
left: { if has_identity() then "52" else "32" }
|
||||
top: 296
|
||||
width: { (if has_identity() then "290" else "310") - max(22,card_style.rarity.content_width) }
|
||||
height: 20
|
||||
alignment: top shrink-overflow
|
||||
z index: 1
|
||||
padding top: 2
|
||||
font:
|
||||
name: Beleren Bold
|
||||
size: 13
|
||||
color: white
|
||||
separator color: red
|
||||
rarity:
|
||||
right: 344
|
||||
top: 297
|
||||
width: 44
|
||||
height: 22
|
||||
z index: 2
|
||||
render style: image
|
||||
alignment: middle right
|
||||
choice images:
|
||||
# Images based on the set symbol
|
||||
basic land:
|
||||
script:
|
||||
if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
|
||||
else symbol_variation(symbol: set.symbol, variation: "common")
|
||||
common:
|
||||
script:
|
||||
if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
|
||||
else 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")
|
||||
mythic rare: script: symbol_variation(symbol: set.symbol, variation: "mythic rare")
|
||||
special: script: symbol_variation(symbol: set.symbol, variation: "special")
|
||||
masterpiece: script: symbol_variation(symbol: set.masterpiece_symbol, variation: "mythic rare")
|
||||
############################# Text box
|
||||
text:
|
||||
left: 29
|
||||
top: { top_of_textbox() }
|
||||
width: 314
|
||||
bottom: { bottom_of_textbox() }
|
||||
font:
|
||||
name: MPlantin
|
||||
italic name: MPlantin-Italic
|
||||
size: 14
|
||||
scale down to: 6
|
||||
color: { if card.card_color == "black" and not styling.black_on_black then "white" else "black" }
|
||||
symbol font:
|
||||
name: { styling.text_box_mana_symbols }
|
||||
size: 14
|
||||
alignment:
|
||||
script:
|
||||
if (styling.center_text == "short text only" and
|
||||
not contains(match:"\n", card.rule_text) and
|
||||
card.flavor_text == "<i-flavor></i-flavor>" and
|
||||
card_style.text.content_lines <= 2) or
|
||||
styling.center_text == "always"
|
||||
then "middle center"
|
||||
else "middle left"
|
||||
z index: 2
|
||||
padding left: 6
|
||||
padding right: 4
|
||||
line height hard: 1.2
|
||||
line height line: 1.5
|
||||
line height soft: 0.9
|
||||
line height hard max: 1.3
|
||||
line height line max: 1.6
|
||||
watermark:
|
||||
left: 117
|
||||
top: 321
|
||||
width: 138
|
||||
height: 166
|
||||
z index: 1
|
||||
render style: image
|
||||
popup style: in place
|
||||
alignment: middle center
|
||||
include file: /magic-watermarks.mse-include/watermarks
|
||||
############################# PT
|
||||
pt:
|
||||
z index: 2
|
||||
left: 286
|
||||
top: 469
|
||||
width: 60
|
||||
height: 28
|
||||
alignment: center middle shrink-overflow
|
||||
font:
|
||||
name: Beleren Bold
|
||||
size: 16
|
||||
color: black
|
||||
separator color: red
|
||||
############################# Card sorting / numbering
|
||||
set code:
|
||||
left: 24
|
||||
top: 498
|
||||
width: 40
|
||||
height: 10
|
||||
z index: 1
|
||||
font:
|
||||
name: Relay-Medium
|
||||
size: 7
|
||||
color: white
|
||||
weight: bold
|
||||
############################# Copyright stuff
|
||||
illustrator:
|
||||
left: { 44 + card_style.set_code.content_width }
|
||||
top: 497.5
|
||||
width: 200
|
||||
height: 10
|
||||
z index: 1
|
||||
font:
|
||||
name: Beleren Small Caps Bold
|
||||
size: 7.25
|
||||
color: white
|
||||
copyright:
|
||||
right: 350
|
||||
top: { if card.pt != "" then 500 else 488 }
|
||||
width: 140
|
||||
height: 10
|
||||
z index: 2
|
||||
visible: {not set.automatic_copyright}
|
||||
alignment: middle right shrink-overflow
|
||||
font:
|
||||
name: Matrix
|
||||
size: 7
|
||||
color: white
|
||||
weight: bold
|
||||
############################################################## Extra card fields
|
||||
extra card field:
|
||||
type: text
|
||||
name: card code
|
||||
save value: false
|
||||
script:
|
||||
if set.automatic_card_numbers and not styling.remove_from_autocount then
|
||||
forward_editor(prefix: card_number_m15() + "/" + card_count_m15() + " " + rarity_code() + " ", field: card.card_code_text)
|
||||
else
|
||||
combined_editor(field1: card.custom_card_number, separator: " " + rarity_code() + " ", field2: card.card_code_text)
|
||||
extra card field:
|
||||
type: choice
|
||||
name: artist arrow
|
||||
editable: false
|
||||
save value: false
|
||||
choice: white
|
||||
extra card field:
|
||||
type: choice
|
||||
name: pt box
|
||||
script: card.card_color
|
||||
editable: false
|
||||
save value: false
|
||||
extra card field:
|
||||
type: choice
|
||||
name: foil layer
|
||||
choice: foil
|
||||
save value: false
|
||||
editable: false
|
||||
extra card field:
|
||||
type: text
|
||||
name: auto copyright
|
||||
script: set.copyright
|
||||
save value: false
|
||||
editable: false
|
||||
show statistics: false
|
||||
extra card field:
|
||||
type: choice
|
||||
name: flavor bar
|
||||
choice: bar
|
||||
editable: false
|
||||
save value: false
|
||||
show statistics: false
|
||||
extra card style:
|
||||
card code:
|
||||
left: 24
|
||||
top: 488
|
||||
width: 120
|
||||
height: 10
|
||||
z index: 1
|
||||
font:
|
||||
name: Relay-Medium
|
||||
size: 7
|
||||
color: white
|
||||
weight: bold
|
||||
artist arrow:
|
||||
left: { 28 + card_style.set_code.content_width }
|
||||
top: 500
|
||||
width: 12
|
||||
height: 7
|
||||
z index: 1
|
||||
render style: image
|
||||
image: artist_arrow.png
|
||||
pt box:
|
||||
left: 273
|
||||
top: 466
|
||||
width: 81
|
||||
height: 42
|
||||
z index: 1
|
||||
visible: { card.pt != "" }
|
||||
render style: image
|
||||
image: { card_ptbox() }
|
||||
foil layer:
|
||||
left: 0
|
||||
top : 0
|
||||
width: 375
|
||||
height: 523
|
||||
z index: 3
|
||||
render style: image
|
||||
image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"}
|
||||
mask: { if is_rare() then "foil_mask_rare.png" else "foil_mask.png" }
|
||||
auto copyright:
|
||||
right: 350
|
||||
top: { if card.pt != "" then 500 else 488 }
|
||||
width: 140
|
||||
height: 10
|
||||
z index: 2
|
||||
alignment: middle right shrink-overflow
|
||||
visible: {set.automatic_copyright}
|
||||
font:
|
||||
name: Matrix
|
||||
size: 7
|
||||
color: white
|
||||
weight: bold
|
||||
flavor bar:
|
||||
left: 0
|
||||
top: { bar_equation() }
|
||||
width: 375
|
||||
height: 1
|
||||
z index: 1
|
||||
render style: image
|
||||
image: bar.png
|
||||
visible: { styling.use_flavor_bar and card.rule_text != "" and remove_tags(card.flavor_text) != "" }
|
||||
Reference in New Issue
Block a user