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

> Find image on a screen
Artios
сообщение 30.9.2022, 10:43
Сообщение #1


*

Registred
Сообщений: 1
Регистрация: 30.9.2022
Группа: Пользователи
Наличность: 0
Пользователь №: 20.349
Возраст: 20



Привет, у меня проблема с кодом, который я написал, чтобы найти изображение и щелкнуть в нужном месте. Когда делаю в отдельных скриптах, все работает, а когда хочу объединить в один скрипт, то уже не работает. Кроме того, я заметил, что запуск скрипта требует много памяти. Можно ли оптимизировать этот код?

Код
--lua
while (1) do
local startX, startY, endX, endY = 0, 0, 1920, 1080

local path = [["C:\Users\Pzt\Desktop\Rappelz\A.bmp"]]
local path2 = [["C:\Users\Pzt\Desktop\Rappelz\B.bmp"]]
local path3 = [["C:\Users\Pzt\Desktop\Rappelz\C.bmp"]]
local path4 = [["C:\Users\Pzt\Desktop\Rappelz\D.bmp"]]
local pathyes = [["C:\Users\Pzt\Desktop\Rappelz\yes.bmp"]]

local arr, a=findimage(startX, startY, endX, endY, {path}, 2)
local arr2,b=findimage(startX, startY, endX, endY, {path2}, 2)
local arr3,c=findimage(startX, startY, endX, endY, {path3}, 2)
local arr4,d=findimage(startX, startY, endX, endY, {path4}, 2)
local arryes,e=findimage(startX, startY, endX, endY, {pathyes}, 2)

hint (a)
    if arr then
        log (" X= " .. arr[1][1] .. " Y= " .. arr[1][2])
        left (arr[1][1], arr[1][2]+45)
    else
    if arr2 then
        log (" X= " .. arr2[1][1] .. " Y= " .. arr2[1][2])
        left (arr2[1][1], arr2[1][2]+80)
    else
    if arr3 then
        log (" X= " .. arr3[1][1] .. " Y= " .. arr3[1][2])
        left (arr3[1][1], arr3[1][2]+115)
    else
    if arr4 then
        log (" X= " .. arr4[1][1] .. " Y= " .. arr4[1][2])
        left (arr4[1][1], arr4[1][2]+150)
    else
    if arryes then
        log (" X= " .. arryes[1][1] .. " Y= " .. arryes[1][2])
        left (arryes[1][1], arryes[1][2]+150)
    end_if
end


Код
--lua
while (1) do
    local startX, startY, endX, endY = 0, 0, 1920, 1080
    local pathyes = [["C:\Users\Pzt\Desktop\Rappelz\A.bmp"]]
    local arryes, e=findimage(startX, startY, endX, endY, {pathyes}, 2)
    if arryes then
        log (" X= " .. arryes[1][1] .. " Y= " .. arryes[1][2])
        left(arryes[1][1],arryes[1][2]+45)
    end
end


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

Сообщений в этой теме


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

 

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