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