using System; using UnityEngine; using Framework.Services; namespace Framework.Cinematics { /// Movement instruction [Serializable] public class Instruction { /// What the actor should do public Action Action; /// Speed at which the animation should run public float Speed; /// Time the actor should take to reach the location public float Duration; /// Position to which the actor will move in this instruction public Vector3 Position; /// Animation that will be played for special animation actions public int SpecialAnimationState; /// Whether the instruction moves the actor to a different place public bool IsMovingInstruction { get { return (this.Action == Cinematics.Action.Walk) || (this.Action == Cinematics.Action.Jump) || (this.Action == Cinematics.Action.Teleport); } } /// Whether the instruction changes the actor's orientation public bool IsOrientingInstruction { get { return (this.Action == Cinematics.Action.Turn) || (this.Action == Cinematics.Action.Walk) || (this.Action == Cinematics.Action.Jump); } } } } // namespace Framework.Cinematics