[英]OnTriggerEnter2D being triggered by colliders not marked as trigger?
我正在開發一個標准的自上而下的 2D RPG。 在我的 Player 對象上,我有兩個碰撞器,一個是常規的 2D 盒碰撞器,未標記為處理碰撞的觸發器,它在垂直方向上比播放器小。 我有另一個盒子對撞機 2D,它被標記為觸發器,作為某種碰撞盒工作,它覆蓋了整個玩家-。 在拾取物品時,我想使用觸發器碰撞器,所以我使用了以下代碼:
private void OnTriggerEnter2D(Collider2D other)
{
if (other.GetComponent<DroppedItem>() != null && other.isTrigger)
{
Debug.Log("Picked up item.");
DroppedItem item = other.GetComponent<DroppedItem>();
inventory.AddItem(item.item, item.itemAmount);
Destroy(item.gameObject);
}
}
每次我與掉落的物品發生碰撞時都會觸發兩次調試消息,該物品也有一個觸發碰撞器,即使我隨后銷毀了該物品。 如果我將觸發碰撞器標記為非觸發,調試消息也會觸發兩次,反之亦然。 我如何避免這種情況?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.