public override void Parse(GameBitBuffer buffer) { Field0 = buffer.ReadCharArray(64); Field1 = buffer.ReadInt(32); Field2 = new AABB(); Field2.Parse(buffer); wsBounds = new Sphere(); wsBounds.Parse(buffer); Field4 = new PRSTransform(); Field4.Parse(buffer); Field5 = new PRSTransform(); Field5.Parse(buffer); Field6 = new PRSTransform(); Field6.Parse(buffer); Field7 = buffer.ReadInt(32); serShapes = new SerializeData(); serShapes.Parse(buffer); //still checking variablearrays this.Shapes = new List<CollisionShape>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _Shapes.Count; loop12++) { _Shapes[loop12] = new CollisionShape(); _Shapes[loop12].Parse(buffer); } serConstraint = new SerializeData(); serConstraint.Parse(buffer); //still checking variablearrays this.Constraint = new List<ConstraintParameters>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _Constraint.Count; loop12++) { _Constraint[loop12] = new ConstraintParameters(); _Constraint[loop12].Parse(buffer); } snoParticleSystem = buffer.ReadInt(32); }
public override void Parse(GameBitBuffer buffer) { dwFlags = buffer.ReadInt(32); nBoneCount = buffer.ReadInt(32); serBoneStructure = new SerializeData(); serBoneStructure.Parse(buffer); //still checking variablearrays this.BoneStructure = new List<BoneStructure>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _BoneStructure.Count; loop12++) { _BoneStructure[loop12] = new BoneStructure(); _BoneStructure[loop12].Parse(buffer); } Field4 = new LookAtData(); Field4.Parse(buffer); Field5 = buffer.ReadInt(32); serBonePulses = new SerializeData(); serBonePulses.Parse(buffer); //still checking variablearrays this.BonePulses = new List<BonePulseData>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _BonePulses.Count; loop12++) { _BonePulses[loop12] = new BonePulseData(); _BonePulses[loop12].Parse(buffer); } Field8 = new GeoSet[2]; for(int i = 0;i < _Field8.Length;i++) { _Field8[i] = new GeoSet(); _Field8[i].Parse(buffer); } Field9 = new Sphere(); Field9.Parse(buffer); nCollisionCapsuleCount = buffer.ReadInt(32); serCollisionCapsules = new SerializeData(); serCollisionCapsules.Parse(buffer); //still checking variablearrays this.CollisionCapsules = new List<CollisionCapsule>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _CollisionCapsules.Count; loop12++) { _CollisionCapsules[loop12] = new CollisionCapsule(); _CollisionCapsules[loop12].Parse(buffer); } nHardpointCount = buffer.ReadInt(32); serHardpoints = new SerializeData(); serHardpoints.Parse(buffer); //still checking variablearrays this.Hardpoints = new List<Hardpoint>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _Hardpoints.Count; loop12++) { _Hardpoints[loop12] = new Hardpoint(); _Hardpoints[loop12].Parse(buffer); } Field16 = new Vector3D(); Field16.Parse(buffer); tOctreeVisualMesh = new Octree(); tOctreeVisualMesh.Parse(buffer); aabbBounds = new AABB(); aabbBounds.Parse(buffer); Field19 = buffer.ReadCharArray(256); Field20 = buffer.ReadCharArray(256); Field21 = buffer.ReadCharArray(256); Field22 = buffer.ReadCharArray(256); Field23 = buffer.ReadInt(32); Field24 = buffer.ReadFloat32(); Field25 = buffer.ReadInt(32); nLoopConstraintCount = buffer.ReadInt(32); serLoopConstraints = new SerializeData(); serLoopConstraints.Parse(buffer); //still checking variablearrays this.LoopConstraints = new List<ConstraintParameters>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _LoopConstraints.Count; loop12++) { _LoopConstraints[loop12] = new ConstraintParameters(); _LoopConstraints[loop12].Parse(buffer); } uRagdollDegrade = buffer.ReadInt(32); }
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 AABB(); Field2.FileRead(stream, stream.Position); stream.Position = offset + 92; wsBounds = new Sphere(); wsBounds.FileRead(stream, stream.Position); stream.Position = offset + 108; Field4 = new PRSTransform(); Field4.FileRead(stream, stream.Position); stream.Position = offset + 140; Field5 = new PRSTransform(); Field5.FileRead(stream, stream.Position); stream.Position = offset + 172; Field6 = new PRSTransform(); Field6.FileRead(stream, stream.Position); stream.Position = offset + 204; Field7 = stream.ReadValueS32(); stream.Position = offset + 208; serShapes = new SerializeData(); serShapes.FileRead(stream, stream.Position); stream.Position = offset + 216; //still checking variablearrays Shapes = new List<CollisionShape>(); for(int i = 0; i < (int)(serShapes.Field1 / 68); i++) { stream.Position = serShapes.Field0 + 16 + (68*i) ; CollisionShape temp12_Shapes; temp12_Shapes = new CollisionShape(); temp12_Shapes.FileRead(stream, stream.Position); _Shapes.Add(temp12_Shapes); } stream.Position = offset + 220; serConstraint = new SerializeData(); serConstraint.FileRead(stream, stream.Position); stream.Position = offset + 228; //still checking variablearrays Constraint = new List<ConstraintParameters>(); for(int i = 0; i < (int)(serConstraint.Field1 / 276); i++) { stream.Position = serConstraint.Field0 + 16 + (276*i) ; ConstraintParameters temp12_Constraint; temp12_Constraint = new ConstraintParameters(); temp12_Constraint.FileRead(stream, stream.Position); _Constraint.Add(temp12_Constraint); } stream.Position = offset + 232; snoParticleSystem = stream.ReadValueS32(); }
public void FileRead(MpqFileStream stream, long offset) { stream.Position = offset + 0; dwFlags = stream.ReadValueS32(); stream.Position = offset + 4; nBoneCount = stream.ReadValueS32(); stream.Position = offset + 8; serBoneStructure = new SerializeData(); serBoneStructure.FileRead(stream, stream.Position); stream.Position = offset + 16; //still checking variablearrays BoneStructure = new List<BoneStructure>(); for(int i = 0; i < (int)(serBoneStructure.Field1 / 236); i++) { stream.Position = serBoneStructure.Field0 + 16 + (236*i) ; BoneStructure temp12_BoneStructure; temp12_BoneStructure = new BoneStructure(); temp12_BoneStructure.FileRead(stream, stream.Position); _BoneStructure.Add(temp12_BoneStructure); } stream.Position = offset + 24; Field4 = new LookAtData(); Field4.FileRead(stream, stream.Position); stream.Position = offset + 116; Field5 = stream.ReadValueS32(); stream.Position = offset + 128; serBonePulses = new SerializeData(); serBonePulses.FileRead(stream, stream.Position); stream.Position = offset + 120; //still checking variablearrays BonePulses = new List<BonePulseData>(); for(int i = 0; i < (int)(serBonePulses.Field1 / 76); i++) { stream.Position = serBonePulses.Field0 + 16 + (76*i) ; BonePulseData temp12_BonePulses; temp12_BonePulses = new BonePulseData(); temp12_BonePulses.FileRead(stream, stream.Position); _BonePulses.Add(temp12_BonePulses); } stream.Position = offset + 136; Field8 = new GeoSet[2]; for(int loop12=0; loop12 < 2; loop12++ ) { GeoSet temp12_Field8; temp12_Field8 = new GeoSet(); temp12_Field8.FileRead(stream, stream.Position); _Field8[loop12] = temp12_Field8; } stream.Position = offset + 184; Field9 = new Sphere(); Field9.FileRead(stream, stream.Position); stream.Position = offset + 200; nCollisionCapsuleCount = stream.ReadValueS32(); stream.Position = offset + 204; serCollisionCapsules = new SerializeData(); serCollisionCapsules.FileRead(stream, stream.Position); stream.Position = offset + 216; //still checking variablearrays CollisionCapsules = new List<CollisionCapsule>(); for(int i = 0; i < (int)(serCollisionCapsules.Field1 / 104); i++) { stream.Position = serCollisionCapsules.Field0 + 16 + (104*i) ; CollisionCapsule temp12_CollisionCapsules; temp12_CollisionCapsules = new CollisionCapsule(); temp12_CollisionCapsules.FileRead(stream, stream.Position); _CollisionCapsules.Add(temp12_CollisionCapsules); } stream.Position = offset + 224; nHardpointCount = stream.ReadValueS32(); stream.Position = offset + 228; serHardpoints = new SerializeData(); serHardpoints.FileRead(stream, stream.Position); stream.Position = offset + 240; //still checking variablearrays Hardpoints = new List<Hardpoint>(); for(int i = 0; i < (int)(serHardpoints.Field1 / 96); i++) { stream.Position = serHardpoints.Field0 + 16 + (96*i) ; Hardpoint temp12_Hardpoints; temp12_Hardpoints = new Hardpoint(); temp12_Hardpoints.FileRead(stream, stream.Position); _Hardpoints.Add(temp12_Hardpoints); } stream.Position = offset + 248; Field16 = new Vector3D(); Field16.FileRead(stream, stream.Position); stream.Position = offset + 264; tOctreeVisualMesh = new Octree(); tOctreeVisualMesh.FileRead(stream, stream.Position); stream.Position = offset + 336; aabbBounds = new AABB(); aabbBounds.FileRead(stream, stream.Position); stream.Position = offset + 400; Field19 = stream.ReadString(256); stream.Position = offset + 656; Field20 = stream.ReadString(256); stream.Position = offset + 912; Field21 = stream.ReadString(256); stream.Position = offset + 1168; Field22 = stream.ReadString(256); stream.Position = offset + 1424; Field23 = stream.ReadValueS32(); stream.Position = offset + 1428; Field24 = stream.ReadValueF32(); stream.Position = offset + 1432; Field25 = stream.ReadValueS32(); stream.Position = offset + 360; nLoopConstraintCount = stream.ReadValueS32(); stream.Position = offset + 364; serLoopConstraints = new SerializeData(); serLoopConstraints.FileRead(stream, stream.Position); stream.Position = offset + 376; //still checking variablearrays LoopConstraints = new List<ConstraintParameters>(); for(int i = 0; i < (int)(serLoopConstraints.Field1 / 276); i++) { stream.Position = serLoopConstraints.Field0 + 16 + (276*i) ; ConstraintParameters temp12_LoopConstraints; temp12_LoopConstraints = new ConstraintParameters(); temp12_LoopConstraints.FileRead(stream, stream.Position); _LoopConstraints.Add(temp12_LoopConstraints); } stream.Position = offset + 384; uRagdollDegrade = stream.ReadValueS32(); }
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(); Field7 = new ConvexHull(); Field7.Parse(buffer); Field8 = new OBB(); Field8.Parse(buffer); Field9 = new Sphere(); Field9.Parse(buffer); Field10 = new Cylinder(); Field10.Parse(buffer); Field11 = new Capsule(); Field11.Parse(buffer); }
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; Field7 = new ConvexHull(); Field7.FileRead(stream, stream.Position); stream.Position = offset + 132; Field8 = new OBB(); Field8.FileRead(stream, stream.Position); stream.Position = offset + 172; Field9 = new Sphere(); Field9.FileRead(stream, stream.Position); stream.Position = offset + 188; Field10 = new Cylinder(); Field10.FileRead(stream, stream.Position); stream.Position = offset + 216; Field11 = new Capsule(); Field11.FileRead(stream, stream.Position); }
public override void Parse(GameBitBuffer buffer) { Field0 = buffer.ReadInt(32); Type = buffer.ReadInt(4); ApperanceSNO = buffer.ReadInt(32); PhysMeshSNO = buffer.ReadInt(32); Cylinder = new AxialCylinder(); Cylinder.Parse(buffer); Sphere = new Sphere(); Sphere.Parse(buffer); AABBBounds = new AABB(); AABBBounds.Parse(buffer); serTagMap = new SerializeData(); serTagMap.Parse(buffer); TagMap = new DT_TAGMAP(); TagMap.Parse(buffer); AnimSetSNO = buffer.ReadInt(32); MonsterSNO = buffer.ReadInt(32); Field11 = buffer.ReadInt(32); serMsgTriggeredEvents = new SerializeData(); serMsgTriggeredEvents.Parse(buffer); //still checking variablearrays this.MsgTriggeredEvents = new List<MsgTriggeredEvent>( buffer.ReadInt(0) ); for(int loop12 = 0; loop12 < _MsgTriggeredEvents.Count; loop12++) { _MsgTriggeredEvents[loop12] = new MsgTriggeredEvent(); _MsgTriggeredEvents[loop12].Parse(buffer); } V0 = new Vector3D(); V0.Parse(buffer); Looks = new WeightedLook[8]; for(int i = 0;i < _Looks.Length;i++) { _Looks[i] = new WeightedLook(); _Looks[i].Parse(buffer); } PhysicsSNO = buffer.ReadInt(32); Field17 = buffer.ReadInt(32); Field18 = buffer.ReadInt(32); Field19 = buffer.ReadFloat32(); Field20 = buffer.ReadFloat32(); Field21 = buffer.ReadFloat32(); ActorCollisionData = new ActorCollisionData(); ActorCollisionData.Parse(buffer); InventoryImages = new InventoryImages[5]; for(int i = 0;i < _InventoryImages.Length;i++) { _InventoryImages[i] = new InventoryImages(); _InventoryImages[i].Parse(buffer); } Field24 = buffer.ReadInt(32); serVOCastingNotes = new SerializeData(); serVOCastingNotes.Parse(buffer); throw new Exception("DT_CSTRING in network packets not implemented."); serVORole = new SerializeData(); serVORole.Parse(buffer); throw new Exception("DT_CSTRING in network packets not implemented."); }
public void FileRead(MpqFileStream stream, long offset) { stream.Position = offset + 12; Field0 = stream.ReadValueS32(); stream.Position = offset + 16; _Type = stream.ReadValueS32(); stream.Position = offset + 20; ApperanceSNO = stream.ReadValueS32(); stream.Position = offset + 24; PhysMeshSNO = stream.ReadValueS32(); stream.Position = offset + 28; Cylinder = new AxialCylinder(); Cylinder.FileRead(stream, stream.Position); stream.Position = offset + 48; Sphere = new Sphere(); Sphere.FileRead(stream, stream.Position); stream.Position = offset + 64; AABBBounds = new AABB(); AABBBounds.FileRead(stream, stream.Position); stream.Position = offset + 88; serTagMap = new SerializeData(); serTagMap.FileRead(stream, stream.Position); stream.Position = offset + 96; // TagMap: type DT_TAGMAP hasnt a deserializer implemented throw new Exception("some fields arent going to be decoded."); stream.Position = offset + 104; AnimSetSNO = stream.ReadValueS32(); stream.Position = offset + 108; MonsterSNO = stream.ReadValueS32(); stream.Position = offset + 120; Field11 = stream.ReadValueS32(); stream.Position = offset + 112; serMsgTriggeredEvents = new SerializeData(); serMsgTriggeredEvents.FileRead(stream, stream.Position); stream.Position = offset + 128; //still checking variablearrays MsgTriggeredEvents = new List<MsgTriggeredEvent>(); for(int i = 0; i < (int)(serMsgTriggeredEvents.Field1 / 412); i++) { stream.Position = serMsgTriggeredEvents.Field0 + 16 + (412*i) ; MsgTriggeredEvent temp12_MsgTriggeredEvents; temp12_MsgTriggeredEvents = new MsgTriggeredEvent(); temp12_MsgTriggeredEvents.FileRead(stream, stream.Position); _MsgTriggeredEvents.Add(temp12_MsgTriggeredEvents); } stream.Position = offset + 136; V0 = new Vector3D(); V0.FileRead(stream, stream.Position); stream.Position = offset + 148; Looks = new WeightedLook[8]; for(int loop12=0; loop12 < 8; loop12++ ) { WeightedLook temp12_Looks; temp12_Looks = new WeightedLook(); temp12_Looks.FileRead(stream, stream.Position); _Looks[loop12] = temp12_Looks; } stream.Position = offset + 692; PhysicsSNO = stream.ReadValueS32(); stream.Position = offset + 696; Field17 = stream.ReadValueS32(); stream.Position = offset + 700; Field18 = stream.ReadValueS32(); stream.Position = offset + 704; Field19 = stream.ReadValueF32(); stream.Position = offset + 708; Field20 = stream.ReadValueF32(); stream.Position = offset + 712; Field21 = stream.ReadValueF32(); stream.Position = offset + 716; ActorCollisionData = new ActorCollisionData(); ActorCollisionData.FileRead(stream, stream.Position); stream.Position = offset + 784; InventoryImages = new InventoryImages[5]; for(int loop12=0; loop12 < 5; loop12++ ) { InventoryImages temp12_InventoryImages; temp12_InventoryImages = new InventoryImages(); temp12_InventoryImages.FileRead(stream, stream.Position); _InventoryImages[loop12] = temp12_InventoryImages; } stream.Position = offset + 824; Field24 = stream.ReadValueS32(); stream.Position = offset + 840; serVOCastingNotes = new SerializeData(); serVOCastingNotes.FileRead(stream, stream.Position); stream.Position = offset + 832; //still checking cstrings stream.Position = serVOCastingNotes.Field0 + 16; VOCastingNotes = stream.ReadString((uint)serVOCastingNotes.Field1); stream.Position = offset + 856; serVORole = new SerializeData(); serVORole.FileRead(stream, stream.Position); stream.Position = offset + 848; //still checking cstrings stream.Position = serVORole.Field0 + 16; VORole = stream.ReadString((uint)serVORole.Field1); }