Esempio n. 1
0
        /// <summary>
        /// Initialize any systems or engines in the frontend that the save data requires to exist before it loads. for example, any achievements declared in the frontend (so, all of them)
        /// must be added to the achievement manager, or else they won't point to anything when the data is loaded and therefore be lost or ignored.
        /// </summary>
        public static void PreSaveInit()
        {
            BackendInitializer.PreSaveInit(() => new StandardDisplay(), DisplayManager.GetCurrentDisplay, DisplayManager.LoadDisplay, AreaManager.placeCollection, AreaManager.locationCollection,
                                           AreaManager.dungeonCollection, AreaManager.homeBaseCollection, DifficultyManager.difficultyCollection, DifficultyManager.defaultDifficultyIndex,
                                           PerkManager.conditionalPerks);

            GameplaySettingsManager.IncludeGameplaySetting(new HyperHappySettings());

            CreditManager.AddCreditCategory(new FrontendCredits());
            CreditManager.AddCreditCategory(new FrontendModCredits());

            AchievementManager.RegisterAchievement(new Achievements.StartTheGameINeedAnAchievementForDebugging());

#warning Parse global File Data accordingly. note it may be null if file does not exist.
        }
        /// <summary>
        /// Initialize any managers specific to the GUI layer that GUI save data may depend on in order to run correctly. For example, the language engine must exist, otherwise
        /// the game cannot properly deserialize the previously selected language.
        /// </summary>
        public static void PreSaveInit()
        {
            FrontendInitalizer.PreSaveInit();

            CreditManager.AddCreditCategory(new GUICredits());
        }