// Update is called once per frame void Update() { if (swordAttack == false) { weapon.enabled = true; weapon.GetComponent <Renderer>().enabled = true; } if (Input.GetButtonDown("Fire2")) { //Player presses down RMB Debug.Log("Stabbing"); swordAttack = true; weapon.enabled = false; weapon.GetComponent <Renderer>().enabled = false; //When player uses sword, play sword animation anim.SetBool("Sword", swordAttack); } if (Input.GetMouseButtonUp(1)) { //Player presses up RMB swordAttack = false; anim.SetBool("Sword", swordAttack); } }
} //so I can put a delay in it, and it doesn't affect all the other code public IEnumerator RespawnPlayerCo() { //KILL EVERYTHING ------------------------------------------- //Death particle Instantiate(deathParticle, player.transform.position, player.transform.rotation); //Player player.GetComponent <Renderer>().enabled = false; player.GetComponent <Rigidbody2D>().velocity = Vector2.zero; player.enabled = false; //Camera camera.isFollowing = false; //Bow weapon.enabled = false; weapon.GetComponent <Renderer>().enabled = false; //Sword sword.enabled = false; sword.GetComponent <Renderer>().enabled = false; //RESPAWN EVERYTHING ------------------------------------------- //Subtract points ScoreManager.AddPoints(-pointPenaltyOnDeath); //Move player before delay player.transform.position = currentCheckpoint.transform.position; //Respawn Delay yield return(new WaitForSeconds(respawnDelay)); //Respawn particle Instantiate(respawnParticle, currentCheckpoint.transform.position, currentCheckpoint.transform.rotation); //Player player.GetComponent <Renderer>().enabled = true; player.enabled = true; //Health healthManager.FullHealth(); healthManager.isDead = false; //Camera camera.isFollowing = true; //Bow weapon.enabled = true; weapon.GetComponent <Renderer>().enabled = true; weapon.GetComponent <Animator>().SetBool("PlayerShoot", false); weapon.GetComponent <Animator>().CrossFade("Bow_Idle", 0f); //Sword sword.enabled = true; }