Но появилась новая проблема. Иногда скрипт во время работы внезапно запрещает выделять действия. Т.е при клике на любое действие, оно просто не выделяется красным. Это второй баг, независимый от первого если что
Не верно работает логика скрипта continue
-
два то зачем, одного бы хватило
@ruzne said in Не верно работает логика скрипта continue:
вероятно
я могу ошибаться как я и говорил, функция - именованый блок действий, поэтому назвав это блоком я много не ошибся.
называть это функцией я все же не буду потому что как функция это себя не ведет.
@zizitop
чтобы прямо исправится за все косяки за которые меня тут подтягивают предложу использоватьвместо континуе
_next(2)вместо бряка
_break(2)2 - по числу вложеностей.
вот, функции сремные.
@DrPrime
претензия к функциям следующаяfunction a(){ log('1'); i++; if(i<5){ a(); }else{ log('2'); } log('3'); } i=0; a();это работать не будет. ошибка иф елзе экспрешен. условие в ифе не вычислено, точнее вычислено но благополучно забыто, а должно было быть сохранено при вызове функции и востановлено при возврате из функции.
вывод функции поддельные. -
@ruzne said in Не верно работает логика скрипта continue:
чтобы прямо исправится за все косяки за которые меня тут подтягивают предложу использовать
вместо континуе
_next(2)вместо бряка
_break(2)2 - по числу вложеностей.
А как этот самый _next(2) мне впихнуть и в виде чего, переменной или как произвольный код или без разницы?
-
@zizitop
в данном конкретном случае _next(3) точно работает как континуе для внешнего по отношению к функции циклу
я провелил, если степень вложености изменится, то насколько выше или ниже нужно будет другой аргумент некст указывать, вероятно можно не только на сколько выше ниже указать но и метку в дефолтном континуе например внутри на самом деле вызов _next("function")
я вот еще закгрузку в игнорировать ошибки обернул чтобы это заработало -
@ruzne Да, если загрузку обернуть в игнор ошибок все работает с некстом.
@ruzne said in Не верно работает логика скрипта continue:
вероятно можно не только на сколько выше ниже указать но и метку в дефолтном континуе например внутри на самом деле вызов _next("function")
А как реализуется эта самая "метка в дефолтном континуе", что то не пойму?
-
@zizitop
Тебе нужно вместо Continune в функциях сделать Выполнить кодVAR_NEED_NEXT = true _break()В цикле после каждой функции блок IF с условием [[NEED_NEXT]]
Внутри которого
Установить переменную NEED_NEXT в значение false с типом данных expression
И блок ContinuneТак же перед циклом
Установить переменную NEED_NEXT в значение false с типом данных expressionКостыль конечно, но по другому никак
