public override void Parse(GameBitBuffer buffer) { Field0 = new dmFloat3(); Field0.Parse(buffer); serVertices = new SerializeData(); serVertices.Parse(buffer); //still checking variablearrays this.Vertices = new List<dmFloat3>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _Vertices.Count; loop12++) { _Vertices[loop12] = new dmFloat3(); _Vertices[loop12].Parse(buffer); } serPlanes = new SerializeData(); serPlanes.Parse(buffer); //still checking variablearrays this.Planes = new List<dmPlane>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _Planes.Count; loop12++) { _Planes[loop12] = new dmPlane(); _Planes[loop12].Parse(buffer); } serSubEdges = new SerializeData(); serSubEdges.Parse(buffer); //still checking variablearrays this.SubEdges = new List<dmSubEdge>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _SubEdges.Count; loop12++) { _SubEdges[loop12] = new dmSubEdge(); _SubEdges[loop12].Parse(buffer); } serFaceSubEdges = new SerializeData(); serFaceSubEdges.Parse(buffer); //still checking variablearrays this.FaceSubEdges = new List<byte>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _FaceSubEdges.Count; loop12++) { _FaceSubEdges[loop12] = (byte)buffer.ReadInt(0); } Field9 = buffer.ReadInt(32); Field10 = buffer.ReadInt(32); Field11 = buffer.ReadInt(32); Field12 = buffer.ReadFloat32(); Field13 = buffer.ReadFloat32(); }
public void FileRead(MpqFileStream stream, long offset) { stream.Position = offset + 32; Field0 = new dmFloat3(); Field0.FileRead(stream, stream.Position); stream.Position = offset + 64; serVertices = new SerializeData(); serVertices.FileRead(stream, stream.Position); stream.Position = offset + 0; //still checking variablearrays Vertices = new List<dmFloat3>(); for(int i = 0; i < (int)(serVertices.Field1 / 12); i++) { stream.Position = serVertices.Field0 + 16 + (12*i) ; dmFloat3 temp12_Vertices; temp12_Vertices = new dmFloat3(); temp12_Vertices.FileRead(stream, stream.Position); _Vertices.Add(temp12_Vertices); } stream.Position = offset + 72; serPlanes = new SerializeData(); serPlanes.FileRead(stream, stream.Position); stream.Position = offset + 8; //still checking variablearrays Planes = new List<dmPlane>(); for(int i = 0; i < (int)(serPlanes.Field1 / 16); i++) { stream.Position = serPlanes.Field0 + 16 + (16*i) ; dmPlane temp12_Planes; temp12_Planes = new dmPlane(); temp12_Planes.FileRead(stream, stream.Position); _Planes.Add(temp12_Planes); } stream.Position = offset + 80; serSubEdges = new SerializeData(); serSubEdges.FileRead(stream, stream.Position); stream.Position = offset + 16; //still checking variablearrays SubEdges = new List<dmSubEdge>(); for(int i = 0; i < (int)(serSubEdges.Field1 / 4); i++) { stream.Position = serSubEdges.Field0 + 16 + (4*i) ; dmSubEdge temp12_SubEdges; temp12_SubEdges = new dmSubEdge(); temp12_SubEdges.FileRead(stream, stream.Position); _SubEdges.Add(temp12_SubEdges); } stream.Position = offset + 88; serFaceSubEdges = new SerializeData(); serFaceSubEdges.FileRead(stream, stream.Position); stream.Position = offset + 24; //still checking variablearrays FaceSubEdges = new List<byte>(); for(int i = 0; i < (int)(serFaceSubEdges.Field1 / 1); i++) { stream.Position = serFaceSubEdges.Field0 + 16 + (1*i) ; byte temp12_FaceSubEdges; temp12_FaceSubEdges = (byte)stream.ReadByte(); _FaceSubEdges.Add(temp12_FaceSubEdges); } stream.Position = offset + 44; Field9 = stream.ReadValueS32(); stream.Position = offset + 48; Field10 = stream.ReadValueS32(); stream.Position = offset + 52; Field11 = stream.ReadValueS32(); stream.Position = offset + 56; Field12 = stream.ReadValueF32(); stream.Position = offset + 60; Field13 = stream.ReadValueF32(); }