|
|
  |
UOpilot и ставки в онлайн браузере |
|
|
Levo223 |
2.11.2017, 10:53
|
  
Novice
Сообщений: 61
Регистрация: 8.10.2017 Группа: Пользователи Наличность: 0
Пользователь №: 18.638
Возраст: 23

|
[quote name='cirus' date='2.11.2017, 2:01' post='421377'] У меня что-то случилось с пилотом, такое ощущение что действия из других скриптов вмешиваются в работу текущего скрипта, т.е. делают то что не написано? Он своей жизнью зажил? Или я нажал что-то не то? Можно ли убрать из сравнения первые 4 строки, если они уже фигурируют в данном скрипте но над If который выше этого? Будет ли работать. Числа в переменную уже же получены? Или не будет работать? Код set $a string_replace ($a "." ",") // заменяем точку на запятую, иначе не будет работать set $b string_replace ($b "." ",") log $a $b log trunc($a) trunc($b)
if trunc($a) < trunc($b) IIII end_if
Т.е. Можно ли написать вот так Код set $a string_replace ($a "." ",") // заменяем точку на запятую, иначе не будет работать set $b string_replace ($b "." ",") log $a $b log trunc($a) trunc($b)
if trunc($a) < trunc($b) IIII end_if
if trunc($a) > trunc($b) IIe end_if
if trunc($a) = trunc($b) IIUU end_if
???
|
|
|
|
Levo223 |
3.11.2017, 7:12
|
  
Novice
Сообщений: 61
Регистрация: 8.10.2017 Группа: Пользователи Наличность: 0
Пользователь №: 18.638
Возраст: 23

|
Еще одна проблема, сейчас в циклах If стоит какой-то беспорядок перескакивает с одного на другой, хотя я вроде ничего не менял Есть Код while 1=1 while Grey/Yelow 1111 end_while
if #grey > 0 12345 else //////////////////////////////// что тут не так?
if trunc($a) < trunc($b) IIII end_if
тут перескакивает на следующий if
if trunc($a) > trunc($b) IIe end_if
тут перескакивает на следующий if
if trunc($a) = trunc($b) IIUU end_if end_if end_while
КАк сделать так чтобы после else скрипт возвращался к while Grey/Yelow, а не продолжал сравнение А также после каждого сравнения > < = возвращался в начало цикла а не продолжал сравнивать?
|
|
|
|
Levo223 |
3.11.2017, 18:11
|
  
Novice
Сообщений: 61
Регистрация: 8.10.2017 Группа: Пользователи Наличность: 0
Пользователь №: 18.638
Возраст: 23

|
Цитата(cirus @ 3.11.2017, 13:15)  код
Код while 1=1 while Grey/Yelow 1111 end_while
if #grey > 0 12345 else if trunc($a) < trunc($b) // если $a < $b IIII else // иначе if trunc($a) > trunc($b) // если $a > $b IIe else // иначе $a = $b IIUU end_if end_if end_if end_while Я не знаю что происходит. Раньше работало без этого. а теперь всё сбилось! Могут ли одновременно 2 скрипат работать? Я не пойму у меня всё правильно написано, какая-то дичь происходит? Вроде в другом скрипте тоже привязка к этому окну стоит? Работает только активный скрипт или все которые привязаны? И как отвязать остальные?
|
|
|
|
Levo223 |
8.11.2017, 0:43
|
  
Novice
Сообщений: 61
Регистрация: 8.10.2017 Группа: Пользователи Наличность: 0
Пользователь №: 18.638
Возраст: 23

|
Цитата(cirus @ 4.11.2017, 1:01)  Хоть 99 пилотов запустите, хоть 99 вкладок, разницы не будет.
У меня почему-то работает схема if главное else if End_if If End_if If End_if End_if скрипт проверяет последовательно каждое из условий и записывает в лог, и никаких else между ними не требуется, чем это плохо? else наоборот всё сбивает Но существует задержка между 1 и второй ставкой, я так и не пойму где запинка. Счётчик как будто чем-то подавился, очень долго думает. потом 2 раза тыкает в ввод, как будто по второму кругу пошёл но всё равно ставит. Следующие ставит быстро. возможно причина в Break посредине цикла, но я не знаю что еще поставить. set #count #count + 1 // переменная-счётчик if #count > size(%num) // если переменная-счётчик больше, чем размер массива num break // break - сначала, end_script остановить скрипт, тут что делать если достигнута макс ставка // сейчас остановка скрипта, чтобы не было ошибки при выходе за пределы массива end_if set #summa %num [#count] // присваиваиваем переменной значение из массива log Текущая ставка #summa
|
|
|
|
Levo223 |
9.11.2017, 0:02
|
  
Novice
Сообщений: 61
Регистрация: 8.10.2017 Группа: Пользователи Наличность: 0
Пользователь №: 18.638
Возраст: 23

|
Цитата(cirus @ 8.11.2017, 2:03)  // условие ложь, выполняется всё что идёт до end_if (окончание условия1) if // условие2 End_if // окончание условия2
If // условие3 End_if // окончание условия3
If // условие4 End_if // окончание условия4 End_if // окончание условия1[/code]
Расставилось Почему-то не получается найти цвет в перекрытом окне устанавливаю хендл рабочего и задаю его в скобках set workwindow 66210 while 1 = 1 // начало цикла set #grey 0 while #grey = 0 // ждём пока не появится серое set #grey findcolor(78, 35 99, 43 1 1 4737096 %arr workwindow) // ЦИКЛ ОЖИДАНИЯ wait 100 end_while Aero включен, что еще нужно но почему-то не ищет, в инструкции сказано что по относительным координатам, толи его рабочим не хочет признавать толи хз, других окон нет В окне поиска F показывает черный квадрат, окно монолитное...
|
|
|
|
Levo223 |
9.11.2017, 11:08
|
  
Novice
Сообщений: 61
Регистрация: 8.10.2017 Группа: Пользователи Наличность: 0
Пользователь №: 18.638
Возраст: 23

|
Цитата(cirus @ 9.11.2017, 2:06)  Привязка не к тому окну. Обычно нужен хендл родительского окна. Если браузер, то Ctrl + A на рамке или заголовке. Код set #grey findcolor(0 0 1920 1080 1 1 4737096 %arr workwindow) // для теста координаты указываем больше hint #grey end_script Вобщем в логе пишет вот так, я её сделал 15:01:47 21 (Модиф 21.txt, 32): что за хрень 1501 1501 + 1 15:01:47 21 (Модиф 21.txt, 34): наступил break Код if #count > size(%num) // если переменная-счётчик больше, чем размер массива num log наступил break break // break - сначала,
данная часть скрипта пропускает выполнение в себя даже если не максимальная ставка? как быть? [quote name='Levo223' post='421509' date='9.11.2017, 11:08'] Вобщем в логе пишет вот так, я её сделал 15:01:47 21 (Модиф 21.txt, 32): что за хрень 1501 1501 + 1 15:01:47 21 (Модиф 21.txt, 34): наступил break Код if #count > size(%num) // если переменная-счётчик больше, чем размер массива num log наступил break break // break - сначала,
данная часть скрипта пропускает выполнение в себя даже если не максимальная ставка? как быть?
|
|
|
|
Levo223 |
9.11.2017, 14:18
|
  
Novice
Сообщений: 61
Регистрация: 8.10.2017 Группа: Пользователи Наличность: 0
Пользователь №: 18.638
Возраст: 23

|
Цитата(cirus @ 9.11.2017, 11:59)  Выводите значения в лог и смотрите является ли условие истиной. Код log #count > size(%num) if #count > size(%num) Является но сравнивает с порядковым номером а не со значением ставки! Код 18:11:47 21 (Модиф 21.txt, 32): 1501 > 4
|
|
|
|
Levo223 |
9.11.2017, 17:03
|
  
Novice
Сообщений: 61
Регистрация: 8.10.2017 Группа: Пользователи Наличность: 0
Пользователь №: 18.638
Возраст: 23

|
Цитата(cirus @ 9.11.2017, 15:13)  Код set %arr [1] 12 set %arr [2] 6 set %arr [3] 123 set %arr [4] 77
set #count 3 log %arr [#count] // вывести в лог значение 3 элемента массива end_script что обозначают числа 12. 6. 123. 77 ? А не проще? Обозначить макс ставку какой-нибудь допустим Х set #x 100 // макс ставка if #count >= #x ??? -------------------------- Я не пойму вот этого момента Код set #count #count + 1 // переменная-счётчик if #count > size(%num) // если переменная-счётчик больше, чем размер массива num log достигнута максимальная ставка // end_script остановить скрипт, тут что делать если достигнута максимальная // сейчас остановка скрипта, чтобы не было ошибки при выходе за пределы массива end_if set #summa %num [#count] // присваиваиваем переменной значение из массива log Текущая ставка #summa send #summa // напечать сумму
В каком месте здесь остановка скрипта? Проверку на макс ставку нужно проводить не во время её постановки, а во время прихода окон. Т.е. в начале цикла определения окна. Но если я поставлю в каждой проверке такой цикл Код if #grey > 0 // если найдено серое окно if #count = #x end_script если поставлю else то куда девать end_if ?
if #yellow >0 if #count = #x end_script снова куда девать? else и end_if Если поставлю в конец? Они не запутаются? Вобщем нужно условие которое нужно поставить в начало каждого нахождения окна Код if #grey > 0 // если найдено серое окно || (1) if || if #count = #x // где х это максимальная end_script else continue end_if[ wait 300 kleft 1256 126 .........
Чтобы продолжало выполнение при ложности условия, и останавливало при истинности
|
|
|
|
cirus |
10.11.2017, 2:18
|

         
Elder
Сообщений: 3.480
Регистрация: 18.8.2014 Группа: Пользователи Наличность: 26824
Пользователь №: 16.971
Возраст: 29

|
Цитата что обозначают числа 12. 6. 123. 77 ? Ничего. Это лишь пример обращения к элементу массива. Цитата В каком месте здесь остановка скрипта? Ни в каком. Строка end_script закомментирована. Цитата Проверку на макс ставку нужно проводить не во время её постановки, а во время прихода окон. Зачем тогда вообще ждать окна? Ставка максимальная значит остановка скрипта. Т. е. проверять можно до поиска окон. Цитата if #grey > 0 // если найдено серое окно if #count = #x end_script если поставлю else то куда девать end_if ? Разберитесь с if, пока не поймёте скрипт никогда не напишете. Обратите внимание как стоят end_if в примере 2 и 3. Примеры
Код // Пример 1 log clear if 1 = 1 log +++ // показать в логе если условие истина end_if end_script Код // Пример 2, проверены будут оба условия log clear if 1 = 1 log +++ // показать в логе если условие истина end_if if 2 = 2 log !!! // показать в логе если условие истина end_if end_script Код // Пример 3, проверено будет первое условие, второе только если первое истина // если первое ложь, то второе не будет проверено log clear if 1 = 1 log +++ // показать в логе если условие истина if 2 = 2 log !!! // показать в логе если условие истина end_if end_if end_script Код // Пример 4 log clear if 1 = 1 log +++ // показать в логе если условие истина else log !!! // если истина ложь end_if end_script Код // Пример 5, проверено будет первое условие, второе только если первое ложь log clear if 1 = 1 log +++ // показать в логе если условие истина else if 2 = 2 log !!! // показать в логе если условие истина end_if end_if end_script
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|