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

 
Ответить в эту темуОткрыть новую тему
> Помогите разобраться
ZaArazkin
сообщение 14.2.2019, 9:28
Сообщение #1


**

Neophyte
Сообщений: 10
Регистрация: 4.2.2019
Группа: Пользователи
Наличность: 0
Пользователь №: 19.220



есть код

Код

set #handle workwindow                           // найти окно эмулятора
set #handle findwindow ("Бульбазавр")
set workwindow #handle                            // сделать его рабочим
//set windowpos 0 0
//wait 500
//Перезапускаем теслу
//wait 5s
//kleft 44, 404
//wait 3s
//set $c2 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Я хочу в бой.bmp) %arr 2)
//kleft %arr [1 1] %arr[1 2]
//wait 1s

//set $с2 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Перейти в ТЕСЛУ.bmp) %arr 2)
//kleft %arr [1 1] %arr[1 2]
//wait 5s


set #с3 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Тесла_продолжить.bmp) %arr 2)

if #c3 > 85
    wait 1s
    kleft %arr [1 1] %arr[1 2]
    wait 5s
    set $с4 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Тесла_шестеренка.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 2s
    set $с5 findimage (0 0 960 570  (E:\UOpilot\po_6\img\тесла_перезапуск.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 2s
    set $с6 findimage (0 0 960 570  (E:\UOpilot\po_6\img\тесла_перезапуск_подтвердить.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 4s
    //после перезапуска входим в башню
    set $с7 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Тесла_войти в башню.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 1s
    set $с8 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Тесла_Да_с сохранением прогресса.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 3s
    kleft 683, 249
    wait 1s
    set $с8 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Да_2.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 2s
    set $с8 findimage (0 0 960 570  (E:\UOpilot\po_6\img\тесла_пустая штольня.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 1s
    set $с9 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Занять.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 1s
    set $с8 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Поход.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 1s
    set $с4 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Тесла_шестеренка.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 2s
    set $с8 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Отойти.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 5s
else
    set #с31 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Тесла_войти в башню.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 3s
    set $с8 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Тесла_Да_с сохранением прогресса.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 3s
    kleft 683, 249
    wait 1s
    set $с8 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Да_2.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 2s
    set $с8 findimage (0 0 960 570  (E:\UOpilot\po_6\img\тесла_пустая штольня.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 1s
    set $с9 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Занять.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 1s
    set $с8 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Поход.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 1s
    set $с4 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Тесла_шестеренка.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 2s
    set $с8 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Отойти.bmp) %arr 2)
    kleft %arr [1 1] %arr[1 2]
    wait 5s
    end_if

stop_script


используеться If Else

set #с3 findimage (0 0 960 570 (E:\UOpilot\po_6\img\Тесла_продолжить.bmp) %arr 2)

if #c3 > 85

но эта скатина не всегда работает
вот строчки из лога

Код

9:27:11 0 (Тесла_перезарядка.txt, 18): set #с3 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Тесла_продолжить.bmp) %arr 2)
9:27:11 0 (Тесла_перезарядка.txt, 18): #с3 = 100
9:27:12 0 (Тесла_перезарядка.txt, 20): if #c3 > 85
9:27:13 0 (Тесла_перезарядка.txt, 61):     set #с31 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Тесла_войти в башню.bmp) %arr 2)
9:27:13 0 (Тесла_перезарядка.txt, 61): #с31 = 0
9:27:13 0 (Тесла_перезарядка.txt, 62):     kleft %arr() [1 1] %arr()[1 2]
9:27:13 0 (Тесла_перезарядка.txt, 62): kleft - (62): Ошибка! Проверьте правильность скрипта! EConvertError '' is not a valid integer value
    kleft %arr [1 1] %arr[1 2]
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 14.2.2019, 11:06
Сообщение #2


***********

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



Из другого скрипта старт/стопы делаете? Это весь код?


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


**

Neophyte
Сообщений: 10
Регистрация: 4.2.2019
Группа: Пользователи
Наличность: 0
Пользователь №: 19.220



Цитата(DarkMaster @ 14.2.2019, 11:06) *

Из другого скрипта старт/стопы делаете? Это весь код?


да в других скриптах делаются.
Да это весь текст скрипта
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 14.2.2019, 11:21
Сообщение #4


**********

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



Цитата
set #с31 findimage (0 0 960 570 (E:\UOpilot\po_6\img\Тесла_войти в башню.bmp) %arr 2)
kleft %arr [1 1] %arr[1 2]

Нет проверки что картинка нашлась. В итоге обращение к пустому массиву.
Код
set #с31 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Тесла_войти в башню.bmp) %arr 2)
if #с31 > 0
    kleft %arr [1 1] %arr[1 2]
end_if
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ZaArazkin
сообщение 14.2.2019, 11:38
Сообщение #5


**

Neophyte
Сообщений: 10
Регистрация: 4.2.2019
Группа: Пользователи
Наличность: 0
Пользователь №: 19.220



Цитата(cirus @ 14.2.2019, 11:21) *

Нет проверки что картинка нашлась. В итоге обращение к пустому массиву.
Код
set #с31 findimage (0 0 960 570  (E:\UOpilot\po_6\img\Тесла_войти в башню.bmp) %arr 2)
if #с31 > 0
    kleft %arr [1 1] %arr[1 2]
end_if



Без проверки тоже работает (IMG:style_emoticons/default/smile.gif)

Тогда встречно вопрос:
1. Допустим есть скрипт "Первый"
2. в нем есть цикл If else, на 30 строчке
В котором проверяеться налииче картинки.
Если показатель меньше
как а точнее что прописать чтобы произошел сброс прогресса скрипта и он начался с начала, с 1 строчки?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 14.2.2019, 11:57
Сообщение #6


***********

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



В начало скрипта можно перейти через goto. Я очень ярый противник его использования, но именно в начало скрипта допускаю, при условии, что переход идет не внутри цикла. Так же можно сделать подобную конструкцию:
Код
while 1 == 1
    код
    if
        код
    else
        continue
    end_if
end_while


Сообщение отредактировал DarkMaster - 14.2.2019, 11:57


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


**********

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



Цитата
Без проверки тоже работает

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

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

 

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