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 == thisActionSOto 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
GameEventListenerwhose payload implements ElectricDrill.AstraRpgFramework.Contexts.IHasEntity, such asEntityDiedGameEventListener,DamageResolutionGameEventListener, or directly from anEntityHealthreference.
- 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
GameEventListenerwhose payload implements ElectricDrill.AstraRpgFramework.Contexts.IHasEntity, such asEntityDiedGameEventListener,DamageResolutionGameEventListener, or directly from anEntityHealthreference.
- SetEntityOverrideOnResurrectionGameActionSO<TContext>
Base generic game action that assigns (or clears) the OverrideOnResurrectionGameAction field.
Connect to any
GameEventListenerwhose payload implements ElectricDrill.AstraRpgFramework.Contexts.IHasEntity, such asEntityDiedGameEventListener,EntityResurrectedGameEventListener, or directly from anEntityHealthreference.