Ближний бой с помощью OnCollisionStay2D
Всем привет. И так.
На игроке и на враге висит один и тот же скрипт для нанесения урона. Начальный урон проходит при вызове
private void OnCollisionEnter2D(Collision2D collision)
{
if (collision.gameObject.CompareTag(collisionTag))
{
collision.gameObject.GetComponent<Health>().TakeHit(damage);
gameObject.GetComponent<Animator>().SetTrigger("startAtack");
}
}
Если код с OnCollisionEnter2D я перемещу в OnCollisionStay2D то игрок и враг начнут биться очень быстро из-за частоты кадров. На игроке и враге есть анимации атаки с примерно одинаковой скоростью.
Вопрос Можно ли отнимать здоровья противника по окончании анимации атаки(или с определённым интервалом) с использованием OnCollisionStay2D? Если же нет, то как лучше реализовать ближний бой.