所以,我有一个附加到敌人预制件的脚本。每次敌人向玩家的对撞机投射光线时,都会发生 Activity X。对单个敌人一切正常,但当有多个敌人时,Activity X 开始工作不正常。 代码如下:
void FixedUpdate()
{
if (Physics.Raycast(transform.position, transform.forward, out enemyHit))
{
if (enemyHit.collider.gameObject.tag == "PlayerCollider" && aI_Movement.isFiring == true)
{
activityX = true;
}
else
{
activityX = false;
}
}
}
我的假设是问题的发生是因为来自 RaycastHit 的矛盾信息(比如,一个敌人确实击中了目标对撞机而另一个没有,所以 Activity X 的先决条件同时为真和假)。我试着玩弄孩子们的“if”子句的条件,并做了很多其他调整,但到目前为止没有任何帮助。
有什么方法可以让它正常工作吗?谢谢!