Можно ли сделать запуск скрипта либо прописать цикл с условием выхода из него при нажатии какой-либо кнопки? Это нужно на Lua реализовать.
Горячие клавиши есть для запуска/остановки скрипта.
Если в скрипте отслеживать нажатие клавиши, то плагин есть: https://forum.uokit.com/index.php?showtopic=68111
wait 1 и нет нагрузки.
Нет. Хотя бы в одном месте скрипта и в циклах, которые ожидают появления цвета/картинки.
--lua
local startX, startY, endX, endY = 0, 0, 1920, 1080
local path = [["D:\Pilot\pic\shld.bmp"]]
local soundPath = [["D:\Pilot\sounds\shield.wav"]]
while 1 == 1 do
wait (1)
local arr, a = findimage (startX, startY, endX, endY, {path}, 2)
if a > 0 then
wait (1)
alarm (soundPath)
while a do
wait (1)
local arr, a = findimage (startX, startY, endX, endY, {path}, 2)
if a <= 0 then
break
end
end
end
end
Область поиска большая. Зачем искать по всему экрану.
Искомая картинка какого размера?
--lua
-- поиск нескольких одинаковых изображений
-- если будет найдено больше 20 поиск прекратится, точность 70%, отклонение в цвете 5%
local arr = findimage (0, 0, 1920, 1080, {"картинка.bmp"}, 2, 70, 20, 5) -- поиск картинки, должна быть в папке с пилотом
hint (a) -- результат поиска, подсказка в правом нижнем углу
if arr then -- если найдена
log ("Найдено картинок: " .. #arr)
for i=1, #arr do
kleft (arr[i][1], arr[i][2]) -- кликнули на каждой
wait (1000) -- пауза 1000 мсек (1 сек)
end
end
а можно ли вывести в hint оставшееся время ожидания функции wait?
--lua
function hint_wait(time)
local t = os.clock() + time / 1000
while t > os.clock() do hint (string.format("%.3f", t-os.clock())) wait(1) end
end
log "clear" log "mode compact"
hint_wait(2000) -- ждать 2 секунды
log (111)
hint_wait(3500) -- ждать 3.5 секунды
log (222)
end_script()
А можно как-то включить трекинг выполнения строк в скрипте как буд-то я пишу на дефолтном языке пилота а не на луа? Что-то типо дебаг мода)
Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)