public void FileRead(MpqFileStream stream, long offset)
 {
     stream.Position = offset + 0;
     serDRLGParams = new SerializeData();
     serDRLGParams.FileRead(stream, stream.Position);
     stream.Position = offset + 8;
     //still checking variablearrays
     DRLGParams = new List<DRLGParams>();
     for(int i = 0; i < (int)(serDRLGParams.Field1 / 120); i++)
     {
     stream.Position = serDRLGParams.Field0 + 16 + (120*i) ;
         DRLGParams temp12_DRLGParams;
         temp12_DRLGParams = new DRLGParams();
         temp12_DRLGParams.FileRead(stream, stream.Position);
         _DRLGParams.Add(temp12_DRLGParams);
     }
     stream.Position = offset + 16;
     serSceneParams = new SerializeData();
     serSceneParams.FileRead(stream, stream.Position);
     stream.Position = offset + 24;
     //still checking variablearrays
     SceneParams = new List<SceneParams>();
     for(int i = 0; i < (int)(serSceneParams.Field1 / 24); i++)
     {
     stream.Position = serSceneParams.Field0 + 16 + (24*i) ;
         SceneParams temp12_SceneParams;
         temp12_SceneParams = new SceneParams();
         temp12_SceneParams.FileRead(stream, stream.Position);
         _SceneParams.Add(temp12_SceneParams);
     }
     stream.Position = offset + 32;
     Field4 = new LabelRuleSet();
     Field4.FileRead(stream, stream.Position);
     stream.Position = offset + 56;
     Field5 = stream.ReadValueS32();
     stream.Position = offset + 64;
     Field6 = new SceneClusterSet();
     Field6.FileRead(stream, stream.Position);
     stream.Position = offset + 88;
     arNavMeshFuncs = new int[4];
     for(int loop12=0; loop12 < 4; loop12++ )
     {
         int temp12_arNavMeshFuncs;
         temp12_arNavMeshFuncs = stream.ReadValueS32();
         _arNavMeshFuncs[loop12] = temp12_arNavMeshFuncs;
     }
     stream.Position = offset + 104;
     snoScript = stream.ReadValueS32();
     stream.Position = offset + 108;
     Field9 = stream.ReadValueS32();
 }