public override void Parse(GameBitBuffer buffer) { Field0 = buffer.ReadInt(32); dwWidth = buffer.ReadInt(32); dwHeight = buffer.ReadInt(32); dwFaceCount = buffer.ReadInt(32); dwMipMapLevelMax = buffer.ReadInt(32); Field5 = new SerializeData[60]; for(int i = 0;i < _Field5.Length;i++) { _Field5[i] = new SerializeData(); _Field5[i].Parse(buffer); } Field6 = buffer.ReadInt(32); Field7 = buffer.ReadInt(32); Field8 = buffer.ReadCharArray(256); serImageFileIDs = new SerializeData(); serImageFileIDs.Parse(buffer); //still checking variablearrays this.ImageFileIDs = new List<ImageFileID>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _ImageFileIDs.Count; loop12++) { _ImageFileIDs[loop12] = new ImageFileID(); _ImageFileIDs[loop12].Parse(buffer); } serFrame = new SerializeData(); serFrame.Parse(buffer); //still checking variablearrays this.Frame = new List<TexFrame>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _Frame.Count; loop12++) { _Frame[loop12] = new TexFrame(); _Frame[loop12].Parse(buffer); } Field13 = new IVector2D(); Field13.Parse(buffer); Field14 = buffer.ReadInt(32); Field15 = buffer.ReadInt(32); Field16 = buffer.ReadInt(32); Field17 = buffer.ReadInt(32); Field18 = buffer.ReadInt(32); Field19 = buffer.ReadInt(32); Field20 = buffer.ReadInt64(64); Field21 = buffer.ReadInt(32); Field22 = (byte)buffer.ReadInt(8); Field23 = (byte)buffer.ReadInt(8); Field24 = (byte)buffer.ReadInt(8); }
public void FileRead(MpqFileStream stream, long offset) { stream.Position = offset + 16; Field0 = stream.ReadValueS32(); stream.Position = offset + 20; dwWidth = stream.ReadValueS32(); stream.Position = offset + 24; dwHeight = stream.ReadValueS32(); stream.Position = offset + 28; dwFaceCount = stream.ReadValueS32(); stream.Position = offset + 36; dwMipMapLevelMax = stream.ReadValueS32(); stream.Position = offset + 40; Field5 = new SerializeData[60]; for(int loop12=0; loop12 < 60; loop12++ ) { SerializeData temp12_Field5; temp12_Field5 = new SerializeData(); temp12_Field5.FileRead(stream, stream.Position); _Field5[loop12] = temp12_Field5; } stream.Position = offset + 520; Field6 = stream.ReadValueS32(); stream.Position = offset + 32; Field7 = stream.ReadValueS32(); stream.Position = offset + 592; Field8 = stream.ReadString(256); stream.Position = offset + 852; serImageFileIDs = new SerializeData(); serImageFileIDs.FileRead(stream, stream.Position); stream.Position = offset + 848; //still checking variablearrays ImageFileIDs = new List<ImageFileID>(); for(int i = 0; i < (int)(serImageFileIDs.Field1 / 516); i++) { stream.Position = serImageFileIDs.Field0 + 16 + (516*i) ; ImageFileID temp12_ImageFileIDs; temp12_ImageFileIDs = new ImageFileID(); temp12_ImageFileIDs.FileRead(stream, stream.Position); _ImageFileIDs.Add(temp12_ImageFileIDs); } stream.Position = offset + 524; serFrame = new SerializeData(); serFrame.FileRead(stream, stream.Position); stream.Position = offset + 532; //still checking variablearrays Frame = new List<TexFrame>(); for(int i = 0; i < (int)(serFrame.Field1 / 80); i++) { stream.Position = serFrame.Field0 + 16 + (80*i) ; TexFrame temp12_Frame; temp12_Frame = new TexFrame(); temp12_Frame.FileRead(stream, stream.Position); _Frame.Add(temp12_Frame); } stream.Position = offset + 536; Field13 = new IVector2D(); Field13.FileRead(stream, stream.Position); stream.Position = offset + 860; Field14 = stream.ReadValueS32(); stream.Position = offset + 864; Field15 = stream.ReadValueS32(); stream.Position = offset + 868; Field16 = stream.ReadValueS32(); stream.Position = offset + 544; Field17 = stream.ReadValueS32(); stream.Position = offset + 548; Field18 = stream.ReadValueS32(); stream.Position = offset + 552; Field19 = stream.ReadValueS32(); stream.Position = offset + 560; Field20 = stream.ReadValueS64(); stream.Position = offset + 568; Field21 = stream.ReadValueS32(); stream.Position = offset + 572; Field22 = (byte)stream.ReadByte(); stream.Position = offset + 573; Field23 = (byte)stream.ReadByte(); stream.Position = offset + 574; Field24 = (byte)stream.ReadByte(); }