public override void SetListBytes(ref List <byte> listBytes) { sectionIdentifier = Section.LEDR; int previousSize = listBytes.Count; if (LevelLabel.Length > 64) { LevelLabel = new string(LevelLabel.Take(64).ToArray()); } foreach (char c in LevelLabel) { listBytes.Add((byte)c); } for (int i = LevelLabel.Length; i < 64; i++) { listBytes.Add(0); } listBytes.AddRange(GameProgress.Reverse()); listBytes.AddRange(Unknown1.Reverse()); listBytes.AddRange(Unknown2.Reverse()); listBytes.AddRange(Unknown3.Reverse()); if (ThumbnailIcon != ThumbIcon.None) { listBytes.Add((byte)ThumbnailIcon); listBytes.Add(0); listBytes.Add(0); listBytes.Add(0); } listBytes.AddRange(Unknown4.Reverse()); if (UnknownText.Length > 0xA8) { UnknownText = new string(UnknownText.Take(0xA8).ToArray()); } foreach (char c in UnknownText) { listBytes.Add((byte)c); } bytesUsed = listBytes.Count - previousSize; for (int i = bytesUsed; i < 0x100; i++) { listBytes.Add(0xBF); } blockSize = listBytes.Count - previousSize; }