public void FileRead(MpqFileStream stream, long offset)
 {
     stream.Position = offset + 0;
     Field0 = stream.ReadValueS32();
     stream.Position = offset + 4;
     TriggerConditions = new TriggerConditions();
     TriggerConditions.FileRead(stream, stream.Position);
     stream.Position = offset + 40;
     Field2 = stream.ReadValueS32();
     stream.Position = offset + 44;
     Field3 = new SNOName();
     Field3.FileRead(stream, stream.Position);
     stream.Position = offset + 52;
     Field4 = stream.ReadValueS32();
     stream.Position = offset + 56;
     Field5 = stream.ReadValueS32();
     stream.Position = offset + 68;
     HardPointLinks = new HardpointLink[2];
     for(int loop12=0; loop12 < 2; loop12++ )
     {
         HardpointLink temp12_HardPointLinks;
         temp12_HardPointLinks = new HardpointLink();
         temp12_HardPointLinks.FileRead(stream, stream.Position);
         _HardPointLinks[loop12] = temp12_HardPointLinks;
     }
     stream.Position = offset + 204;
     LookLink = new LookLink();
     LookLink.FileRead(stream, stream.Position);
     stream.Position = offset + 268;
     ConstraintLink = new ConstraintLink();
     ConstraintLink.FileRead(stream, stream.Position);
     stream.Position = offset + 332;
     Field9 = stream.ReadValueS32();
     stream.Position = offset + 336;
     Field10 = stream.ReadValueF32();
     stream.Position = offset + 340;
     Field11 = stream.ReadValueS32();
     stream.Position = offset + 344;
     Field12 = stream.ReadValueS32();
     stream.Position = offset + 348;
     Field13 = stream.ReadValueS32();
     stream.Position = offset + 352;
     Field14 = stream.ReadValueS32();
     stream.Position = offset + 356;
     Field15 = stream.ReadValueS32();
     stream.Position = offset + 360;
     Field16 = stream.ReadValueF32();
     stream.Position = offset + 364;
     Field17 = stream.ReadValueF32();
     stream.Position = offset + 384;
     Field18 = stream.ReadValueS32();
     stream.Position = offset + 368;
     Field19 = stream.ReadValueS32();
     stream.Position = offset + 372;
     Field20 = stream.ReadValueF32();
     stream.Position = offset + 376;
     Field21 = stream.ReadValueS32();
     stream.Position = offset + 380;
     Velocity = stream.ReadValueF32();
     stream.Position = offset + 388;
     Ticks1 = stream.ReadValueS32();
     stream.Position = offset + 60;
     RuneType = stream.ReadValueS32();
     stream.Position = offset + 64;
     UseRuneType = stream.ReadValueS32();
     stream.Position = offset + 392;
     Color1 = new RGBAColor();
     Color1.FileRead(stream, stream.Position);
     stream.Position = offset + 396;
     Field27 = stream.ReadValueS32();
     stream.Position = offset + 400;
     Color2 = new RGBAColor();
     Color2.FileRead(stream, stream.Position);
     stream.Position = offset + 404;
     Field29 = stream.ReadValueS32();
 }
 public void FileRead(MpqFileStream stream, long offset)
 {
     stream.Position = offset + 0;
     LookLink = new LookLink();
     LookLink.FileRead(stream, stream.Position);
     stream.Position = offset + 64;
     Field1 = stream.ReadValueS32();
 }
 public void FileRead(MpqFileStream stream, long offset)
 {
     stream.Position = offset + 12;
     Field0 = stream.ReadValueS32();
     stream.Position = offset + 776;
     SNOAppearance = stream.ReadValueS32();
     stream.Position = offset + 780;
     SNOPhysMesh = stream.ReadValueS32();
     stream.Position = offset + 16;
     AABBBounds = new AABB();
     AABBBounds.FileRead(stream, stream.Position);
     stream.Position = offset + 40;
     AABBMarkerSetBounds = new AABB();
     AABBMarkerSetBounds.FileRead(stream, stream.Position);
     stream.Position = offset + 64;
     Field5 = new NavMeshDef();
     Field5.FileRead(stream, stream.Position);
     stream.Position = offset + 360;
     serExclusions = new SerializeData();
     serExclusions.FileRead(stream, stream.Position);
     stream.Position = offset + 368;
     //still checking variablearrays
     Exclusions = new List<int>();
     for(int i = 0; i < (int)(serExclusions.Field1 / 4); i++)
     {
     stream.Position = serExclusions.Field0 + 16 + (4*i) ;
         int temp12_Exclusions;
         temp12_Exclusions = stream.ReadValueS32();
         _Exclusions.Add(temp12_Exclusions);
     }
     stream.Position = offset + 424;
     serInclusions = new SerializeData();
     serInclusions.FileRead(stream, stream.Position);
     stream.Position = offset + 432;
     //still checking variablearrays
     Inclusions = new List<int>();
     for(int i = 0; i < (int)(serInclusions.Field1 / 4); i++)
     {
     stream.Position = serInclusions.Field0 + 16 + (4*i) ;
         int temp12_Inclusions;
         temp12_Inclusions = stream.ReadValueS32();
         _Inclusions.Add(temp12_Inclusions);
     }
     stream.Position = offset + 488;
     serMarkerSets = new SerializeData();
     serMarkerSets.FileRead(stream, stream.Position);
     stream.Position = offset + 496;
     //still checking variablearrays
     MarkerSets = new List<int>();
     for(int i = 0; i < (int)(serMarkerSets.Field1 / 4); i++)
     {
     stream.Position = serMarkerSets.Field0 + 16 + (4*i) ;
         int temp12_MarkerSets;
         temp12_MarkerSets = stream.ReadValueS32();
         _MarkerSets.Add(temp12_MarkerSets);
     }
     stream.Position = offset + 552;
     Field12 = new LookLink();
     Field12.FileRead(stream, stream.Position);
     stream.Position = offset + 624;
     Field13 = stream.ReadValueS32();
     stream.Position = offset + 616;
     serMsgTriggeredEvents = new SerializeData();
     serMsgTriggeredEvents.FileRead(stream, stream.Position);
     stream.Position = offset + 632;
     //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 + 640;
     tNavZoneDef = new NavZoneDefinition();
     tNavZoneDef.FileRead(stream, stream.Position);
 }