我正在尝试创造一个隐形游戏,并且我创建了敌人和附加的盒子对撞机组件到敌人的眼睛,并且检查了IsTrigger,以便多维数据集充当视觉,并且每当玩家进入该触发器时,敌人开始追踪玩家;选手。问题是一旦玩家进入和退出触发器,玩家就会因为我的玩家的碰撞者和敌人的视觉立方体碰撞而迅速坐下来站立。我不知道,也许是因为Unity本身而需要更新程序或类似的东西。
using UnityEngine;
using System.Collections;
public class EnemyWalk : MonoBehaviour {
public GameObject Enemy;
public float timer;
public bool yes;
public float newtimer;
void Start () {
newtimer=timer;
}
void OnTriggerEnter(Collider other){
if (other.tag == "Player") {
Enemy.GetComponent<NavMeshAgent>().enabled = true;
Enemy.GetComponent<Animator>().SetTrigger ("MoveForEnemy");
}
}
void OnTriggerExit(Collider other){
if(other.tag == "Player") {
yes=true;
}
}
void Update () {
if(yes==true){
timer -= Time.deltaTime;
}
if(timer < 0){
Enemy.GetComponent<NavMeshAgent>().enabled = false;
yes=false;
timer=newtimer;
Enemy.GetComponent<Animator>().SetTrigger ("IdleForEnemy");
}
}
}