Table of Contents

Class DealDamageIHasEntityGameActionSO

Namespace
ElectricDrill.AstraHealth.GameActions.Actions.WithIHasEntity
Assembly
com.electricdrill.astra-health.Runtime.dll

Inflicts configured damage on the entity carried by any ElectricDrill.AstraRpgFramework.Contexts.IHasEntity payload. Provided as a ScriptableObject for easy assignment in the editor.

Connect to any GameEventListener whose payload implements ElectricDrill.AstraRpgFramework.Contexts.IHasEntity, such as EntityDiedGameEventListener, EntityResurrectedGameEventListener, or a DamageResolutionGameEventListener, and select ExecuteAsyncForUnityEvent(IHasEntity) as the dynamic invocation target.

The context entity is always the damage target. The embedded config's Damage Dealer role only distinguishes None (unattributed system damage) from self-inflicted damage dealt by that same entity; the Damage Target role is ignored. Create instances via Assets → Create → Astra Health/Game Actions/Context: Entity/Deal Damage.
[CreateAssetMenu(fileName = "Deal Damage Game Action", menuName = "Astra Health/Game Actions/Context: Entity/Deal Damage")]
public class DealDamageIHasEntityGameActionSO : DealDamageGameActionSO<IHasEntity>, IExecutable<IHasEntity>, ITaggable, IEffectInstigator
Inheritance
object
GameActionBase
GameAction<IHasEntity>
DealDamageIHasEntityGameActionSO
Implements
IExecutable<IHasEntity>
ITaggable
IEffectInstigator
Inherited Members
GameAction<IHasEntity>.Tags
GameAction<IHasEntity>.DisplayName
GameAction<IHasEntity>.ExecuteAsyncForUnityEvent(IHasEntity)
GameAction<IHasEntity>.OnOperationCanceled()