public void Death() { GlobalTBModeController.Instance.OnCharacterDeath(characterInfo); gameObject.layer = 13; var movement = characterMovement as PlayerMovement; if (movement != null) { characterControl.ActiveCharacters.Remove(movement); } animator.Die(); GetComponent <Collider>().enabled = false; }
public void Die() { if (!anim.GetBool("Died")) { characterAnimator.Die(); inventory.DropAllItems(); LevelsManager.instance.AddExperience(experienceGained); anim.SetBool("Died", true); Destroy(gameObject, 3f); } SubscribeChange(); }
/* * Character died. * Play dead animation and for AI's drop a coin * If player dies show died window */ private void Dead() { if (isAI) { // Dead isDead = true; // Hide healthbar healthSlider.gameObject.SetActive(false); // Stop movement horizontal = 0; vertical = 0; body.velocity = Vector2.zero; // Tell room i'm dead AiRoom.EnemyDied(this); // Drop coin if (Random.Range(0, 100) > 25) { PoolManager.instance.InstantiateObject("Coin", transform.position, Quaternion.identity, LevelManager.instace.currentRoom.transform); } // play sound AudioManager.instance.sfx.PlayOneShot(dieSound); // Animate dead animator.Die(); } else { // Player died Time.timeScale = 0; diedWindow.interactable = true; diedWindow.blocksRaycasts = true; diedWindow.gameObject.SetActive(true); diedWindow.GetComponent <RectTransform>().DOAnchorPosY(0, 1); diedWindow.DOFade(1, 1); if (GameManager.instance.isUsingController) { diedWindow.GetComponentInChildren <Button>().Select(); } } }