LP
Вот сижу проверяю сценарий и невольно возникает следующая мысль:
Первой линией обороны в кликере судя по всему должна быть проверка текущего окна.
Оно гаранированно валит сценарий если в процессе что-то пошло не так (неожиданное окно) или вылетело исключение.
Но шаг проверки окна нужно во-первых вдумчиво расставлять и следить что он везде где нужно есть (где меняется текущее окно),
плюс при ревью сценария приходится их выуживать и интерпретировать в голове что происходит и не пропущен ли такой шаг.
Хотелось бы чтобы смена текущего окна как-то нативно логически выделялась в сценарии.
Типа чтоб был синтаксический элемент "Я работаю с окном 'заголовок окна'" и код под этим шагом выделяется оступом.
Т.е. чтоб был уровень визуально где меняются окна, а весь код под этими сменами с отступом. При этом шаг сам проверяет текущее окно до исполнения подчиненного кода и после. Ну и записывалка конечно должна сразу делать в таком формате.
Тогда открылось окно "Заголовок окна"
Он и гарантирует проверку смены окон.