Не получается проверить столкновение объектов в Unity 2D
Делаю 2д игру в которой есть игрок (ракета которая стреляет) и враги (пришельцы которые летят вниз).
Мне нужно проверить столкновение пули с врагом, но у меня никак не получается это сделать.
private void OnTriggerEnter2D(Collider2D other)
{
if (other.gameObject.layer == LayerMask.NameToLayer("Laser"))
{
this.gameObject.SetActive(false);
}
}
}
это код в скрипте врага
Ниже инспектор пули.
Ответы (1 шт):
Автор решения: Nick Shakhrai
→ Ссылка
В чём проблема, раз уж на пуле есть коллайдер, сделать проверку не по слою объекта, а по его тегу:
private void OnTriggerEnter2D(Collider2D other)
{
if (other.CompareTag("Laser"))
{
gameObject.SetActive(false);
}
}
}
Только не забудь пуле добавить тег Laser
