Table of Contents

Namespace ElectricDrill.AstraHealth.GameActions.Actions

Classes

CounterDamageGameActionSO<TContext>

Abstract base game action that reacts to a resolved damage event by inflicting damage in return. Works with any context implementing ElectricDrill.AstraRpgFramework.Contexts.IHasTarget, ElectricDrill.AstraRpgFramework.Contexts.IHasPerformer and IHasAmount: compatible with DamageResolutionContext, EntityDiedContext, and others.

This class implements ElectricDrill.AstraRpgFramework.Contexts.IEffectInstigator so it can be passed as the instigator of the counter-damage it produces. Listeners can then check ctx.Instigator == thisActionSO to identify and filter self-triggered cycles.

ResurrectEntityGameActionSO<TContext>

Base generic game action for resurrecting entities with EntityHealth components. Can be configured to resurrect with either a percentage of max HP or a flat HP amount. Uses the default resurrection source from config and no healer entity (system action).

Connect to any GameEventListener whose payload implements ElectricDrill.AstraRpgFramework.Contexts.IHasEntity, such as EntityDiedGameEventListener, DamageResolutionGameEventListener, or directly from an EntityHealth reference.

SetEntityOverrideOnDeathGameActionSO<TContext>

Base generic game action that assigns (or clears) the OverrideOnDeathGameAction field. Useful for one-shot mechanics such as "resurrect on first death": configure a CompositeAction that resurrects the entity and then executes this action with ElectricDrill.AstraHealth.GameActions.Actions.SetEntityOverrideOnDeathGameActionSO<TContext>._newOverrideGameAction set to null, so the override is cleared and subsequent deaths use the default config action.

Connect to any GameEventListener whose payload implements ElectricDrill.AstraRpgFramework.Contexts.IHasEntity, such as EntityDiedGameEventListener, DamageResolutionGameEventListener, or directly from an EntityHealth reference.

SetEntityOverrideOnResurrectionGameActionSO<TContext>

Base generic game action that assigns (or clears) the OverrideOnResurrectionGameAction field.

Connect to any GameEventListener whose payload implements ElectricDrill.AstraRpgFramework.Contexts.IHasEntity, such as EntityDiedGameEventListener, EntityResurrectedGameEventListener, or directly from an EntityHealth reference.