private void Atacar() { vidaJugador.recibirDano(dano); agente.speed = 0; agente.angularSpeed = 0; estaAtacando = true; animator.SetTrigger("DebeAtacar"); Invoke("ReiniciarAtaque", 1.5f); }
void DisparoDirecto() { RaycastHit hit; if (Physics.Raycast(puntoDisparo.position, puntoDisparo.forward, out hit)) { if (hit.transform.CompareTag("Enemigo")) { Vida vida = hit.transform.GetComponent <Vida>(); if (vida == null) { throw new System.Exception("No se encontro el componente vida del enemigo"); } else { vida.recibirDano(daño); } } } }
private void DisparoDirecto() { RaycastHit hit; //Devuelve true si existe toque con alguno de los colisionadores de la escena if (Physics.Raycast(puntoDisparo.position, puntoDisparo.forward, out hit)) { if (hit.transform.CompareTag("Enemigo")) { Vida vida = hit.transform.GetComponent <Vida>(); if (vida == null) { throw new System.Exception("No se encontro el componente vida del enemigo"); } else { vida.recibirDano(daño); destruidos++; } } } }