private void Initialize(string name) { Name = name; Texture = GameCore.Instance.Content.Load <Texture2D>("Sprites/" + Name); Animations.ForEach(a => NamedAnimations.Add(a.Name, a)); Frames.ForEach(f => NamedFrames.Add(f.Name, f)); int xCount = Texture.Width / Image.FrameSize.X; int yCount = Texture.Height / Image.FrameSize.Y; for (int y = 0; y < yCount; y++) { for (int x = 0; x < xCount; x++) { sourceFrames.Add(new Rectangle(new Point(x, y) * Image.FrameSize, Image.FrameSize)); } } }
/// <summary> /// Converts all replay frames to a string /// </summary> public string FramesToString(bool debug = false) { // The format for the replay frames are the following: // Time|KeysPressed, var frameStr = ""; if (debug) { Frames.ForEach(x => frameStr += $"{x.ToDebugString()}\r\n"); } else { Frames.ForEach(x => frameStr += $"{x.ToString()},"); } return(frameStr); }