private void OnTriggerEnter(Collider other) { if (other.gameObject.CompareTag("Player")) { player = other.gameObject; currentState = Zstate.Berserk; } }
private void OnTriggerEnter(Collider other) { if (other.CompareTag("Player")) { brain = other.gameObject; zstate = Zstate.Berserk; } }
void Attack() { Vector3 dir = brain.transform.position - transform.position; if (dir.magnitude > 2) { zstate = Zstate.Berserk; } }
void Attack() { Vector3 dir = player.transform.position - transform.position; if (dir.magnitude > 2) { currentState = Zstate.Berserk; } anim.SetBool("attack", true); }
public void KillMe() { anim.enabled = false; zstate = Zstate.Dead; agent.enabled = false; foreach (Rigidbody rdb in rdbs) { rdb.isKinematic = false; } }
private void OnTriggerEnter(Collider other) { if (other.CompareTag("Player") && zState != Zstate.Dead) { targetOnSight = true; target = other.gameObject; zState = Zstate.Bersek; } }
/// <summary> /// Atrai o zumbi ao player, ao entrar na área definida /// </summary> void OnTriggerEnter(Collider col) { if (col.CompareTag("Player")) { brain = col.gameObject; zstate = Zstate.Bersek; aud.PlayOneShot(audios[0]); } }
private void OnTriggerEnter(Collider other) { if (other.CompareTag("Player")) { brain = other.gameObject; zstate = Zstate.Berserk; ShootPlayer(); audioshoot.Play(); muzzleFlashEnemy.Play(); } }
/// <summary> /// Desativa os componentes necessários para simular a morte do Zombie. /// </summary> public void KillZombie() { anim.enabled = false; zCharCtrl.enabled = false; foreach (Rigidbody rdb in rdbs) { rdb.isKinematic = false; } nAgent.enabled = false; anim.enabled = false; currentState = Zstate.Dead; }
void Attack() { Vector3 dir = player.transform.position - transform.position; //causa dano ao player de acordo com a variável damage player.GetComponent <MovePlayer>().TakeDamage(damage); if (dir.magnitude > 2) { currentState = Zstate.Berserk; } anim.SetBool("attack", true); }
void Berserk() { if (brain) { agent.SetDestination(brain.transform.position); Vector3 dir = brain.transform.position - transform.position; if (dir.magnitude < 2) { zstate = Zstate.Attack; } } }
void Attack() { Vector3 dir = target.transform.position - transform.position; if (dir.magnitude > 2) { zState = Zstate.Bersek; } anim.SetBool("running", false); anim.SetBool("attack", true); }
/// <summary> /// Estado de morte do zumbi /// </summary> public void KillZombie() { character.enabled = false; foreach (Rigidbody rdb in rdbs) { rdb.isKinematic = false; } anim.enabled = false; agent.enabled = false; zstate = Zstate.Dead; aud.PlayOneShot(audios [1]); }
/// <summary> /// Faz o Zombie perseguir o jogador. /// </summary> void Berserk() { nAgent.SetDestination(player.transform.position); nAgent.speed = 2.2f; Vector3 dir = player.transform.position - transform.position; if (dir.magnitude < 2.5f) { currentState = Zstate.Attack; } anim.SetBool("attack", false); //transform.rotation = Quaternion.LookRotation (dir, Vector3.up); //transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.LookRotation(dir, Vector3.up), Time.deltaTime); }
/// <summary> /// Estado de ataque do zumbi /// </summary> void Attack() { //Vector3 dir = brain.transform.position - transform.position; //transform.rotation = Quaternion.Lerp (transform.rotation, Quaternion.LookRotation (dir, Vector3.up), Time.fixedDeltaTime); //character.SimpleMove (transform.forward * 0.7f); Vector3 dir = brain.transform.position - transform.position; if (dir.magnitude > 2) { zstate = Zstate.Bersek; } anim.SetBool("attack", true); }
/// <summary> /// Desativa os componentes necessários para simular a morte do Zombie. /// </summary> public void KillZombie() { anim.enabled = false; zCharCtrl.enabled = false; foreach (Rigidbody rdb in rdbs) { rdb.isKinematic = false; } nAgent.enabled = false; anim.enabled = false; currentState = Zstate.Dead; if (gameObject.CompareTag("Enemy2")) { anim.SetBool("dead", true); } }
void Berserk() { audSource.clip = audClip[1]; navAgent.SetDestination(target.transform.position); navAgent.speed = running; Vector3 dir = target.transform.position - transform.position; if (dir.magnitude < 2.5f) { zState = Zstate.Attack; } anim.SetBool("running", true); anim.SetBool("attack", false); }
/// <summary> /// Vai em direção ao jogador /// </summary> void Bersek() { //Vector3 dir = brain.transform.position - transform.position; //transform.rotation = Quaternion.Lerp (transform.rotation, Quaternion.LookRotation (dir, Vector3.up), Time.fixedDeltaTime); //character.SimpleMove (transform.forward * 0.7f); agent.SetDestination(brain.transform.position); agent.speed = 3; Vector3 dir = brain.transform.position - transform.position; if (dir.magnitude < 2) { zstate = Zstate.Attack; } anim.SetBool("attack", false); }
private void FixedUpdate() { switch (zState) { case (Zstate.Patrol): Patrol(); break; case (Zstate.Bersek): Berserk(); break; case (Zstate.Attack): Attack(); break; case (Zstate.Dead): Dead(); break; } if (!targetOnSight && (zState == Zstate.Attack || zState == Zstate.Bersek)) { berserkCount += Time.deltaTime; if (berserkCount >= berserkTime) { target = null; anim.SetBool("running", false); zState = Zstate.Patrol; berserkCount = 0; } } }
void Die() { anim.SetBool("dying", true); zState = Zstate.Dead; }