Add color_background mask parameters (#93)

* Add color_background mask parameters
This commit is contained in:
GenevensiS
2025-02-02 04:35:55 +01:00
committed by GitHub
parent 070a98bcd4
commit 92a8b67075

View File

@@ -859,7 +859,7 @@ color_background := {
if contains(colors, match:"a") then artifact := false
if contains(colors, match:"m") then multi := false
color_count := if colors == "c" then 0 else number_of_items(in: colors)
# 'shape' / type of hybrid
shape := if chosen(choice:"horizontal" ) then "horizontal"
else if chosen(choice:"vertical" ) then "vertical"
@@ -867,88 +867,195 @@ color_background := {
else "radial"
# Determine background (allows styles to hook something else here)
# This is implicitly passed the following parameters: type, shape, colors, color_count, base_hybrid, land, multi, hybrid, artifact, multicolor_blend, hybrid_blend, artifact_blend
color_combination(folder:folder, blend_type:blend_type)
}@(folder: "", blend_type:"")
}@(folder: "", blend_type: "", multicolor_blend: "mask", hybrid_blend: "mask", artifact_blend: "mask")
color_combination := {
# does this have an override blend_type?
if blend_type == "" then blend_type := type
# The base hybrid, without the outer frame blended over it
base := base_hybrid[shape][color_count]()
# Put a frame around it?
# The base hybrid between colors, without the outer frame blended over it
base := base_hybrid[shape][color_count]
# Do we need to blend an additional gold, colorless or artifact outer frame?
if land and not colored_lands then
masked_blend(
(
if multicolor_blend == "black" then land_template("c")
else if multicolor_blend == "white" then base()
else masked_blend(
mask: "{folder}multicolor_blend_{blend_type}.png",
dark: land_template("c"),
light: base,
light: base(),
)
)
else if land and multi and mask_hybrid_with_gold() then
masked_blend(
(
if hybrid_blend == "black" then land_template("m")
else if hybrid_blend == "white" then base()
else masked_blend(
mask: "{folder}hybrid_blend_{blend_type}.png",
dark: land_template("m"),
light: base,
light: base(),
)
)
else if land and multi and mask_multi_land_with_color() then
masked_blend(
(
if hybrid_blend == "black" then base()
else if hybrid_blend == "white" then land_template("m")
else masked_blend(
mask: "{folder}hybrid_blend_{blend_type}.png",
dark: base,
dark: base(),
light: land_template("m"),
)
)
else if multi and artifact then
masked_blend(
mask: "{folder}artifact_blend_{blend_type}.png",
dark: template("a"),
light: masked_blend(
(
if artifact_blend == "black" then template("a")
else if artifact_blend == "white" then
(
if multicolor_blend == "black" then template("m")
else if multicolor_blend == "white" then base()
else masked_blend(
mask: "{folder}multicolor_blend_{blend_type}.png",
dark: template("m"),
light: base
light: base()
)
)
else
(
if multicolor_blend == "black" then masked_blend(
mask: "{folder}artifact_blend_{blend_type}.png",
dark: template("a"),
light: template("m")
)
else if multicolor_blend == "white" then masked_blend(
mask: "{folder}artifact_blend_{blend_type}.png",
dark: template("a"),
light: base()
)
else masked_blend(
mask: "{folder}artifact_blend_{blend_type}.png",
dark: template("a"),
light: masked_blend(
mask: "{folder}multicolor_blend_{blend_type}.png",
dark: template("m"),
light: base()
)
)
)
)
else if multi then
masked_blend(
(
if multicolor_blend == "black" then template("m")
else if multicolor_blend == "white" then base()
else masked_blend(
mask: "{folder}multicolor_blend_{blend_type}.png",
dark: template("m"),
light: base,
light: base(),
)
)
else if artifact and color_count > 1 and mask_hybrid_with_land() then
masked_blend(
mask: "{folder}artifact_blend_{blend_type}.png",
dark: template("a"),
light: masked_blend(
(
if artifact_blend == "black" then template("a")
else if artifact_blend == "white" then
(
if multicolor_blend == "black" then template("c")
else if multicolor_blend == "white" then base()
else masked_blend(
mask: "{folder}multicolor_blend_{blend_type}.png",
dark: template("c"),
light: base
light: base()
)
)
else
(
if multicolor_blend == "black" then masked_blend(
mask: "{folder}artifact_blend_{blend_type}.png",
dark: template("a"),
light: template("c")
)
else if multicolor_blend == "white" then masked_blend(
mask: "{folder}artifact_blend_{blend_type}.png",
dark: template("a"),
light: base()
)
else masked_blend(
mask: "{folder}artifact_blend_{blend_type}.png",
dark: template("a"),
light: masked_blend(
mask: "{folder}multicolor_blend_{blend_type}.png",
dark: template("c"),
light: base()
)
)
)
)
else if artifact and color_count > 1 and mask_hybrid_with_gold() then
masked_blend(
mask: "{folder}artifact_blend_{blend_type}.png",
dark: template("a"),
light: masked_blend(
(
if artifact_blend == "black" then template("a")
else if artifact_blend == "white" then
(
if multicolor_blend == "black" then template("m")
else if multicolor_blend == "white" then base()
else masked_blend(
mask: "{folder}multicolor_blend_{blend_type}.png",
dark: template("m"),
light: base
light: base()
)
)
else
(
if multicolor_blend == "black" then masked_blend(
mask: "{folder}artifact_blend_{blend_type}.png",
dark: template("a"),
light: template("m")
)
else if multicolor_blend == "white" then masked_blend(
mask: "{folder}artifact_blend_{blend_type}.png",
dark: template("a"),
light: base()
)
else masked_blend(
mask: "{folder}artifact_blend_{blend_type}.png",
dark: template("a"),
light: masked_blend(
mask: "{folder}multicolor_blend_{blend_type}.png",
dark: template("m"),
light: base()
)
)
)
)
else if artifact then
masked_blend(
(
if artifact_blend == "black" then template("a")
else if artifact_blend == "white" then base()
else masked_blend(
mask: "{folder}artifact_blend_{blend_type}.png",
dark: template("a"),
light: base,
light: base(),
)
)
else if color_count > 1 and mask_hybrid_with_land() then
masked_blend(
(
if hybrid_blend == "black" then land_template("c")
else if hybrid_blend == "white" then base()
else masked_blend(
mask: "{folder}hybrid_blend_{blend_type}.png",
dark: land_template("c"),
light: base,
light: base(),
)
)
else if color_count > 1 and mask_hybrid_with_gold() then
masked_blend(
(
if hybrid_blend == "black" then land_template("m")
else if hybrid_blend == "white" then base()
else masked_blend(
mask: "{folder}hybrid_blend_{blend_type}.png",
dark: land_template("m"),
light: base,
light: base(),
)
else base
)
else base()
}@(folder: "", blend_type:"")
########################################################################