21 lines
630 B
C#

using UnityEngine;
public enum BehaviorTrigger
{
PreCast, // Before ability executes
Execute, // MAIN EXECUTION - replaces your override Execute()
PostCast, // After ability executes
OnHit, // When ability hits target
OnKill, // When ability kills target
OnCrit // When ability crits
}
public abstract class RuntimeBehavior
{
public BehaviorTrigger Trigger { get; set; }
public string BehaviorName { get; set; }
public abstract void Execute(RuntimeAbilityInstance ability, Taggable user, Transform target, Vector3 point);
public abstract RuntimeBehavior Clone();
}