/// <summary> /// Used to handle player death. There should only be the player tank /// </summary> /// <param name="tank">Tank.</param> public override void TankDies(TankManager tank) { if (m_MatchOver) { return; } base.TankDies(tank); m_MatchOver = true; m_Winner = null; m_MissionFailed = true; HeatmapsHelper.SinglePlayerDeath(m_Settings.map.id, tank.transform.position); }
/// <summary> /// Used to handle player death. There should only be the player tank /// </summary> /// <param name="tank">Tank.</param> public override void TankDies(TankManager tank) { if (m_MatchOver) { return; } base.TankDies(tank); m_MatchOver = true; m_Winner = null; m_MissionFailed = true; HeatmapsHelper.SinglePlayerDeath(m_Settings.map.id, tank.transform.position); // <VENZELL> уменьшение сложности PlayerDataManager.s_Instance.ChangeDifficyltyLevel(-1); }
/// <summary> /// Handles the kill /// </summary> /// <param name="killed">Killed</param> public void HandleKill(TankManager killed) { TankManager killer = GetTankByPlayerNumber(killed.health.lastDamagedByPlayerNumber); string explosionId = killed.health.lastDamagedByExplosionId; if (killer != null) { if (killer.playerNumber == killed.playerNumber) { m_RulesProcessor.HandleSuicide(killer); if (m_GameSettings.isSinglePlayer) { AnalyticsHelper.SinglePlayerSuicide(m_GameSettings.map.id, explosionId); } else { RpcAnnounceKill(m_KillLogPhrases.GetRandomSuicidePhrase(killer.playerName, killer.playerColor)); AnalyticsHelper.MultiplayerSuicide(m_GameSettings.map.id, m_GameSettings.mode.id, killer.playerTankType.id, explosionId); HeatmapsHelper.MultiplayerSuicide(m_GameSettings.map.id, m_GameSettings.mode.id, killer.playerTankType.id, explosionId, killer.transform.position); } } else { m_RulesProcessor.HandleKillerScore(killer, killed); if (!m_GameSettings.isSinglePlayer) { RpcAnnounceKill(m_KillLogPhrases.GetRandomKillPhrase(killer.playerName, killer.playerColor, killed.playerName, killed.playerColor)); AnalyticsHelper.MultiplayerTankKilled(m_GameSettings.map.id, m_GameSettings.mode.id, killed.playerTankType.id, killer.playerTankType.id, explosionId); HeatmapsHelper.MultiplayerDeath(m_GameSettings.map.id, m_GameSettings.mode.id, killed.playerTankType.id, killer.playerTankType.id, explosionId, killed.transform.position); HeatmapsHelper.MultiplayerKill(m_GameSettings.map.id, m_GameSettings.mode.id, killed.playerTankType.id, killer.playerTankType.id, explosionId, killer.transform.position); } } } s_Tanks.Sort(TankSort); m_RulesProcessor.RegenerateHudScoreList(); }