예제 #1
0
        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();
        }