private void HandlePlayerDeath(HealthBehaviour player) { player.OnDeath -= HandlePlayerDeath; tryAgainPanel.SetActive(true); Cursor.visible = true; Cursor.lockState = CursorLockMode.None; }
private void Start() { playerHealth = GameObject.FindGameObjectWithTag("Player").GetComponentInChildren <HealthBehaviour>(); targets = GetComponentsInChildren <HealthBehaviour>().ToList(); playerHealth.OnDeath += HandlePlayerDeath; foreach (var target in targets) { target.OnDeath += HandleTargetDeath; } }
private void Start() { playerHealth = GameObject.FindGameObjectWithTag("Player").GetComponentInChildren <HealthBehaviour>(); targets = GetComponentsInChildren <HealthBehaviour>().ToList(); playerHealth.OnDeath += HandlePlayerDeath; foreach (var target in targets) { target.OnDeath += HandleTargetDeath; } Cursor.visible = false; Cursor.lockState = CursorLockMode.Locked; }
private void HandleTargetDeath(HealthBehaviour target) { target.OnDeath -= HandleTargetDeath; targets.Remove(target); if (targets.Count != 0) { return; } #if UNITY_EDITOR int sceneIndex = SceneManager.GetActiveScene().buildIndex; PlayerPrefs.SetInt($"Scene_{sceneIndex}", 1); #endif playerHealth.gameObject.SetActive(false); wellDonePanel.SetActive(true); Cursor.visible = true; Cursor.lockState = CursorLockMode.None; }