Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var target : Transform; //the enemy's target
- var moveSpeed = 3; //move speed
- var rotationSpeed = 3; //speed of turning
- var range : float=10f;
- var range2 : float=10f;
- var stop : float=0;
- var myTransform : Transform; //current transform data of this enemy
- function Awake()
- {
- myTransform = transform; //cache transform data for easy access/preformance
- }
- function Start()
- {
- animation["Animation Name"].wrapMode = WrapMode.Loop;
- target = GameObject.FindWithTag("Player").transform; //target the player
- }
- function Update () {
- //rotate to look at the player
- var distance = Vector3.Distance(myTransform.position, target.position);
- if (distance<=range2 && distance>=range){
- myTransform.rotation = Quaternion.Slerp(myTransform.rotation,
- Quaternion.LookRotation(target.position - myTransform.position), rotationSpeed*Time.deltaTime);
- }
- else if(distance<=range && distance>stop){
- //move towards the player
- animation.Play("Animation Name");
- myTransform.rotation = Quaternion.Slerp(myTransform.rotation,
- Quaternion.LookRotation(target.position - myTransform.position), rotationSpeed*Time.deltaTime);
- myTransform.position += myTransform.forward * moveSpeed * Time.deltaTime;
- }
- else if (distance<=stop) {
- myTransform.rotation = Quaternion.Slerp(myTransform.rotation,
- Quaternion.LookRotation(target.position - myTransform.position), rotationSpeed*Time.deltaTime);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement