using System.Collections; using System.Collections.Generic; using UnityEngine; public class EnemyAttack : MonoBehaviour //скрипт для атаки врага { public int AttackDelay; //задержка между атаками private bool boolDelay; //переменная для задержки private void OnTriggerEnter2D(Collider2D collision) { if(collision.gameObject.tag == "Player") //при попадании в триггер игрока запускается рекурсия { boolDelay = true; StartCoroutine(Delay()); } } private void OnTriggerExit2D(Collider2D collision) //при выходе выключается { boolDelay = false; } public void Attack() //функция наносящая урон игроку { Debug.Log("-damage"); } IEnumerator Delay() //рекурсия для переодического получения урона персонажем { if(boolDelay == true) { yield return new WaitForSeconds(AttackDelay); Attack(); yield return StartCoroutine(Delay()); } else if (boolDelay == false) { yield return null; } } }