private void FixedUpdate() { float distance = Vector3.Distance(transform.position, Jogador.transform.position); myMovements.QuarternionRotation(Direction); myAnimator.MovementPlayer(Direction.magnitude); if (distance > distanceZombiesFollowPlayer) { ZombieWalking(); myAnimator.ZombieAttackAnimation(false); if (Time.timeSinceLevelLoad > timeNextGen) { distanceZombiesFollowPlayer += 10; timeNextGen = Time.timeSinceLevelLoad + timeUpgradeDistanceZombiesFollowPlayer; } } else if (distance > 2.8) { Direction = Jogador.transform.position - transform.position; myMovements.Movement(Direction, myStatus.Velocity); myAnimator.ZombieAttackAnimation(false); } else { Direction = Jogador.transform.position - transform.position; myAnimator.ZombieAttackAnimation(true); } }
void Update() { float x = Input.GetAxis("Horizontal"); float z = Input.GetAxis("Vertical"); Direction = new Vector3(x, 0, z); rotation.constraints = RigidbodyConstraints.FreezeRotationX | RigidbodyConstraints.FreezeRotationY | RigidbodyConstraints.FreezeRotationZ | RigidbodyConstraints.FreezePositionY; if (x != 0 || z != 0) { Direction = new Vector3(x, 0, z); myMovements.MovementPlayer(Direction.magnitude); rotation.constraints = RigidbodyConstraints.FreezeRotationX | RigidbodyConstraints.FreezeRotationZ | RigidbodyConstraints.FreezePositionY; } }
private void Update() { agent.SetDestination(player.position); bossAnimation.MovementPlayer(agent.velocity.magnitude); if (agent.hasPath == true) { bool nearFromPlayer = agent.remainingDistance <= agent.stoppingDistance + 3.5; if (nearFromPlayer) { agent.velocity = Vector3.zero; Vector3 direction = player.position - transform.position; bossMovement.QuarternionRotation(direction); bossAnimation.ZombieAttackAnimation(true); } else { bossAnimation.ZombieAttackAnimation(false); } } }