Class AbilityActionDef
A generic timed action channel; payloads can be combined.
public sealed class AbilityActionDef
- Inheritance
-
AbilityActionDef
- Inherited Members
Constructors
AbilityActionDef(float, RangedAttackDef, StatusEffectDef, SummonDef, AreaEffectDef, float, float)
Creates a generic activation channel.
public AbilityActionDef(float cooldown, RangedAttackDef attack = null, StatusEffectDef selfEffect = null, SummonDef summon = null, AreaEffectDef area = null, float skillExperiencePerRank = 0, float initialDelay = 0)
Parameters
cooldownfloatattackRangedAttackDefselfEffectStatusEffectDefsummonSummonDefareaAreaEffectDefskillExperiencePerRankfloatinitialDelayfloat
AbilityActionDef(IAbilityAction, float, float)
Creates a custom-only timed action without changing the original constructor.
public AbilityActionDef(IAbilityAction customAction, float cooldown, float initialDelay = 0)
Parameters
customActionIAbilityActioncooldownfloatinitialDelayfloat
Examples
new AbilityActionDef(new ShieldPulse(), 2, initialDelay: 1);
AbilityActionDef(IAbilityAction, float, float, float)
Creates a custom action awarding skill experience per active hero rank on successful activation.
public AbilityActionDef(IAbilityAction customAction, float cooldown, float initialDelay, float skillExperiencePerRank)
Parameters
customActionIAbilityActioncooldownfloatinitialDelayfloatskillExperiencePerRankfloat
Examples
new AbilityActionDef(new ShieldPulse(), 2, initialDelay: 1, skillExperiencePerRank: 3);
Properties
Area
Optional emitted region.
public AreaEffectDef Area { get; }
Property Value
Attack
Optional additional ranged attack.
public RangedAttackDef Attack { get; }
Property Value
Cooldown
Repeat delay measured from successful activation.
public float Cooldown { get; }
Property Value
CustomAction
Optional custom activation payload; shared configuration must remain immutable.
public IAbilityAction CustomAction { get; }
Property Value
InitialDelay
Delay before a newly activated channel can run.
public float InitialDelay { get; }
Property Value
SelfEffect
Optional self attachment.
public StatusEffectDef SelfEffect { get; }
Property Value
SkillExperiencePerRank
Optional hero skill experience per active rank on successful activation.
public float SkillExperiencePerRank { get; }
Property Value
Summon
Optional summon sequence.
public SummonDef Summon { get; }
Property Value
Methods
WithCustomAction(IAbilityAction)
Copies a built-in or custom action and replaces its custom payload.
public AbilityActionDef WithCustomAction(IAbilityAction customAction)
Parameters
customActionIAbilityAction
Returns
Examples
var combined = attackAction.WithCustomAction(new ShieldPulse());