Exemplo n.º 1
0
        //+ LOAD HANDLING
        //! Patch: SavedGame.LoadSummary
        internal static void LoadSummary(string summarySaveName, GameData.Summary summary)
        {
            string realPath = Path.Combine(SavePath, summarySaveName + GUU_EXTENSION);

            if (!File.Exists(realPath))
            {
                return;
            }
            GuuCore.LOGGER.Log($"Attempting to load summary for modded save file {summarySaveName}");

            using (FileStream fileStream = File.Open(realPath, FileMode.Open))
            {
                using (MemoryStream dataStream = new MemoryStream())
                {
                    CopyStream(fileStream, dataStream);
                    dataStream.Seek(0, SeekOrigin.Begin);
                    try
                    {
                        GameV12 modded = new GameV12();
                        modded.LoadSummary(dataStream);
                        if (modded.summary.iconId != Identifiable.Id.NONE && IsGuuIdentifiable(modded.summary.iconId))
                        {
                            summary.iconId = modded.summary.iconId;
                        }
                        if (modded.summary.gameMode != PlayerState.GameMode.CLASSIC)
                        {
                            summary.gameMode = modded.summary.gameMode;
                        }
                    }
                    catch (Exception e)
                    {
                        GuuCore.LOGGER.LogError("Failed to load summary from modded save file");
                        GuuCore.LOGGER.LogError(e.ParseTrace());
                    }
                }
            }

            GuuCore.LOGGER.Log($"Loaded summary for modded save file {summarySaveName}");
        }
Exemplo n.º 2
0
 private static void LoadSummary_Postfix(string saveName, ref GameData.Summary @return) => SaveHandler.LoadSummary(saveName, @return);
Exemplo n.º 3
0
 public static void LoadModSave(AutoSaveDirector director, GameData.Summary summary)
 {
     SaveHandler.LoadModdedSave(director, summary.saveName);
 }
Exemplo n.º 4
0
 public static void LoadModSave(AutoSaveDirector director, GameData.Summary summary)
 {
     Debug.Log("Fallback loaded " + summary.name);
     SaveHandler.LoadModdedSave(director, summary.saveName);
 }