Skip to main content

Andras

The Raven Assassin

Unit #093

HPPWRCPSpeedRangeTier
12 (+6)4 (+2)3 (+2)FastLocalA

Abilities

Passive

g actions cannot be performed in response to Andras's actions.
Engine Implementation
def _andras_no_quick_response(state, demon) -> dict:
"""#093 Andras — Passive: Quick suppression for all Andras actions.

Implementation lives in execute_ability step 9 (abilities.py). When
Andras (or a demon fused with Andras) performs any action, the
ACTION_DECLARED event is suppressed, preventing Quick responses.
"""
return {}

register_passive("093", 0, _andras_no_quick_response)

Momento Mori — 1 AP

g: Momento Mori: 1 AP - a, 1x: e: Target Local Demon cannot perform actions. Any damage dealt to the targeted Demon may be dealt as Fixed Damage. Andras's next action ignores a and b costs. (If this "cancels" an action, the costs of that action are not resolved.)
Engine Implementation
def _andras_momento_mori(
state: GameState, demon: DemonInstance, targets, choices, rng
) -> GameState:
"""#093 Andras — Momento Mori
Quick, 1 AP, (exhaust), 1x: Status: Target Local Demon cannot perform actions.
Any damage dealt to it may be dealt as Fixed Damage. Andras's next action
ignores (exhaust) and (ready) costs.

Applies "cannot_act" status to target.
Applies "take_fixed_damage" status to target (value=1 = damage may be Fixed).
Applies "ignore_exhaust" and "ignore_ready" statuses to Andras.
Status expires end of current main phase.
"""
from engine.status_effects import apply_status

if not targets:
return state

target = targets[0]
t_current = next(
(d for d in state.demons if d.instance_id == target.instance_id), None
)
if t_current is None or t_current.fatally_wounded:
return state

# Status on target: cannot act + damage may be fixed
state = apply_status(state, demon, t_current, "cannot_act", 1)
state = apply_status(state, demon, t_current, "take_fixed_damage", 1)

# Andras ignores exhaust/ready on next action
state = apply_status(state, demon, demon, "ignore_exhaust", 1)
state = apply_status(state, demon, demon, "ignore_ready", 1)

return state

register_ability("093", 1, _andras_momento_mori)
Andras