public Animation(BinaryReader reader) { int spriteSheetsCount = reader.ReadByte(); SpriteSheets = new List <string>(spriteSheetsCount); while (spriteSheetsCount-- > 0) { SpriteSheets.Add(StringEncoding.GetString(reader)); } var animationsCount = reader.ReadByte(); Animations = new List <AnimationEntry>(animationsCount); while (animationsCount-- > 0) { Animations.Add(new AnimationEntry(reader)); } var collisionBoxesCount = reader.ReadByte(); Hitboxes = new List <HitboxEntry>(collisionBoxesCount); while (collisionBoxesCount-- > 0) { Hitboxes.Add(new HitboxEntry(reader)); } }
public void Read(BinaryReader reader) { Name = StringEncoding.GetString(reader); var framesCount = reader.ReadByte(); Speed = reader.ReadByte(); Loop = reader.ReadByte(); Flags = reader.ReadByte(); for (int i = 0; i < framesCount; i++) { var frame = new Frame(); frame.Read(reader); Frames.Add(frame); } }