using System; using System.Collections.Generic; using DotNetCTFDumper.MMFParser.EXE; using DotNetCTFDumper.Utils; namespace DotNetCTFDumper.MMFParser.MFA.Loaders { public class ItemFolder:DataLoader { public List Items; public string Name; public uint UnkHeader; public uint NonFolder; public ItemFolder(ByteReader reader) : base(reader) { } public ItemFolder(EXE.ChunkList.Chunk chunk) : base(chunk) { } public override void Read() { UnkHeader = Reader.ReadUInt32(); Console.WriteLine("UNK HEADER: "+UnkHeader.ToString("X4")); if (UnkHeader == 0x70000004) { Name = Reader.AutoReadUnicode(); Items = new List(); var count = Reader.ReadUInt32(); for (int i = 0; i < count; i++) { Items.Add(Reader.ReadUInt32()); } } else { Name = null; Items = new List(); Items.Add(Reader.ReadUInt32()); } } public override void Write(ByteWriter Writer) { if (Name == null) { Writer.WriteInt32(0x70000005); } else { Writer.WriteInt32(0x70000004); Writer.AutoWriteUnicode(Name); Writer.WriteInt32(Items.Count); } foreach (var item in Items) { Writer.WriteUInt32(item); } } public override void Print() { throw new System.NotImplementedException(); } } }