Exemplo n.º 1
0
        private void game_TurnEnded(object sender, EventArgs args)
        {
            turnsSinceLastSaving++;

            if (turnsSinceLastSaving >= savingInterval)
            {
                saveGameTask?.Wait();
                saveGameTask         = saveService.SaveGameAsync();
                turnsSinceLastSaving = 0;
            }

            if (CurrentGame.Player.Health <= 0)
            {
                saveGameTask?.Wait();
                ((GameCore <Player>)CurrentGame.Game).TurnEnded -= game_TurnEnded;
                CurrentGame.Load(null);
                saveService.DeleteSave();
            }
        }