예제 #1
0
        public void ReadSummary(byte[] data)
        {
            reader = new GDCryptoDataBuffer(data);
            int val = 0;

            reader.ReadCryptoKey();

            if (!reader.ReadCryptoInt(out val))
            {
                throw new FormatException("ERR_UNSUPPORTED_VERSION");
            }

            if (val != 0x58434447)
            {
                throw new FormatException("ERR_UNSUPPORTED_VERSION");
            }

            reader.ReadCryptoInt(out val);
            if (val != 1)
            {
                throw new FormatException("ERR_UNSUPPORTED_VERSION");
            }


            ReadHeader();

            reader.ReadCryptoInt(out val, false);
            if (val != 0)
            {
                throw new FormatException("ERR_UNSUPPORTED_VERSION");
            }

            int version;

            reader.ReadCryptoInt(out version);
            if ((version != 6) && (version != 7))
            {
                throw new FormatException("ERR_UNSUPPORTED_VERSION");
            }

            reader.ReadAndDiscardUID();
            ReadCharacterInfo();
            Bio.Read(reader);

            Inventory.Read(reader);
        }