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

> For
Capucci
сообщение 20.3.2019, 2:57
Сообщение #1


**

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



Приветствую!

Есть ли возможность сделать команду for короче по времени обработки, чтобы цикл был одинарный, а не несколько, как по умолчанию?

Пример с командой FindImage:

Код
 
for #i 1 #size 1                     // цикл для поиска картинок
    set #a findimage (#startX #startY #endX #endY ($path%image[#i].bmp) %arr 2)
    if  #a > 0
        move %arr[1 1] %arr[1 2]     // переместить курсор на найденную картинку
        wait 500                     // ждать 0,5 секунды
    end_if
end_for


Просто выходит, что данная команда обрабатывает одно и то же несколько раз и тратится дополнительное время на второй и третий анализ, хотя достаточно одного.
Единственное в чем может я неправ, так это в том, что за эти циклы команда обрабатывает все картинки, которые стоят в поиске и просто не сделать один цикл, так как не будет возможности у команды охватить все картинки. Всего картинок в моем случае - 25.
Но, если эта теория неверна, то упростить for до одного цикла было бы очень и очень здорово.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Ответить в эту темуОткрыть новую тему
Ответов
sutra
сообщение 20.3.2019, 15:39
Сообщение #2


*******

Adept
Сообщений: 923
Регистрация: 10.8.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.007



Цитата
wait 500 // ждать 0,5 секунды
Вместо этого просто поставить break . Вы ищете все картинки (сказали уже как прерывать поиск), хотите скорости и сами же ещё и тормозите поиск 25*0,5 - это 12,5 секунд абсолютно бессмысленного убивания времени поиска. Если нужна пауза - делайте её уже после цикла.


Ну и как уже сказали, если нужна скорость, при поиске перебором однозначно нужно использовать поиск в памяти используя getimage. Если и этой скорости будет мало - переходите на lua.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения



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

 

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