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

> приоритет, findimage
cskull
сообщение 27.11.2016, 13:15
Сообщение #1


**

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



Добрый день !
Подскажите пожалуйста , возможно ли картинкам присвоить какой либо приоритет ?
Проблема - существует несколько видов картинок , на один тип надо кликать в первую очередь , на одну ТОЛЬКО в последнюю очередь .
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Ответить в эту темуОткрыть новую тему
Ответов
cirus
сообщение 27.11.2016, 21:22
Сообщение #2


**********

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



Код уберите под спойлер:
Код
[spoiler=название]
текст
[/spoiler]

Если я правильно понял и нигде не накосячил, то получается так.
код
Код
set $path  "C:\Users\Пользователь\Desktop\рисунки для пилота\"      // путь к картинкам
set %image [1] bashya                          // имя изображения
set %image [2] bashnya_c_prava
set %image [3] bashnya_v_nizy
set %image [4] bashnya_v_verxy
set %image [5] bashnya_c_leva
set %image [6] bashnya_niz_pravo
set %image [7] verx_levo_ygol
set %image [8] basnya_verx_pravo

set #size size(%image)                          // всего картинок
hint Всего картинок #size

:metka

set $a 0
while $a = 0             // пока картинка не найдена
    set #flag 0               // флаг что картинки найдены
    for #i 1 #size 1                     // цикл для поиска картинок
        set $a findimage (1147, 32  1363, 249  ($path%image[#i].bmp) %arr 2 90 20 5 )
        if  $a > 0
            set #x %arr [1 1] + 7
            set #y %arr [1 2] + 7
            break
        end_if
        set #flag 1       // картинки не найдены
    end_for


    if  #flag = 1          // если ни одна из картинок не найдена
                           // ищем картинку EXIT2
        set #b findimage (1154, 36 1359, 242 (C:\Users\Пользователь\Desktop\рисунки для пилота\EXIT2.bmp) %arr1 2 90 20 5)
        if  #b > 0                               // если найдена EXIT2
            for #i 1 #size 1                     // снова перебираем картинки
                set $a findimage (1147, 32  1363, 249  ($path%image[#i].bmp) %arr 2 90 20 5 )
                if  $a > 0
                    set #flag 0               // картинка найдена
                    break                      // прервать поиск
                end_if
            end_for

            if  #flag = 1         // если картинки не найдены
                // тут действия которые нужно сделать если картинка EXIT2 найдена, а другие нет
            else                  // иначе
                goto metka        // переход к метке, т.е. к началу скрипта
            end_if
        end_if
    end_if
end_while
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cskull
сообщение 27.11.2016, 22:01
Сообщение #3


**

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



Цитата(cirus @ 27.11.2016, 21:22) *

Код уберите под спойлер:
Код
[spoiler=название]
текст
[/spoiler]

Если я правильно понял и нигде не накосячил, то получается так.
код
Код
set $path  "C:\Users\Пользователь\Desktop\рисунки для пилота\"      // путь к картинкам
set %image [1] bashya                          // имя изображения
set %image [2] bashnya_c_prava
set %image [3] bashnya_v_nizy
set %image [4] bashnya_v_verxy
set %image [5] bashnya_c_leva
set %image [6] bashnya_niz_pravo
set %image [7] verx_levo_ygol
set %image [8] basnya_verx_pravo

set #size size(%image)                          // всего картинок
hint Всего картинок #size

:metka

set $a 0
while $a = 0             // пока картинка не найдена
    set #flag 0               // флаг что картинки найдены
    for #i 1 #size 1                     // цикл для поиска картинок
        set $a findimage (1147, 32  1363, 249  ($path%image[#i].bmp) %arr 2 90 20 5 )
        if  $a > 0
            set #x %arr [1 1] + 7
            set #y %arr [1 2] + 7
            break
        end_if
        set #flag 1       // картинки не найдены
    end_for
    if  #flag = 1          // если ни одна из картинок не найдена
                           // ищем картинку EXIT2
        set #b findimage (1154, 36 1359, 242 (C:\Users\Пользователь\Desktop\рисунки для пилота\EXIT2.bmp) %arr1 2 90 20 5)
        if  #b > 0                               // если найдена EXIT2
            for #i 1 #size 1                     // снова перебираем картинки
                set $a findimage (1147, 32  1363, 249  ($path%image[#i].bmp) %arr 2 90 20 5 )
                if  $a > 0
                    set #flag 0               // картинка найдена
                    break                      // прервать поиск
                end_if
            end_for

            if  #flag = 1         // если картинки не найдены
                // тут действия которые нужно сделать если картинка EXIT2 найдена, а другие нет
            else                  // иначе
                goto metka        // переход к метке, т.е. к началу скрипта
            end_if
        end_if
    end_if
end_while



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

Сообщений в этой теме
cskull   приоритет   27.11.2016, 13:15
cirus   Самое просто изначально записать картинки в нужном...   27.11.2016, 13:42
cskull   спасибо , а я подумала ,что в квадратных скобках п...   27.11.2016, 17:05
cirus   Вообще, оно так и есть. Просто картинки ищутся не...   27.11.2016, 17:19
cskull   Уважаемый cirus , а как тогда присвоить номер 9 ка...   27.11.2016, 19:10
cirus   if $a = 0 goto metka1 wait 1s end_if Если ...   27.11.2016, 19:38
cskull   [code]if $a = 0 goto metka1 wait 1s end_i...   27.11.2016, 20:07
cskull   Чёт я не то навставляла (( Почему то выдаёт ошибку...   27.11.2016, 20:45
cirus   break прерывает цикл поиска картинок. Скрипт прод...   27.11.2016, 22:43
cskull   и так и сяк лепила , ничего не вышло (( картинки 1...   28.11.2016, 19:41
DarkMaster   cskull, если просто сделать поиск этой картинки бе...   28.11.2016, 23:04
cskull   cskull, если просто сделать поиск этой картинки б...   28.11.2016, 23:24
DarkMaster   это все замечательно :) Но если просто сделать пои...   28.11.2016, 23:40
cskull   это все замечательно :) Но если просто сделать по...   29.11.2016, 0:09
DarkMaster   Госаб поможет не ломать голову и глаза в попытках...   29.11.2016, 0:33
cskull   Если будет желание, почитайте http://hosting.vsp...   29.11.2016, 8:29
DarkMaster   set $a 0 while $a = 0 // пока картинка н...   29.11.2016, 0:55
cskull   set $a 0 while $a = 0 // пока картинка ...   29.11.2016, 8:50
cskull   set $a 0 while $a = 0 // пока картинка ...   29.11.2016, 8:50
cirus   if #flag = 1 // если картинки не найдены if ...   29.11.2016, 2:22
cirus   set $path "C:\Users\Пользо...   29.11.2016, 2:41
cskull   [spoiler=как-то так][code]set $path "C...   29.11.2016, 13:26
cirus   И зачем что-то менять в 27 строке, вы убираете ну...   29.11.2016, 14:01
cskull   И зачем что-то менять в 27 строке, вы убираете ну...   29.11.2016, 14:29
cirus   Они же и так есть, зачем их по 2 раза писать. Ош...   29.11.2016, 14:47
cskull   В metka1 пишите что делать, когда нашлась картин...   29.11.2016, 18:37
Cockney   Не важно. Там 2, тут 3, а психика уже покалечена...   29.11.2016, 18:53
cskull   а психика уже покалечена. :D   29.11.2016, 19:38
cskull   Вообще, надо весь код через gosub делать. [url=...   29.11.2016, 20:33
DarkMaster   представьте, что гото просто не существует. И ник...   30.11.2016, 2:29
cirus   set #a findimage set #b findimage if #a > 0 a...   30.11.2016, 2:36
cskull   написала , но не удачно , и от goto не знаю как из...   30.11.2016, 19:31
cirus   set $a findimage (1154, 36 1359, 242 ...   1.12.2016, 2:38
cskull   set $a findimage (1154, 36 1359, 242 ...   2.12.2016, 12:49


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

 

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