public MpkFile() { if (!IMpkEntry.IsInit) { IMpkEntry.InitTypes(); } }
private void readV1(BinaryReader br, MpkFileHeader header) { ArrayList files = new ArrayList(); foreach (int size in header.Sizes) { ArrayList chars = new ArrayList(); char ch; while ((ch = br.ReadChar()) != '\0') { chars.Add(ch); } byte[] data = br.ReadBytes(size); IMpkEntry ime = IMpkEntry.GetType((MpkEntryType)br.ReadByte()); ime.Data = data; ime.FileName = new string((char[])chars.ToArray(typeof(char))); files.Add(ime); } }