public void AfterGame(DB.Game gameResult) { var state = new GameState(this, gameResult); foreach (var player in _game.PlayersList) { CheckPoints(player); CheckRate(player); CheckGames(player); CheckStreaks(player); CheckDemoman(player); state.CheckAchievements(player); } }
public GameState(AchievementAssigner assigner, DB.Game gameResult) { _manager = assigner._manager; _gameResult = gameResult; if (_gameResult == null) { return; } var game = assigner._game; var winner = _gameResult.Winner; IsClearVictory = _gameResult.PlayersCount > 5 && winner != Team.None; foreach (var player in game.PlayersList) { if (player.User.Id == 137234657623277568) { IsGameWithAuthor = true; } if (!player.IsAlive && player.Role.Team == winner) { IsClearVictory = false; } } }