Я начал новую игру. У меня есть враг, и когда игрок находится на определенном расстоянии от врага, он атакует. Мой сценарий работает, и враг следует за игроком, но, несмотря на установленное мной число, он следует за игроком. Мне нужно, чтобы враг преследовал меня только после того, как подобрался достаточно близко к игроку. У меня есть пустой объект, прикрепленный к врагу, и сценарий находится на нем.
Я искал ответ в ответах сообщества единства и нашел скрипт, который использую, в этой ссылке https://answers.unity.com/questions/274809/how-to-make-enemy-chase-player-basic-ai.html, а также я погуглили, но не смогли найти правильного решения.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class AIController : MonoBehaviour
{
public int AttackTrigger2;
public Transform Player;
public int MoveSpeed = 4;
public int MaxDist = 10;
public int MinDist = 5;
void Update()
{
transform.LookAt(Player);
if (Vector3.Distance(transform.position, Player.position) >= MinDist)
{
transform.position += transform.forward * MoveSpeed * Time.deltaTime;
if (Vector3.Distance(transform.position, Player.position) <= MaxDist)
{
//Here Call any function U want Like Shoot at here or something
}
}
}
}
У меня нет ошибок в моем коде, он делает то, что мне нужно, но мне нужно, чтобы враг перестал следовать за игроком после того, как мой игрок окажется с определенного расстояния.