Это было долго и сложно, но на удивление задание приняли с первого раза с небольшими комментариями:
1. [SerializeField] float _delay; - не забывайте ставить модификаторы доступа
2. float latency = 1f;
WaitForSeconds wait = new WaitForSeconds(latency);
float timeLeft = _bulletsLifeTime;
while (timeLeft > latency)
{
timeLeft -= latency;
yield return wait;
} - можно сократить до одной строки
Гит: https://github.com/NoNameDeleted/FlappyTerminator
Я кстати так и не понял как можно эту корутину сократить до одной строчки, возможно в будущем узнаю