Я пытаюсь враг стрелять в меня.У меня есть скрипт, и я прикрепил скрипт к вражескому объекту.Однако, неожиданно мой объект игрока стреляет без остановки вместо врага. Я не знаю, как повлиял мой объект игрока. Также расстояние не рассчитывается должным образом.показывает 1000, затем 1200, затем 800 и т. д.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AI;
public class shten : MonoBehaviour
{
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 dist;
public float min = 200;
public float max = 150;
// Use this for initialization
void Start()
{
}
// Update is called once per frame
void Update()
{
dist = Vector3.Distance(AntagonisticElement.transform.position, Target.transform.position);
transform.LookAt(Target.transform.position);
if (dist >= min)
{
AntagonisticElement.transform.position += AntagonisticElement.transform.forward * 4 * Time.deltaTime;
}
if (dist <= max)
{
shootAt();
}
}
void shootAt()
{
Instantiate(explsn, bulletSpawn.transform.position, bulletSpawn.transform.rotation);
var bullet = Instantiate(bulletPrefab, bulletSpawn.position, bulletSpawn.rotation);
bullet.GetComponent<Rigidbody>().velocity = bullet.transform.forward * bulletSpeed;
Destroy(bullet, bulletDestroyTime);
}
}