-1
내가 가진 문제는 적을 사격 할 범위에 들어서서 멈추고 선수가 사격장을 벗어나더라도 선수를 다시 따라 오지 않는다는 것입니다 . 플레이어가 사격장에 진입했는지 탐지하기 위해 나는 적을 위해 구형 충돌 장치를 만들었습니다.그가 적정 거리를 입력 할 때 적을 멈추게 만드는 방법
using UnityEngine;
using System.Collections;
public class EnemyWithRifleMovement : MonoBehaviour {
private GameObject player;
private NavMeshAgent nav;
private bool playerInRange = false;
private Rigidbody rb;
void Awake()
{
rb = GetComponent<Rigidbody>();
player = GameObject.FindGameObjectWithTag("Player").gameObject;
nav = GetComponent<NavMeshAgent>();
}
void Update()
{
if(playerInRange)
{
nav.SetDestination(transform.position);
}
else if(playerInRange == false)
nav.SetDestination(player.transform.position);
}
void OnTriggerEnter(Collider other)
{
if(other.gameObject.CompareTag("Player"))
{
playerInRange = true;
}
}
void OnTriggetExit(Collider other)
{
if(other.gameObject.CompareTag("Player"))
{
playerInRange = false;
}
}
}
'OnTriggetExit'의 철자가 잘못되었습니다. 그것은'OnTriggerExit'이어야합니다. – Keiwan
글쎄, 나는 그것이 새로운 것을 쉽게 알 수 있습니다. 감사 –