Пример #1
0
 public static void Write(CrcWriter w, WinConditions wc)
 {
     w.Write(wc.LockedDoorCount);
     w.Write(wc.UnlockedDoorCount);
     w.Write(wc.ChestCount);
     w.Write(wc.CubeShardCount);
     w.Write(wc.OtherCollectibleCount);
     w.Write(wc.SplitUpCount);
     w.Write(wc.ScriptIds.Count);
     foreach (int num in wc.ScriptIds)
     {
         w.Write(num);
     }
     w.Write(wc.SecretCount);
 }
Пример #2
0
 public static void Write(CrcWriter w, LevelSaveData lsd)
 {
     w.Write(lsd.DestroyedTriles.Count);
     foreach (TrileEmplacement s in lsd.DestroyedTriles)
     {
         BinaryWritingTools.Write(w, s);
     }
     w.Write(lsd.InactiveTriles.Count);
     foreach (TrileEmplacement s in lsd.InactiveTriles)
     {
         BinaryWritingTools.Write(w, s);
     }
     w.Write(lsd.InactiveArtObjects.Count);
     foreach (int num in lsd.InactiveArtObjects)
     {
         w.Write(num);
     }
     w.Write(lsd.InactiveEvents.Count);
     foreach (int num in lsd.InactiveEvents)
     {
         w.Write(num);
     }
     w.Write(lsd.InactiveGroups.Count);
     foreach (int num in lsd.InactiveGroups)
     {
         w.Write(num);
     }
     w.Write(lsd.InactiveVolumes.Count);
     foreach (int num in lsd.InactiveVolumes)
     {
         w.Write(num);
     }
     w.Write(lsd.InactiveNPCs.Count);
     foreach (int num in lsd.InactiveNPCs)
     {
         w.Write(num);
     }
     w.Write(lsd.PivotRotations.Count);
     foreach (KeyValuePair <int, int> keyValuePair in lsd.PivotRotations)
     {
         w.Write(keyValuePair.Key);
         w.Write(keyValuePair.Value);
     }
     BinaryWritingTools.WriteObject(w, lsd.LastStableLiquidHeight);
     BinaryWritingTools.WriteObject(w, lsd.ScriptingState);
     w.Write(lsd.FirstVisit);
     SaveFileOperations.Write(w, lsd.FilledConditions);
 }
Пример #3
0
 public static void Write(CrcWriter w, SaveData sd)
 {
     w.Write(6L);
     w.Write(sd.CreationTime);
     w.Write(sd.Finished32);
     w.Write(sd.Finished64);
     w.Write(sd.HasFPView);
     w.Write(sd.HasStereo3D);
     w.Write(sd.CanNewGamePlus);
     w.Write(sd.IsNewGamePlus);
     w.Write(sd.OneTimeTutorials.Count);
     foreach (KeyValuePair <string, bool> keyValuePair in sd.OneTimeTutorials)
     {
         BinaryWritingTools.WriteObject(w, keyValuePair.Key);
         w.Write(keyValuePair.Value);
     }
     BinaryWritingTools.WriteObject(w, sd.Level);
     w.Write((int)sd.View);
     BinaryWritingTools.Write(w, sd.Ground);
     BinaryWritingTools.Write(w, sd.TimeOfDay);
     w.Write(sd.UnlockedWarpDestinations.Count);
     foreach (string s in sd.UnlockedWarpDestinations)
     {
         BinaryWritingTools.WriteObject(w, s);
     }
     w.Write(sd.Keys);
     w.Write(sd.CubeShards);
     w.Write(sd.SecretCubes);
     w.Write(sd.CollectedParts);
     w.Write(sd.CollectedOwls);
     w.Write(sd.PiecesOfHeart);
     w.Write(sd.Maps.Count);
     foreach (string s in sd.Maps)
     {
         BinaryWritingTools.WriteObject(w, s);
     }
     w.Write(sd.Artifacts.Count);
     foreach (ActorType actorType in sd.Artifacts)
     {
         w.Write((int)actorType);
     }
     w.Write(sd.EarnedAchievements.Count);
     foreach (string s in sd.EarnedAchievements)
     {
         BinaryWritingTools.WriteObject(w, s);
     }
     w.Write(sd.EarnedGamerPictures.Count);
     foreach (string s in sd.EarnedGamerPictures)
     {
         BinaryWritingTools.WriteObject(w, s);
     }
     BinaryWritingTools.WriteObject(w, sd.ScriptingState);
     w.Write(sd.FezHidden);
     BinaryWritingTools.WriteObject(w, sd.GlobalWaterLevelModifier);
     w.Write(sd.HasHadMapHelp);
     w.Write(sd.CanOpenMap);
     w.Write(sd.AchievementCheatCodeDone);
     w.Write(sd.AnyCodeDeciphered);
     w.Write(sd.MapCheatCodeDone);
     w.Write(sd.World.Count);
     foreach (KeyValuePair <string, LevelSaveData> keyValuePair in sd.World)
     {
         BinaryWritingTools.WriteObject(w, keyValuePair.Key);
         SaveFileOperations.Write(w, keyValuePair.Value);
     }
     w.Write(sd.ScoreDirty);
     w.Write(sd.HasDoneHeartReboot);
     w.Write(sd.PlayTime);
     w.Write(sd.IsNew);
 }