Проблема с OnTriggerEnter в Unity

    {
        if (other.gameObject.tag == "Sword"){
            Destroy(gameObject);
            Destroy(other.gameObject);
        }
        
    }

У меня есть объект с тегом Sword. И если враг его касается(скрипт весит на нём), то он и объект с тегом должен исчезнуть. Но этого не происходит.


Ответы (1 шт):

Автор решения: Максим Фисман

Это может происходить потому, что ваш код не срабатывает. Помимо того, что он может не срабатывать из-за того, что тег у вас не Sword, причиной также может быть то, что OnTriggerEnter() срабатывает ТОЛЬКО ЕСЛИ:

  1. На обоих объектах есть Collider
  2. Один и только один помечен как триггер
  3. Хотя бы на одном есть Rigidbody

Из документации:
Both GameObjects must contain a Collider component. One must have Collider.isTrigger enabled, and contain a Rigidbody. If both GameObjects have Collider.isTrigger enabled, no collision happens. The same applies when both GameObjects do not have a Rigidbody component.

→ Ссылка