Exemple #1
0
            public void Read(FileReader reader, Header header)
            {
                uint SectionSize      = reader.ReadUInt32();
                uint numUserParams    = reader.ReadUInt32();
                uint numAssetParams   = reader.ReadUInt32();
                uint unknown          = reader.ReadUInt32();
                uint numTriggerParams = reader.ReadUInt32();

                uint nameTblPos = (uint)reader.Position + ((numUserParams + numAssetParams + numTriggerParams) * 12);

                for (int i = 0; i < numUserParams; i++)
                {
                    var entry = new ParamDefineEntry();
                    entry.Read(reader, nameTblPos);
                    UserParams.Add(entry);
                }
                for (int i = 0; i < numAssetParams; i++)
                {
                    var entry = new ParamDefineEntry();
                    entry.Read(reader, nameTblPos);
                    AssetParams.Add(entry);
                }
                for (int i = 0; i < numTriggerParams; i++)
                {
                    var entry = new ParamDefineEntry();
                    entry.Read(reader, nameTblPos);
                    TriggerParams.Add(entry);
                }
            }
            public void Read(FileReader reader)
            {
                uint SectionSize      = reader.ReadUInt32();
                uint numUserParams    = reader.ReadUInt32();
                uint numAssetParams   = reader.ReadUInt32();
                uint unknown          = reader.ReadUInt32();
                uint numTriggerParams = reader.ReadUInt32();

                for (int i = 0; i < numUserParams; i++)
                {
                    var entry = new ParamDefineEntry();
                    entry.Read(reader);
                    UserParams.Add(entry);
                }
                for (int i = 0; i < numAssetParams; i++)
                {
                    var entry = new ParamDefineEntry();
                    entry.Read(reader);
                    AssetParams.Add(entry);
                }
                for (int i = 0; i < numTriggerParams; i++)
                {
                    var entry = new ParamDefineEntry();
                    entry.Read(reader);
                    TriggerParams.Add(entry);
                }

                List <byte> StringTable = new List <byte>();

                long StringTablePosition = reader.Position;

                foreach (var param in UserParams)
                {
                    param.ReadString(reader, StringTablePosition);
                }

                foreach (var param in AssetParams)
                {
                    param.ReadString(reader, StringTablePosition);
                }

                foreach (var param in TriggerParams)
                {
                    param.ReadString(reader, StringTablePosition);
                }
            }