Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Как остановить бесконечный цикл?
StreL
сообщение 9.8.2021, 14:58
Сообщение #1


**

Neophyte
Сообщений: 18
Регистрация: 15.9.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.039
Возраст: 40



--lua
while true do -- бесконечный цикл
local num = findcolor ("461, 134 , 1432, 701 ( 2175984 ) %arr 2")
hint ("Найдено пикселей: " .. tostring(num))
if num > 0 then
move (arr[1][1], arr[1][2])
wait(3000)
end
wait (100)
end

как сделать чтобы после того как он найдёт цвет он переместился туда, левый клик и остановился. Дальше пойдёт другая работа скрипта с тем что откроется при клике.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Madeus
сообщение 9.8.2021, 15:57
Сообщение #2


*****

Journeyman
Сообщений: 317
Регистрация: 19.11.2019
Группа: Пользователи
Наличность: 10860
Пользователь №: 19.451
Возраст: 32



добавить break или делать цикл не бесконечным а с условием поиска цвета
Код
--lua
while true do -- бесконечный цикл
  local num = findcolor ("461, 134 , 1432, 701 ( 2175984 ) %arr 2")
  hint ("Найдено пикселей: " .. tostring(num))
  if num > 0 then
    move (arr[1][1], arr[1][2])
    wait(3000)
    break -- выход из "бесконечного" цикла
  end
  wait (100)
end
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
StreL
сообщение 9.8.2021, 16:13
Сообщение #3


**

Neophyte
Сообщений: 18
Регистрация: 15.9.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.039
Возраст: 40



Цитата(Madeus @ 9.8.2021, 15:57) *

добавить break или делать цикл не бесконечным а с условием поиска цвета
Код
--lua
while true do -- бесконечный цикл
  local num = findcolor ("461, 134 , 1432, 701 ( 2175984 ) %arr 2")
  hint ("Найдено пикселей: " .. tostring(num))
  if num > 0 then
    move (arr[1][1], arr[1][2])
    wait(3000)
    break -- выход из "бесконечного" цикла
  end
  wait (100)
end


А как это условие будет выглядеть? можно примерник?
break мне не подойдёт потому что и до этого поиска цвета и после него куча ещё всего что выполняется.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Madeus
сообщение 9.8.2021, 16:19
Сообщение #4


*****

Journeyman
Сообщений: 317
Регистрация: 19.11.2019
Группа: Пользователи
Наличность: 10860
Пользователь №: 19.451
Возраст: 32



Код
--lua
repeat
  local num = findcolor ("461, 134 , 1432, 701 ( 2175984 ) %arr 2")
  hint ("Найдено пикселей: " .. tostring(num))
  if num > 0 then
    move (arr[1][1], arr[1][2])
    wait(3000)
  end
  wait (100)
until num > 0
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 9.8.2021, 16:23
Сообщение #5


***********

Модератор UOPilot
Сообщений: 9.742
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 29657
Пользователь №: 11.279



Цитата
break мне не подойдёт потому что и до этого поиска цвета и после него куча ещё всего что выполняется.

А что мешает вывести эту "кучу" за пределы while? В целом break либо repeat, либо while с проверкой на результат поиске. По большому счету это все одно и тоже. Уточните задачу.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
StreL
сообщение 9.8.2021, 16:59
Сообщение #6


**

Neophyte
Сообщений: 18
Регистрация: 15.9.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.039
Возраст: 40



Цитата(DarkMaster @ 9.8.2021, 16:23) *

А что мешает вывести эту "кучу" за пределы while? В целом break либо repeat, либо while с проверкой на результат поиске. По большому счету это все одно и тоже. Уточните задачу.


на экране в произвольном порядке появляются ярко красные точки (начать задание). нужно чтоб скрипт нашёл эту точку и нажал на неё, далее я уже в зависимости от ситуации (завершение это задания или старт) пропишу проверку по цвету кнопки, если есть в меню определённый цвет - это начало задания и надо делать одно, если это конец задания то после нажатия этого цвета не будет и можно начинать искать следующую точку.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
StreL
сообщение 9.8.2021, 18:25
Сообщение #7


**

Neophyte
Сообщений: 18
Регистрация: 15.9.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.039
Возраст: 40



Цитата(Madeus @ 9.8.2021, 16:19) *

Код
--lua
repeat
  local num = findcolor ("461, 134 , 1432, 701 ( 2175984 ) %arr 2")
  hint ("Найдено пикселей: " .. tostring(num))
  if num > 0 then
    move (arr[1][1], arr[1][2])
    wait(3000)
  end
  wait (100)
until num > 0



спасибо. я слабо разбираюсь, а клик в найденную точку как будет? left (arr[1][2]) ?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 9.8.2021, 18:29
Сообщение #8


***********

Модератор UOPilot
Сообщений: 9.742
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 29657
Пользователь №: 11.279



left (arr[1][1], arr[1][2])


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
StreL
сообщение 9.8.2021, 19:17
Сообщение #9


**

Neophyte
Сообщений: 18
Регистрация: 15.9.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.039
Возраст: 40



Спасибо огромное Вам всем. Надеюсь вечером смогу продолжить свой скрипт с тем чему научили ))
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 8.7.2025, 9:37
Designed by Nickostyle