diff --git a/data/magic-blends.mse-include/new-blends b/data/magic-blends.mse-include/new-blends index 91e84b735..befbdf118 100644 --- a/data/magic-blends.mse-include/new-blends +++ b/data/magic-blends.mse-include/new-blends @@ -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:"") ########################################################################