Add LCI full art basics (#110)

* Add LCI full art basics

* improve kamigawa basics name and type defaults

* Update style

* improve subtypes default
This commit is contained in:
GenevensiS
2025-02-02 04:01:54 +01:00
committed by GitHub
parent aa2073f3e7
commit 9d178ffc9a
23 changed files with 386 additions and 10 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 980 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 942 B

View File

@@ -0,0 +1,367 @@
mse version: 2.1.2
game: magic
short name: LCI Basics
full name: Ixalan Full Art
icon: card_sample.png
position hint: 099
version: 2024-05-20
depends on:
package: magic.mse-game
version: 2014-06-25
depends on:
package: magic-mana-large.mse-symbol-font
version: 2007-09-23
depends on:
package: magic-mana-small.mse-symbol-font
version: 2007-09-23
depends on:
package: magic-modules.mse-include
version: 2024-10-01
depends on:
package: magic-mainframe-extras.mse-include
version: 2007-09-23
card width: 744
card height: 1039
card dpi: 297
### blanks by GenevensiS
### code by GenevensiS
############################################################## Extra scripts
init script:
typeline_disabled_1 := { styling.hide_type_text }
swap_fonts_type_default :=
[
name: {"Beleren Bold"},
size: {26.5},
color: { if styling.hide_type_text then rgba(0,0,0,0) else rgb(0,0,0) },
vertical: {0},
italic: {""}
]
nameline_disabled_1 := { styling.hide_name_text }
transform_symbol_disabled_1 := { true }
card_symbol_disabled_1 := { true }
swap_fonts_name_default :=
[
name: {"Beleren Bold"},
size: {30.0},
color: { if styling.hide_name_text then rgba(0,0,0,0) else rgb(0,0,0) },
vertical: {0},
italic: {""}
]
two_types := { styling.second_land_type != "none" }
card_symbol :=
{
first := "symbol/" + type_to_letter_map[styling.land_type] + ".png"
if not two_types() then first else (
second := "symbol/" + type_to_letter_map[styling.second_land_type] + ".png"
linear_blend(
image1: first,
image2: second,
x1: 0.49, y1: 0,
x2: 0.51, y2: 0
))
}
card_full_name := { value }
card_full_name_default := { type_to_name_map[styling.land_type + "," + styling.second_land_type] }
name_default := { type_to_name_map[styling.land_type + "," + styling.second_land_type] }
super_type_filter_default := { (if two_types() then "" else "Basic ") + "Land" }
sub_type_filter_default :=
{
base := to_title(styling.land_type) + (if two_types() then " " + to_title(styling.second_land_type) else "")
if base == "Wastes" then "" else base
}
type_to_name_map :=
[
"plains,none": "Plains",
"island,none": "Island",
"swamp,none": "Swamp",
"mountain,none": "Mountain",
"forest,none": "Forest",
"wastes,none": "Wastes",
"plains,wastes": "Wasted Plains",
"island,wastes": "Wasted Island",
"swamp,wastes": "Wasted Swamp",
"mountain,wastes": "Wasted Mountain",
"forest,wastes": "Wasted Forest",
"wastes,wastes": "Wastes",
"plains,plains": "Plains",
"island,plains": "Tundra",
"swamp,plains": "Scrubland",
"mountain,plains": "Plateau",
"forest,plains": "Savannah",
"wastes,plains": "Wasted Plains",
"plains,island": "Tundra",
"island,island": "Island",
"swamp,island": "Underground Sea",
"mountain,island": "Volcanic Island",
"forest,island": "Tropical Island",
"wastes,island": "Wasted Island",
"plains,swamp": "Scrubland",
"island,swamp": "Underground Sea",
"swamp,swamp": "Swamp",
"mountain,swamp": "Badlands",
"forest,swamp": "Bayou",
"wastes,swamp": "Wasted Swamp",
"plains,mountain": "Plateau",
"island,mountain": "Volcanic Island",
"swamp,mountain": "Badlands",
"mountain,mountain": "Mountain",
"forest,mountain": "Taiga",
"wastes,mountain": "Wasted Mountain",
"plains,forest": "Savannah",
"island,forest": "Tropical Island",
"swamp,forest": "Bayou",
"mountain,forest": "Taiga",
"forest,forest": "Forest",
"wastes,forest": "Wasted Forest"
]
type_to_letter_map :=
[
plains: "w",
island: "u",
swamp: "b",
mountain: "r",
forest: "g",
wastes: "c",
none: "none"
]
type_to_color_map :=
[
plains: ", white",
island: ", blue",
swamp: ", black",
mountain: ", red",
forest: ", green",
wastes: "",
none: ", none"
]
is_promo := { styling.promo }
is_unsorted := { styling.remove_from_autocount }
popout_left := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.0 != "" then clamp(split.0, minimum: -500, maximum: 800) else 0 }
popout_top := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.1 != "" then clamp(split.1, minimum: -500, maximum: 1100) else 0 }
popout_width := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.2 != "" then clamp(split.2, minimum: 0, maximum: 1500) else 0 }
popout_height := { split := split_comma(styling.popout_art_coordinates); if length(split) > 3 and split.3 != "" then clamp(split.3, minimum: 0, maximum: 2000) else 0 }
mountain_symbol_offset := { if styling.second_land_type == "mountain" or styling.land_type == "mountain" then -76 else 0 }
############################################################## Extra style options
styling field:
type: choice
name: land type
description: What type is this card?
choice: plains
choice: island
choice: swamp
choice: mountain
choice: forest
choice: wastes
initial: plains
styling field:
type: choice
name: second land type
description: What type is this card?
choice:
name: none
line below: true
choice: plains
choice: island
choice: swamp
choice: mountain
choice: forest
choice: wastes
initial: none
styling field:
type: text
name: popout art coordinates
description: The coordinates for the popout image field. Formatted as "left,top,width,height". Used to make the illustration jump in front of the frame.
styling field:
type: boolean
name: stretch art to whole card
description: Make the image span the whole card instead of just the visible part? Use this to help make popout effects.
initial: no
styling field:
type: boolean
name: hide name text
description: Make the nameline visible to edit it, then turn it back invisible.
initial: yes
styling field:
type: boolean
name: hide type text
description: Make the typeline visible to edit it, then turn it back invisible.
initial: yes
styling field:
type: boolean
name: hide basic land text
description: Make the basic land text visible or invisible.
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 field:
type: choice
name: border
description: Use a border?
choice: yes
choice: only copyright
choice: no
initial: yes
include file: /magic-modules.mse-include/information/styling_fields
############################################################## Card fields
include file: /magic-modules.mse-include/information/card_fields
include file: /magic-modules.mse-include/stamps/card_fields
include file: /magic-modules.mse-include/corners/card_fields
include file: /magic-modules.mse-include/namelines/card_fields
include file: /magic-modules.mse-include/typelines/card_fields
card style:
############################# Background stuff
border color:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 100
visible: { styling.border != "no" }
mask: { "/magic-modules.mse-include/borders/744x1039/m15/full_art/" + (if styling.border == "yes" then "base.png" else "borderless.png") }
############################# Image
image:
left: { if styling.stretch_art_to_whole_card then 0 else if styling.border != "yes" then 0 else 30 }
top: { if styling.stretch_art_to_whole_card then 0 else if styling.border != "yes" then 0 else 30 }
width: { if styling.stretch_art_to_whole_card then stylesheet.card_width else if styling.border != "yes" then stylesheet.card_width else 684 }
bottom: { if styling.stretch_art_to_whole_card then stylesheet.card_height + 1 else if styling.border != "no" then 954 else stylesheet.card_height + 1 }
z index: 0
mainframe image:
left: { popout_left() }
top: { popout_top() }
width: { popout_width() }
height: { popout_height() }
z index: 1010
############################################################## Extra card fields
extra card field:
type: color
name: card stamp border
script: card.border_color
editable: false
save value: false
show statistics: false
extra card field:
type: choice
name: first type
editable: false
save value: false
show statistics: false
choice: first type
extra card field:
type: choice
name: second type
editable: false
save value: false
show statistics: false
choice: second type
extra card field:
type: choice
name: symbol
editable: false
save value: false
show statistics: false
choice: symbol
extra card field:
type: choice
name: basic land
editable: false
save value: false
show statistics: false
choice: basic land
extra card field:
type: choice
name: foil layer
editable: false
save value: false
show statistics: false
choice: foil layer
extra card style:
card stamp border:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 110
visible: { styling.border != "no" and is_stamped() }
mask: { if card.card_stamp == "universes beyond" then "mask_stamp_background_border_triangle.png" else "mask_stamp_background_border.png" }
first type:
left: 244
top: { if two_types() then 799 else if styling.hide_basic_land_text then 827 else 810 }
width: 420
height: 49
z index: 3000
render style: image
image: { "type/" + type_to_letter_map[styling.land_type] + ".png" }
second type:
left: 244
top: 857
width: 420
height: 49
z index: 3000
visible: { two_types() }
render style: image
image: { "type/" + type_to_letter_map[styling.second_land_type] + ".png" }
symbol:
left: { 156 + mountain_symbol_offset() }
top: 779
width: 146
height: 146
z index: 3000
render style: image
image: { card_symbol() }
basic land:
left: { 318 + mountain_symbol_offset() }
top: 874
width: 211
height: 24
z index: 3000
visible: { not two_types() and not styling.hide_basic_land_text }
render style: image
image: { "basic_land/" + type_to_letter_map[styling.land_type] + ".png" }
foil layer:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 1050
visible: { styling.overlay != "none" and styling.overlay != "" }
render style: image
image: { if styling.overlay == "" then "" else styling.overlay + "/overlay.png" }

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -77,10 +77,12 @@ init script:
template_prefix[type] + (if input == "a" then "c" else input) + template_suffix[type] template_prefix[type] + (if input == "a" then "c" else input) + template_suffix[type]
} }
two_types := { styling.second_land_type != "none" }
card_background := card_background :=
{ {
first_color := "card/" + type_to_letter_map[styling.land_type] + "card.png" first_color := "card/" + type_to_letter_map[styling.land_type] + "card.png"
if styling.second_land_type == "none" then first_color else ( if not two_types() then first_color else (
second_color := "card/" + type_to_letter_map[styling.second_land_type] + "card.png" second_color := "card/" + type_to_letter_map[styling.second_land_type] + "card.png"
linear_blend( linear_blend(
image1: first_color, image1: first_color,
@@ -91,17 +93,26 @@ init script:
} }
card_color := card_color :=
{ {
if styling.second_land_type == "none" then substring(type_to_color_map[styling.land_type] + ", land", begin: 2) if not two_types() then substring(type_to_color_map[styling.land_type] + ", land", begin: 2)
else substring(type_to_color_map[styling.land_type] + type_to_color_map[styling.second_land_type] + ", land, horizontal", begin: 2) else substring(type_to_color_map[styling.land_type] + type_to_color_map[styling.second_land_type] + ", land, horizontal", begin: 2)
} }
card_color_filter := card_color_filter :=
{ {
if styling.second_land_type == "none" then substring(type_to_color_map[styling.land_type] + ", land", begin: 2) if not two_types() then substring(type_to_color_map[styling.land_type] + ", land", begin: 2)
else substring(type_to_color_map[styling.land_type] + type_to_color_map[styling.second_land_type] + ", land, horizontal", begin: 2) else substring(type_to_color_map[styling.land_type] + type_to_color_map[styling.second_land_type] + ", land, horizontal", begin: 2)
} }
card_full_name := { value } card_full_name := { value }
card_full_name_default := { type_to_name_map[styling.land_type + "," + styling.second_land_type] } card_full_name_default := { type_to_name_map[styling.land_type + "," + styling.second_land_type] }
name_default := { type_to_name_map[styling.land_type + "," + styling.second_land_type] }
super_type_filter_default := { (if two_types() then "" else "Basic ") + "Land" }
sub_type_filter_default :=
{
base := to_title(styling.land_type) + (if two_types() then " " + to_title(styling.second_land_type) else "")
if base == "Wastes" then "" else base
}
type_to_name_map := type_to_name_map :=
[ [
"plains,none": "Plains", "plains,none": "Plains",
@@ -186,13 +197,13 @@ init script:
name_mask := name_mask :=
{ {
"mask_name" + "mask_name" +
(if styling.second_land_type != "none" then "_dual" else "") + (if two_types() then "_dual" else "") +
(if styling.second_land_type == "plains" or styling.second_land_type == "wastes" or styling.land_type == "plains" or styling.land_type == "wastes" then "_plains" else "") + (if styling.second_land_type == "plains" or styling.second_land_type == "wastes" or styling.land_type == "plains" or styling.land_type == "wastes" then "_plains" else "") +
".png" ".png"
} }
plains_symbol_offset := { if styling.second_land_type == "plains" or styling.second_land_type == "wastes" or styling.land_type == "plains" or styling.land_type == "wastes" then 150 else 0 } plains_symbol_offset := { if styling.second_land_type == "plains" or styling.second_land_type == "wastes" or styling.land_type == "plains" or styling.land_type == "wastes" then 150 else 0 }
symbol_offset := { if styling.second_land_type != "none" then 180 else 0 } symbol_offset := { if two_types() then 180 else 0 }
two_two := two_two :=
{ {
(styling.second_land_type == "plains" or styling.second_land_type == "wastes") and (styling.land_type == "plains" or styling.land_type == "wastes") (styling.second_land_type == "plains" or styling.second_land_type == "wastes") and (styling.land_type == "plains" or styling.land_type == "wastes")
@@ -264,8 +275,6 @@ styling field:
color: rgb(255,255,254) color: rgb(255,255,254)
initial: rgb(255,255,254) initial: rgb(255,255,254)
include file: /magic-modules.mse-include/rarities/styling_fields
styling field: styling field:
type: package choice type: package choice
name: overlay name: overlay
@@ -414,7 +423,7 @@ extra card style:
width: { if two_two() then 130 else 160 } width: { if two_two() then 130 else 160 }
height: { if two_two() then 225 else 295 } height: { if two_two() then 225 else 295 }
z index: 3000 z index: 3000
visible: { styling.second_land_type != "none" } visible: { two_types() }
render style: image render style: image
image: { recolor_image("type_" + styling.second_land_type + ".png", color: styling.text_color) } image: { recolor_image("type_" + styling.second_land_type + ".png", color: styling.text_color) }
type separator: type separator:
@@ -423,7 +432,7 @@ extra card style:
width: 160 width: 160
height: 30 height: 30
z index: 3000 z index: 3000
visible: { styling.second_land_type != "none" } visible: { two_types() }
render style: image render style: image
image: { recolor_image("type_sep.png", color: styling.text_color) } image: { recolor_image("type_sep.png", color: styling.text_color) }
first symbol: first symbol:
@@ -440,7 +449,7 @@ extra card style:
width: 160 width: 160
height: 164 height: 164
z index: 3000 z index: 3000
visible: { styling.second_land_type != "none" } visible: { two_types() }
render style: image render style: image
image: { recolor_image("symbol_" + styling.second_land_type + ".png", color: styling.text_color) } image: { recolor_image("symbol_" + styling.second_land_type + ".png", color: styling.text_color) }
foil layer: foil layer: