internal void AddAnimation(string name, double delay, SpriteAnimationParams setParams, params int[] frames) { int[] newFrames = null; if (setParams.HasFlag(SpriteAnimationParams.FiveFrameDirection)) { newFrames = new int[frames.Length * 5]; for (int i = 0; i < frames.Length; i++) { for (int j = 0; j < 5; j++) { newFrames[i * 5 + j] = frames[i] + j; } } } else { newFrames = frames; } SpriteAnimation anim = new SpriteAnimation(name, setParams); anim.FrameDelay = delay; anim.AddAnimationFrames(newFrames); allAnimations.Add(anim); }
internal SpriteAnimation(string setName, SpriteAnimationParams setParams) { fiveFrameOffset = 0; Params = setParams; currentFrameTime = 0; Name = setName; currentAnimationFrame = 0; animationFrames = new List<int>(); Phase = SpriteAnimationPhase.Initialized; Orientation = Orientation.North; }
internal SpriteAnimation(string setName, SpriteAnimationParams setParams) { fiveFrameOffset = 0; Params = setParams; currentFrameTime = 0; Name = setName; currentAnimationFrame = 0; animationFrames = new List <int>(); Phase = SpriteAnimationPhase.Initialized; Orientation = Orientation.North; }
internal void AddAnimation(string name, double delay, SpriteAnimationParams setParams, params int[] frames) { int[] newFrames = null; if (setParams.HasFlag (SpriteAnimationParams.FiveFrameDirection)) { newFrames = new int[frames.Length * 5]; for (int i = 0; i < frames.Length; i++) { for (int j = 0; j < 5; j++) { newFrames[i * 5 + j] = frames[i] + j; } } } else newFrames = frames; SpriteAnimation anim = new SpriteAnimation(name, setParams); anim.FrameDelay = delay; anim.AddAnimationFrames(newFrames); allAnimations.Add(anim); }