Задать вопрос
@Alexander_020
изучаю Unity два года

Как в Unity (2D) сделать реакцию на столкновение и рассоединение объектов?

Это мой код на реакцию столкновения, а как сделать реакцию рассоединения не знаю.

public class Enemy : MonoBehaviour
{
    private void OnCollisionEnter2D(Collision2D collision)
    {
        if (collision.gameObject.tag == "Player") {
            collision.gameObject.GetComponent<player>().RecountHp(-1);
            collision.gameObject.GetComponent<Rigidbody2D>().AddForce(transform.up * 14f, ForceMode2D.Impulse);
        }        
    }
}
  • Вопрос задан
  • 2606 просмотров
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
ReyGrau
@ReyGrau
Junior Unity Developer
OnCollisionExit2D все это гуглится за пару минут. И лучше вместо проверки тега, проверять есть ли какой-нибудь компонент на объекте.
private void OnTriggerEnter2D(Collider2D other)
	{
		if(other.GetComponent<PlayerController>() != null)
		{
			...
		}
	}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
GavriKos
@GavriKos Куратор тега Unity
Вот если взять и открыть мануал по OnCollisionEnter2D и ВНИМАТЕЛЬНО его почитать - то можно найти ответ.
https://docs.unity3d.com/ScriptReference/MonoBehav...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы