protected override void Parse(BigEndianReader reader) { reader.ReadByte(); // ID _Size = reader.ReadInt16(); byte count = reader.ReadByte(); _CharName = new List <string>(); if (count != 0) { for (int i = 0; i < count; ++i) { _CharName.Add(reader.ReadAsciiString(30)); reader.Fill(30); } } else { count = 7; for (int i = 0; i < count; ++i) { reader.Fill(60); } } byte citiesCount = reader.ReadByte(); _CitiesInfo = new List <CitiesInfo>(); for (int j = 0; j < citiesCount; ++j) { _CitiesInfo.Add(new CitiesInfo(this, reader)); } _Flags = reader.ReadUInt32(); _LastCharSlot = reader.ReadInt16(); }