My NPC keeps running through hills and floating
I'm still very new to scripting in unity and following through tutorials, I've got my NPC to follow my charecter when it can see it but when it comes to me moving up hills it just runs straight through. If I add a rigid body it moves up but floats up to my height then gets stuck at the highest point and if I remove the line of code saying y=0; when you get close the NPC leans back. I'm really stuck on how to get the NPC to just walk up and back down the hills and going crazy please help!
using UnityEngine;
using System.Collections;
public class Chase : MonoBehaviour {
public Transform player;
static Animator anim;
// Use this for initialization
void Start () {
anim = GetComponent<Animator>();
}
// Update is called once per frame
void Update()
{
CharacterController controller = GetComponent<CharacterController>();
Vector3 direction = player.position - this.transform.position;//calculates direction between player and npc
float angle = Vector3.Angle(direction, this.transform.forward);//calculates forward angle used for FOV to detect player
if (Vector3.Distance(player.position, this.transform.position) < 20 && angle < 50)
{
direction.y = 0;//removes npc tilting when
this.transform.rotation = Quaternion.Slerp(this.transform.rotation, Quaternion.LookRotation(direction), 0.2f);
anim.SetBool("isIdle", false);
if (direction.magnitude > 4)
{
this.transform.Translate(0, 0, 0.05f);
anim.SetBool("isWalking", true);
anim.SetBool("isAttacking", false);
}
else
{
anim.SetBool("isAttacking", true);
anim.SetBool("isWalking", false);
}
}
else
{
anim.SetBool("isIdle", true);
anim.SetBool("isWalking", false);
anim.SetBool("isAttacking", false);
}
}
}
Your answer
Follow this Question
Related Questions
How can I use both mouse and keyboard to do the same thing? [SOLVED] 1 Answer
1st Person shooter, move player forward where cam is facing 1 Answer
Npc and AI 1 Answer
Moving forward seems to be specific to the original direction of the object being controlled 0 Answers
My 2d movement script isn't working 0 Answers