Я пытаюсь заставить врага стрелять в меня.Мой скрипт выглядит хорошо, но он говорит, что целевая переменная не была назначена.В инспекторе я выбрал свой объект игрока в целевой слот.Но это повторяет ту же ошибку.
public GameObject AntagonisticElement;
public GameObject Target;
public float bulletSpeed;
public float enemySpeed;
public float bulletDestroyTime;
public GameObject explsn;
public GameObject bulletPrefab;
public Transform bulletSpawn;
Vector3 pos;
public float min = 20;
public float max = 10;
// Use this for initialization
void Start () {
Target = GameObject.FindGameObjectWithTag("Tank");
}
// Update is called once per frame
void Update () {
transform.LookAt(Target.transform.position);
if (Vector3.Distance(AntagonisticElement.transform.position, Target.transform.position) >= min)
{
AntagonisticElement.transform.position += AntagonisticElement.transform.forward * 4 * Time.deltaTime;
}
if (Vector3.Distance(AntagonisticElement.transform.position, Target.transform.position) <= max)
{
shootAt();
}
}
void shootAt()
{
Instantiate(explsn, bulletSpawn.position, bulletSpawn.transform.rotation);
var bullet = Instantiate(bulletPrefab, bulletSpawn.position, bulletSpawn.rotation);
bullet.GetComponent<Rigidbody>().velocity = bullet.transform.forward * bulletSpeed;
}