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