видимо проблема сейчас после if в двигать мышь и кликнуть на элемент
var data = {fail:false,wait:true};data["scroll"] = "no scroll" == "scroll";data["threshold"] = parseInt(80);data["timeout"] = 5000;data["data"] = "iVBORw0KGgoAAAANSUhEUgAAAMEAAAAeBAMAAABnBGdVAAAALVBMVEUAWv/V5P////+cv/9Chf+Qt/+81P/k7v+Crv/y9/+nxv/5+/9dlv/F2f9zpf8aFseGAAABB0lEQVR4Ae2SsUoDQRCG58ixbHHFXhCsHcHG5kilaJFG5j1EMIepwqFgtYWNbGWEEGGtfQBBzm4LC/MkvoazupWphEkT9msGrvi/m38HMpnMfxg2a5/O0qxVJyDQT2sp5bWoQd32GzbQdAHl7NAqPABCr5+xJ+Rgh3tChhN7OaZO+SvrThfQfr6H9oN3qB5h1MgYanDNvf1pZtABTV6BLn5bWskY+F/JHIc4QSHiZAnFTjSUM5QxxFSfDAXn6WSo5kZoBzKg31JLyrMhtTTw3J6IIYbffBm9bANNH8Ad8UuHmg19NZcx7I75nO7Sta5wn6/Vw4iXOccXI3NLf+B32DDbYMhktphvXodGRgltnEgAAAAASUVORK5CYII=";_wait_image(data)!
_if(typeof _Idle != "undefined", function(){
_Idle.emulate({useGeneral: true, target: _image()})!
})!
_if_else(typeof _Idle != "undefined" && _Idle.additionalEmulationEnabled(), function(){
_Idle.moveAndClickOn(_image(),{holdCtrl: false, clickType: "left", wait: false, moveSettings: {} })!
}, function(){
_image().random_point()!
_if(_result().length > 0, function(){
move( {} )!
_image().clarify(X,Y)!
_call(_clarify, {} )!
mouse(X,Y)!
})!
})!
Не переходит в основную функцию, после выполнения условия в другой функции
-
Всем привет, в общем делал скрипт и столкнулся с такой проблеммой.
У меня есть функция, в ней есть цикл foreach в нем цикл for

Когда срабатывает условие срабатывает эта функция

Получает что, идет загрузка если не срабатывает то на else она повторяется снова. Когда повторилось то находит элемент и срабатывает условие if, оно срабатывает, срабатывает та функция что в нем

И после того как функция эта сработала, должно перекидывает меня в цикл который на 1 скрине, но получается следующее раз через раз оно не перекидывает, срабатывает все это что выделенное

И просто скидывается вся работа скрипта. и она не переходит в цикл for и не выводит даже сообщение которое ниже его.
Если использовать метки, то получается что метка сработала перекинула в for и все, работа остановилась вообще, цикл остановился.
Так же во ЛОГ ничего вообще не выводится. Ведь по факту должна выводится ошибка скрипта или проекта
В чем проблема? -
@sashf1999 Нельзя метками переходить между функциями...
-
@denis_krsk said in Не переходит в основную функцию, после выполнения условия в другой функции:
@sashf1999 Нельзя метками переходить между функциями...
Почему это. Можно же...
-
@forall Можно, а потом получать удовольствие от таких багов тоже можно. Нельзя потому что пропускается инициализация функции и интерпретатор понятие не имеет, что он выполняет функцию.
-
@sashf1999 Что помочь? Вам ответили причину. Переделайте скрипт. Что бы метки если вы их используете были не в функциях, а до них. А функции вызывались отдельно. Ну или по проверке. Я бы например проверку капчи вынес в отдельную с проверкой если она универсальна по всему телу скрипта.
Что бы так не путаться ставьте метки только до начала выполнения функции, а вот перейти к метке можно где угодно.
-
@sashf1999 Тогда надо смотреть сам скрипт. Попробуйте обратится к @Fox В личке я так понимаю это не тот скрипт который стоит разбирать на публике. Значит где то у вас сидит ошибка. Возможно например что элементы меняются при перезагрузке. И он не ловит их такое бывает.
-
@Denis_krsk
Нельзя метками переходить между функциями...
Оказывается можно
:DНо без глюков можно переходить только внутри одной функции.Вот тестовый скрипт.
Логика такая, скрипт начинает работу с main, заходит в функцию test_0, там стоят две метки, одна вызывается тут же для увеличения переменной в цикле. После прохождения функции test_0 мы возвращаемся в main, и из неё переходим в функцию test_1, в ней мы переходим по метке в функцию test_0. Но после выполнения функции test_0 скрипт завершается, не возвращаясь ни в test_1, ни в main.
Если бы мы просто вызывали функции, стек бы сохранялся и всё работало как и ожидается.
Основной косяк скрипта был вот в чём: В двух разных функциях ставились и вызывались метки с одинаковым именем, в результате ни чего не происходило и скрипт просто завершался.
Вот тестовый скрипт для наглядности.
Метки зло, с ними проще создать баг, чем с циклом или вызовом функции. Хоть и @support говорит, что это мощный инструмент, я бы не советовал новичкам его использовать повсеместно.
-
@fox said in Не переходит в основную функцию, после выполнения условия в другой функции:
что это мощный инструмент, я бы не советовал новичкам его использовать повсеместно.
Бгг я с этим инструментом "нахавался" в свое время. Мало меток будут косяки, много меток будешь репу чесать а куда она ведет... особенно действия повторяются, но не совсем "повторяются". Сейчас проще. Список меток можно всегда увидеть "скопом" за что спасибо @support у. Бас все больше и больше становится юзабельным для новичков. Но блин это нарягает когда привык "как раньше"))
-
-
@Denis_krsk
А я разве не это написал?Выражение "нельзя между" и "можно только внутри" разве не равны по смыслу?)) Или я чего-то не понял :D
Да, ты так же написал
:D, нууу, а что ты хотел, я полтора суток не спал, ладно хоть причинно-следственные связи работали )) -
-
Метки зло
49 меток, гоняю кран в 30.000 аккаунтов и 500 потоков на 5 серверах. Багов нет :D
Я лишь высказал своё мнение, каждый вправе
городить свой огородреализовывать свою логику как вздумается:D
Для тех кто активно пользуется метками советую обратить внимание на два выше приведёных мною факта:
- Не называть метки одинаково
- Не перепрыгивать из функции в функцию через метки
-
- Одинаковые метки это само собой. Это создаст дикие баги.
- Перепрыгивать из функции в функции можно, но более чем 1 раз туда-сюда. Хотя у меня скрипт построен таким образом, что если что-то затупит, что даже не страшно и это. Одна метка не сработает - сработает другая.
-
Да можно все, просто потом не надо писать, помогите, BUG! )))
-
@denis_krsk На каждый баг должен быть анти-баг :D У меня на каждую проверку еще 3 проверки и 4 критическая (перезапуск бота). Хотя до такого доходит редко, но всё же. Это мир ботоводства, здесь не предсказуемо всё.
Особенно когда скрипт очень долго без перезапуска работает. Мой рекорд 23 дня.