NullReferenceException: Object reference not set to an instance of an object
EnemyAI.Update () (at Assets/Scripts/EnemyAI.js:19)
var target : GameObject;
var Weapon : GameObject;
var lookAtDistance = 20;
var followAtDistance = 15;
var attackAtDistance = 3;
var moveSpeed = 5;
var damping = 6;
var AttackEnabled = 1;
var Speed = moveSpeed;
var Damp = damping;
var cooldown = 2.5;
var distance;
function Start() {
// target = GameObject.FindGameObjectWithTag("Player");
target = GameObject.Find("Player");
}
function Update () {
distance = Vector3.Distance(target.position, transform.position);
if(distance < lookAtDistance && Damp > 0) {
print("EnemyIsLookingYou");
var rotation = Quaternion.LookRotation(target.position - transform.position);
transform.rotation = Quaternion.Slerp(transform.rotation, rotation, Time.deltaTime * Damp);
}
if(distance < followAtDistance && distance > attackAtDistance) {
print("EnemyIsFollowingYou");
transform.Translate(Vector3.forward * Speed *Time.deltaTime);
}
else if(distance < attackAtDistance) {
if(AttackEnabled == 1) {
AttackEnabled = 0;
Speed = 0;
Damp = 0;
Weapon.animation.Play();
print("EnemyIsAttacking");
Cooldown();
}
}
}
function Cooldown() {
while(true) {
if(AttackEnabled == 0) {
yield WaitForSeconds(cooldown);
Speed = moveSpeed;
Damp = damping;
AttackEnabled = 1;
}
else {
yield;
}
}
}
↧