コード例 #1
0
        public void SaveGameStateEventHandler(SaveGameStateEvent e)
        {
            Log.Game.Write("Saving game state...");

            string serialized = JsonConvert.SerializeObject(InnerStatesContainer, indented, settings);

            if (_saveSlot == 0 && e.SaveSlot == 0)
            {
                var saveCount = _fileHelper.CountFilesWithRoot(FileLocation.SaveFolder, SaveFileNameRoot);
                _saveSlot = saveCount + 1;
            }
            else if (e.SaveSlot > 0)
            {
                _saveSlot = e.SaveSlot;
            }

            _fileHelper.SaveTextToFile(FileLocation.SaveFolder, GetSaveFileName(_saveSlot), serialized);
            Log.Game.Write($"Saved game state in file [{GetSaveFileName(_saveSlot)}]");
        }