Нет, оно работает через корутину, твой вариант не меняет ничего, просто добавляет лишнее условие которое не влияет на логику. Но насколько это правильно делать через корутину я без понятия )
Мой код работает, как часы. Я не просто добавил лишнее условие, я поправил неправильную логику, которую ты изначально сделал. Я просто взял этот код, скопировал только что в Юньку и всё работает. Оно в принципе не может не работать.
Ты где-то накосячил.