为什么我的游戏在浏览标记为触发器和标记"Package"的游戏对象时无法正确显示"Package picked up"?



当我越过触发器时,在控制台中没有得到响应。在包中我有Rigidbody2D, Collision Script, Collider 2D,它被标记为触发器。在汽车上,我有一个Collider 2D, Rigidbody 2D和我的移动脚本。我对编程很陌生,所以我的婴儿眼睛看不出哪里出错了:(

void OnCollisionEnter2D(Collision2D other)
{
Debug.Log("Oof!");   
}
void OnTriggerEnter2D(Collider2D other)
{
if (other.gameObject.CompareTag("Package"))
{
Debug.Log("Package picked up");
}       
}   

这个碰撞脚本比较的是与它碰撞的带有"Package&quot标签的对象。

如果(other.gameObject.CompareTag("Package")

从你告诉我的,这个脚本当前在包对象上。所以它是一个包检查它是否与另一个"Package"…碰撞

解决方案是将脚本移动到汽车

p。:它应该只记录"包裹拾取";消息,如果它满足"if"条件。包装标签是"包装"吗?

相关内容

  • 没有找到相关文章

最新更新