public override void Parse(GameBitBuffer buffer)
 {
     serMarkers = new SerializeData();
     serMarkers.Parse(buffer);
     //still checking variablearrays
     this.Markers = new List<Marker>( buffer.ReadInt(0) );
     for(int loop12 = 0; loop12 < _Markers.Count; loop12++)
     {
         _Markers[loop12] = new Marker();
         _Markers[loop12].Parse(buffer);
     }
     serNoSpawns = new SerializeData();
     serNoSpawns.Parse(buffer);
     //still checking variablearrays
     this.NoSpawns = new List<Circle>( buffer.ReadInt(0) );
     for(int loop12 = 0; loop12 < _NoSpawns.Count; loop12++)
     {
         _NoSpawns[loop12] = new Circle();
         _NoSpawns[loop12].Parse(buffer);
     }
     Field4 = buffer.ReadInt(32);
     AABB = new AABB();
     AABB.Parse(buffer);
     FileName = buffer.ReadCharArray(256);
     NLabel = buffer.ReadInt(32);
     SpecialIndexCount = buffer.ReadInt(32);
     serSpecialIndexList = new SerializeData();
     serSpecialIndexList.Parse(buffer);
     //still checking variablearrays
     this.SpecialIndexList = new List<ushort>( buffer.ReadInt(0) );
     for(int loop12 = 0; loop12 < _SpecialIndexList.Count; loop12++)
     {
         _SpecialIndexList[loop12] = (ushort)buffer.ReadInt(0);
     }
 }
 public void FileRead(MpqFileStream stream, long offset)
 {
     stream.Position = offset + 12;
     serMarkers = new SerializeData();
     serMarkers.FileRead(stream, stream.Position);
     stream.Position = offset + 24;
     //still checking variablearrays
     Markers = new List<Marker>();
     for(int i = 0; i < (int)(serMarkers.Field1 / 208); i++)
     {
     stream.Position = serMarkers.Field0 + 16 + (208*i) ;
         Marker temp12_Markers;
         temp12_Markers = new Marker();
         temp12_Markers.FileRead(stream, stream.Position);
         _Markers.Add(temp12_Markers);
     }
     stream.Position = offset + 80;
     serNoSpawns = new SerializeData();
     serNoSpawns.FileRead(stream, stream.Position);
     stream.Position = offset + 88;
     //still checking variablearrays
     NoSpawns = new List<Circle>();
     for(int i = 0; i < (int)(serNoSpawns.Field1 / 12); i++)
     {
     stream.Position = serNoSpawns.Field0 + 16 + (12*i) ;
         Circle temp12_NoSpawns;
         temp12_NoSpawns = new Circle();
         temp12_NoSpawns.FileRead(stream, stream.Position);
         _NoSpawns.Add(temp12_NoSpawns);
     }
     stream.Position = offset + 168;
     Field4 = stream.ReadValueS32();
     stream.Position = offset + 144;
     AABB = new AABB();
     AABB.FileRead(stream, stream.Position);
     stream.Position = offset + 172;
     FileName = stream.ReadString(256);
     stream.Position = offset + 428;
     NLabel = stream.ReadValueS32();
     stream.Position = offset + 432;
     SpecialIndexCount = stream.ReadValueS32();
     stream.Position = offset + 436;
     serSpecialIndexList = new SerializeData();
     serSpecialIndexList.FileRead(stream, stream.Position);
     stream.Position = offset + 448;
     //still checking variablearrays
     SpecialIndexList = new List<ushort>();
     for(int i = 0; i < (int)(serSpecialIndexList.Field1 / 2); i++)
     {
     stream.Position = serSpecialIndexList.Field0 + 16 + (2*i) ;
         ushort temp12_SpecialIndexList;
         temp12_SpecialIndexList = stream.ReadValueU16();
         _SpecialIndexList.Add(temp12_SpecialIndexList);
     }
 }