feat(chess/modifiers): add 3 recipes showcasing new trigger primitives (T26)
Adds three recipes to the built-in template library, each built on a Wave 2 trigger that previously had no pre-composed example: - Kamikaze Knight — on-captured with target: attacker, nested add-to-attribute Hp -2. Death-rattle that damages whichever piece made the fatal capture. - Berserker Pawn — on-move nested with add-to-attribute AttackBonus +1. Stacking rage: the pawn grows stronger with every move it survives. - Promotion Feast — on-promotion nested with seed-attribute Hp 5. When a pawn finally promotes, it starts its new life with a fresh 5 HP pool regardless of damage taken on the way up the board. Each recipe passes validateCustomDescriptor and lands in the editors Templates dropdown alongside the existing five. Recipe count: 5 → 8.
This commit is contained in:
parent
159d2cff06
commit
b08415c7f8
1 changed files with 98 additions and 25 deletions
|
|
@ -129,29 +129,102 @@ export const CUSTOM_MODIFIER_RECIPES: readonly CustomModifierRecipe[] = [
|
|||
],
|
||||
),
|
||||
},
|
||||
{
|
||||
id: "recipe-low-hp-fortress",
|
||||
title: "Low-HP Fortress (invulnerable when HP<2)",
|
||||
summary:
|
||||
"conditional: when Hp < 2, sets CANNOT_BE_CAPTURED. A last-stand trigger that keeps a wounded piece alive.",
|
||||
descriptor: descriptorForRecipe(
|
||||
"recipe-low-hp-fortress",
|
||||
"Low-HP Fortress",
|
||||
"Becomes untargetable when HP drops below 2.",
|
||||
[
|
||||
{
|
||||
kind: "conditional",
|
||||
params: {
|
||||
condition: { type: "attr-lt", attr: "Hp", value: 2 },
|
||||
then: [
|
||||
{
|
||||
kind: "set-capture-flag",
|
||||
params: { flag: 2 },
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
],
|
||||
),
|
||||
},
|
||||
{
|
||||
id: "recipe-low-hp-fortress",
|
||||
title: "Low-HP Fortress (invulnerable when HP<2)",
|
||||
summary:
|
||||
"conditional: when Hp < 2, sets CANNOT_BE_CAPTURED. A last-stand trigger that keeps a wounded piece alive.",
|
||||
descriptor: descriptorForRecipe(
|
||||
"recipe-low-hp-fortress",
|
||||
"Low-HP Fortress",
|
||||
"Becomes untargetable when HP drops below 2.",
|
||||
[
|
||||
{
|
||||
kind: "conditional",
|
||||
params: {
|
||||
condition: { type: "attr-lt", attr: "Hp", value: 2 },
|
||||
then: [
|
||||
{
|
||||
kind: "set-capture-flag",
|
||||
params: { flag: 2 },
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
],
|
||||
),
|
||||
},
|
||||
{
|
||||
id: "recipe-kamikaze-knight",
|
||||
title: "Kamikaze Knight (-2 HP to attacker)",
|
||||
summary:
|
||||
"on-captured wrapping add-to-attribute with target: 'attacker'. When captured, this piece deals 2 damage back to its slayer.",
|
||||
descriptor: descriptorForRecipe(
|
||||
"recipe-kamikaze-knight",
|
||||
"Kamikaze Knight",
|
||||
"Damages the attacker for 2 HP when captured, creating mutual wounds in exchanges.",
|
||||
[
|
||||
{
|
||||
kind: "on-captured",
|
||||
params: {
|
||||
target: "attacker",
|
||||
primitives: [
|
||||
{
|
||||
kind: "add-to-attribute",
|
||||
params: { attr: "Hp", delta: -2 },
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
],
|
||||
),
|
||||
},
|
||||
{
|
||||
id: "recipe-berserker-pawn",
|
||||
title: "Berserker Pawn (+1 Attack per move)",
|
||||
summary:
|
||||
"on-move wrapping add-to-attribute AttackBonus +1. Gains +1 attack power every move, stacking into an unstoppable force.",
|
||||
descriptor: descriptorForRecipe(
|
||||
"recipe-berserker-pawn",
|
||||
"Berserker Pawn",
|
||||
"Gains +1 AttackBonus each move, creating an escalating threat the longer it advances.",
|
||||
[
|
||||
{
|
||||
kind: "on-move",
|
||||
params: {
|
||||
primitives: [
|
||||
{
|
||||
kind: "add-to-attribute",
|
||||
params: { attr: "AttackBonus", delta: 1 },
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
],
|
||||
),
|
||||
},
|
||||
{
|
||||
id: "recipe-promotion-feast",
|
||||
title: "Promotion Feast (+5 HP on promotion)",
|
||||
summary:
|
||||
"on-promotion wrapping seed-attribute for Hp 5. When this pawn promotes, it immediately gains 5 bonus HP as a reward.",
|
||||
descriptor: descriptorForRecipe(
|
||||
"recipe-promotion-feast",
|
||||
"Promotion Feast",
|
||||
"Seeds 5 HP when pawn promotes, rewarding safe advancement across the board.",
|
||||
[
|
||||
{
|
||||
kind: "on-promotion",
|
||||
params: {
|
||||
primitives: [
|
||||
{
|
||||
kind: "seed-attribute",
|
||||
params: { attr: "Hp", value: 5 },
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
],
|
||||
),
|
||||
},
|
||||
];
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue