public void Update() { if (target != null) { float dist = (transform.position - target.transform.position).sqrMagnitude; if (dist < meleeDistance) { CanMove = false; anim.SetFloat("Speed", 0); } else { CanMove = true; } switch (currentState) { case TurrateState.Follow: break; case TurrateState.Attack: if (CanMove) { skills.AttackDown(); } else { skills.AltAttackDown(); } break; } } // stop moving when in melee distance }
public void Update() { if (playerController != null) { if (playerController.AttackButtonDown) { skills.AttackDown(); } if (playerController.AttackButtonUp) { skills.AttackUp(); } if (playerController.AltAttackButtonDown) { skills.AltAttackDown(); } if (playerController.AltAttackButtonUp) { skills.AltAttackUp(); } if (playerController.SkillOneButtonDown) { skills.SkillOneDown(); } if (playerController.SkillOneButtonUp) { skills.SkillOneUp(); } if (playerController.SkillTwoButtonDown) { skills.SkillTwoDown(); } if (playerController.SkillTwoButtonUp) { skills.SkillTwoUp(); } if (playerController.SkillThreeButtonDown) { skills.SkillThreeDown(); } if (playerController.SkillThreeButtonUp) { skills.SkillThreeUp(); } if (playerController.SkillFourButtonDown) { skills.SkillFourDown(); } if (playerController.SkillFourButtonUp) { skills.SkillFourUp(); } } Vector3 viewPos = Camera.main.WorldToViewportPoint(transform.position); viewPos.x = Mathf.Clamp01(viewPos.x); viewPos.y = Mathf.Clamp(viewPos.y, 0, .9f); Vector3 pos = Camera.main.ViewportToWorldPoint(viewPos); pos.y = 0; transform.position = pos; }