private void StopGame() { GameOverPanelView?.GameOver(); HudView?.HideHud(); StopCoroutine(AddMoneyRoutine); _towerSelectView.SelectTowerAction -= TowerController.SelectTower; Controller.HealthChangeEvent -= HudView.SetHealth; Controller.AddMoneyEvent -= HudView.SetMoney; Controller.EndGameEvent -= StopGame; BeginGamePanelView.ShowHudEvent -= HudView.ShowHud; BeginGamePanelView.StartGameEvent -= StartGame; Controller.EndGameEvent -= StopGame; Controller.TowersToBuyRecalculateEvent -= _towerSelectView.Recalculate; SpawnController?.Stop(); }