namespace Robust.Client.Animations { /// /// A single track of an . /// public abstract class AnimationTrack { /// /// Return the values necessary to initialize a playback. /// /// /// A tuple containing the new key frame the animation track is on and the new time left in said key frame. /// public abstract (int KeyFrameIndex, float FramePlayingTime) InitPlayback(); /// /// Advance this animation track's playback. /// /// The object this animation track is being played on, e.g. an entity. /// The key frame this animation track is on. /// The amount of time this keyframe has been running. /// The amount of time to increase. /// /// A tuple containing the new key frame the animation track is on and the current time on said key frame. /// public abstract (int KeyFrameIndex, float FramePlayingTime) AdvancePlayback(object context, int prevKeyFrameIndex, float prevPlayingTime, float frameTime); } }