public override void Parse(GameBitBuffer buffer) { Field0 = buffer.ReadBool(); Field1 = buffer.ReadFloat32(); Field2 = buffer.ReadFloat32(); Field3 = buffer.ReadInt(32); Field4 = buffer.ReadInt(32); serSpawnItems = new SerializeData(); serSpawnItems.Parse(buffer); //still checking variablearrays this.SpawnItems = new List<LevelAreaSpawnItem>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _SpawnItems.Count; loop12++) { _SpawnItems[loop12] = new LevelAreaSpawnItem(); _SpawnItems[loop12].Parse(buffer); } Field7 = buffer.ReadInt(32); Field8 = buffer.ReadInt(32); }
public void FileRead(MpqFileStream stream, long offset) { stream.Position = offset + 0; Field0 = stream.ReadValueS32() == 1; stream.Position = offset + 4; Field1 = stream.ReadValueF32(); stream.Position = offset + 8; Field2 = stream.ReadValueF32(); stream.Position = offset + 12; Field3 = stream.ReadValueS32(); stream.Position = offset + 16; Field4 = stream.ReadValueS32(); stream.Position = offset + 32; serSpawnItems = new SerializeData(); serSpawnItems.FileRead(stream, stream.Position); stream.Position = offset + 24; //still checking variablearrays SpawnItems = new List<LevelAreaSpawnItem>(); for(int i = 0; i < (int)(serSpawnItems.Field1 / 28); i++) { stream.Position = serSpawnItems.Field0 + 16 + (28*i) ; LevelAreaSpawnItem temp12_SpawnItems; temp12_SpawnItems = new LevelAreaSpawnItem(); temp12_SpawnItems.FileRead(stream, stream.Position); _SpawnItems.Add(temp12_SpawnItems); } stream.Position = offset + 40; Field7 = stream.ReadValueS32(); stream.Position = offset + 44; Field8 = stream.ReadValueS32(); }