public void Deserialize(DataSerializer s) { Singleton <LoadingManager> .instance.m_loadingProfilerSimulation.BeginDeserialize(s, "GameAreaManager"); GameAreaManager instance = Singleton <GameAreaManager> .instance; //begin mod instance.m_areaGrid = new int[AREAGRID_RESOLUTION * AREAGRID_RESOLUTION]; //end mod int[] numArray = instance.m_areaGrid; int length = numArray.Length; instance.m_areaCount = (int)s.ReadUInt8(); //begin mod instance.m_maxAreaCount = AREAGRID_RESOLUTION * AREAGRID_RESOLUTION; //end mod _startTileField.SetValue(instance, s.version < 137U ? 12 : (int)s.ReadUInt8()); EncodedArray.Byte @byte = EncodedArray.Byte.BeginRead(s); for (int index = 0; index < length; ++index) { numArray[index] = (int)@byte.Read(); } @byte.EndRead(); instance.m_areaNotUnlocked = s.version < 87U ? (GenericGuide)null : s.ReadObject <GenericGuide>(); if (s.version >= 199U) { _fieldInfo1.SetValue(instance, s.ReadFloat()); _fieldInfo2.SetValue(instance, s.ReadFloat()); _fieldInfo3.SetValue(instance, s.ReadFloat()); _fieldInfo4.SetValue(instance, s.ReadFloat()); } else { _fieldInfo1.SetValue(instance, -1f); _fieldInfo2.SetValue(instance, -1f); _fieldInfo3.SetValue(instance, -1f); _fieldInfo4.SetValue(instance, -1f); } if (s.version >= 112032U && !RecoveryMode) { var instanceSavedCameraView = (CameraController.SavedCameraView)_fieldInfo5.GetValue(instance); instanceSavedCameraView.Deserialize(s); } else { RecoveryMode = false; var instanceSavedCameraView = new CameraController.SavedCameraView(); instanceSavedCameraView.m_mode = -1; _fieldInfo5.SetValue(instance, instanceSavedCameraView); } Singleton <LoadingManager> .instance.m_loadingProfilerSimulation.EndDeserialize(s, "GameAreaManager"); }
public void Serialize(DataSerializer s) { Singleton <LoadingManager> .instance.m_loadingProfilerSimulation.BeginSerialize(s, "GameAreaManager"); GameAreaManager instance = Singleton <GameAreaManager> .instance; //begin mod int[] numArray = new int[AREAGRID_RESOLUTION * AREAGRID_RESOLUTION]; int length = numArray.Length; int areaCount = 0; for (var i = 0; i < 5; i += 1) { for (var j = 0; j < 5; j += 1) { var grid = GameAreaManager.instance.m_areaGrid[(j + 2) * GRID + (i + 2)]; numArray[j * AREAGRID_RESOLUTION + i] = grid; if (grid != 0) { areaCount += 1; } } } s.WriteUInt8((uint)areaCount); //end mod s.WriteUInt8((uint)(int)_startTileField.GetValue(instance)); EncodedArray.Byte @byte = EncodedArray.Byte.BeginWrite(s); for (int index = 0; index < length; ++index) { @byte.Write((byte)numArray[index]); } @byte.EndWrite(); s.WriteObject <GenericGuide>(instance.m_areaNotUnlocked); s.WriteFloat((float)_fieldInfo1.GetValue(instance)); s.WriteFloat((float)_fieldInfo2.GetValue(instance)); s.WriteFloat((float)_fieldInfo3.GetValue(instance)); s.WriteFloat((float)_fieldInfo4.GetValue(instance)); var instanceSavedCameraView = new CameraController.SavedCameraView((CameraController)_fieldInfo6.GetValue(instance)); _fieldInfo5.SetValue(instance, instanceSavedCameraView); instanceSavedCameraView.Serialize(s); Singleton <LoadingManager> .instance.m_loadingProfilerSimulation.EndSerialize(s, "GameAreaManager"); }