using System; namespace Cthangover.Core.Battle { /// /// Plays a specific animation type. Each player is keyed by /// AnimationType so the registry can dispatch animations without /// knowing concrete player types. The onComplete callback chains /// into the action machine's polling loop. /// public interface IBattleAnimationPlayer { /// /// String key used by to select /// this player for a given . /// string AnimationType { get; } /// /// Starts playing the animation described by . /// Must invoke once the animation /// finishes, so the action machine can advance to the next step. /// void Play(IBattleAnimation anim, Action onComplete); } }