public override void Parse(GameBitBuffer buffer) { Field0 = buffer.ReadCharArray(64); Field1 = buffer.ReadInt(32); Field2 = new int[4]; for(int i = 0;i < _Field2.Length;i++) _Field2[i] = buffer.ReadInt(32); Field3 = new int[4]; for(int i = 0;i < _Field3.Length;i++) _Field3[i] = buffer.ReadInt(32); Field4 = buffer.ReadInt(32); serSpawnGroups = new SerializeData(); serSpawnGroups.Parse(buffer); //still checking variablearrays this.SpawnGroups = new List<LevelAreaSpawnGroup>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _SpawnGroups.Count; loop12++) { _SpawnGroups[loop12] = new LevelAreaSpawnGroup(); _SpawnGroups[loop12].Parse(buffer); } }
public void FileRead(MpqFileStream stream, long offset) { stream.Position = offset + 0; Field0 = stream.ReadString(64); stream.Position = offset + 64; Field1 = stream.ReadValueS32(); stream.Position = offset + 68; Field2 = new int[4]; for(int loop12=0; loop12 < 4; loop12++ ) { int temp12_Field2; temp12_Field2 = stream.ReadValueS32(); _Field2[loop12] = temp12_Field2; } stream.Position = offset + 84; Field3 = new int[4]; for(int loop12=0; loop12 < 4; loop12++ ) { int temp12_Field3; temp12_Field3 = stream.ReadValueS32(); _Field3[loop12] = temp12_Field3; } stream.Position = offset + 100; Field4 = stream.ReadValueS32(); stream.Position = offset + 112; serSpawnGroups = new SerializeData(); serSpawnGroups.FileRead(stream, stream.Position); stream.Position = offset + 104; //still checking variablearrays SpawnGroups = new List<LevelAreaSpawnGroup>(); for(int i = 0; i < (int)(serSpawnGroups.Field1 / 48); i++) { stream.Position = serSpawnGroups.Field0 + 16 + (48*i) ; LevelAreaSpawnGroup temp12_SpawnGroups; temp12_SpawnGroups = new LevelAreaSpawnGroup(); temp12_SpawnGroups.FileRead(stream, stream.Position); _SpawnGroups.Add(temp12_SpawnGroups); } }