public override void Parse(GameBitBuffer buffer) { Field0 = buffer.ReadInt(32); Field1 = buffer.ReadInt(32); Field2 = buffer.ReadInt(32); Field3 = buffer.ReadInt(32); Field4 = buffer.ReadFloat32(); Field5 = buffer.ReadFloat32(); Field6 = buffer.ReadFloat32(); serPolytope = new SerializeData(); serPolytope.Parse(buffer); //still checking variablearrays this.Polytope = new List<PolytopeData>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _Polytope.Count; loop12++) { _Polytope[loop12] = new PolytopeData(); _Polytope[loop12].Parse(buffer); } Field9 = new Vector3D(); Field9.Parse(buffer); Field10 = new Vector3D(); Field10.Parse(buffer); Field11 = buffer.ReadFloat32(); }
public void FileRead(MpqFileStream stream, long offset) { stream.Position = offset + 0; Field0 = stream.ReadValueS32(); stream.Position = offset + 4; Field1 = stream.ReadValueS32(); stream.Position = offset + 8; Field2 = stream.ReadValueS32(); stream.Position = offset + 12; Field3 = stream.ReadValueS32(); stream.Position = offset + 16; Field4 = stream.ReadValueF32(); stream.Position = offset + 20; Field5 = stream.ReadValueF32(); stream.Position = offset + 24; Field6 = stream.ReadValueF32(); stream.Position = offset + 28; serPolytope = new SerializeData(); serPolytope.FileRead(stream, stream.Position); stream.Position = offset + 36; //still checking variablearrays Polytope = new List<PolytopeData>(); for(int i = 0; i < (int)(serPolytope.Field1 / 96); i++) { stream.Position = serPolytope.Field0 + 16 + (96*i) ; PolytopeData temp12_Polytope; temp12_Polytope = new PolytopeData(); temp12_Polytope.FileRead(stream, stream.Position); _Polytope.Add(temp12_Polytope); } stream.Position = offset + 40; Field9 = new Vector3D(); Field9.FileRead(stream, stream.Position); stream.Position = offset + 52; Field10 = new Vector3D(); Field10.FileRead(stream, stream.Position); stream.Position = offset + 64; Field11 = stream.ReadValueF32(); }