такая беда
есть враг который имеет несколько состояний.
при состоянии атаки он должен врезаться в игрока и перейти в состояние отступление и по кругу, но это срабатывает через раз.
то есть враг атакует, сталкивается, отступает, снова атакует и на этом моменте триггер на отступление перестает срабатывать и чтобы он снова сработал надо перезайти в него чтобы он снова отлетел.
риджитбади у врага стоит в кинематике, триггер включен
в чем может быть проблема?
private void OnTriggerEnter2D(Collider2D collision)
{
Debug.Log(collision);
if (collision.TryGetComponent<Player>(out Player player))
{
IsKicked= true;
SetState(EnemyBehaviorRetreat);
IsAttack = false;
IsRetreat = true;
}
}
если надо то могу скинуть код из состояний
А ты не пробовал обновлять состояния тогда, когда враг покидает зону коллайдера? Может это поможет?