Bifrons
The Soul Eater
Unit #005
| HP | PWR | CP | Speed | Range | Tier |
|---|---|---|---|---|---|
| 15 (+9) | 2 | 4 (+3) | Slow | Any | D |
Abilities
Thousand Year Curse — X AP
Thousand Year Curse: X AP - a: e: All Enemy Demons have -Xn.
Engine Implementation
def _bifrons_thousand_year_curse(state: GameState, demon: DemonInstance, targets, choices, rng) -> GameState:
"""#005 Bifrons — Thousand Year Curse
Action, X AP, (exhaust): Status: All Enemy Demons have -X DEF.
X is chosen at activation time and passed via choices["x"].
The AP cost (X AP) is deducted by execute_ability before calling this handler.
Here we apply the -X DEF status to all enemy demons.
Status expires end of current main phase (confusion #9 — NOT permanent).
"""
from engine.status_effects import apply_status
from engine.targeting import get_enemy_demons
x = choices.get("x", 0) if choices else 0
if x <= 0:
return state
enemies = get_enemy_demons(state, demon.owner)
for enemy in enemies:
state = apply_status(state, demon, enemy, "def", -x)
return state
register_ability("005", 0, _bifrons_thousand_year_curse)