1
Использование / Re: Подскажите что не так.
« on: January 29, 2017, 02:54:17 PM »Где только вы ищете непонятно, все описано в справке
Вот не поверишь, именно в справке смотрел, но не по глазам было (
Добавлена тема оформления "Clickermann" для кода с подсветкой синтаксиса. Выбирается из выпадающего списка "Код" (рядом с "цвет", "размер" и "шрифт") в режиме редактирования поста. Либо просто BB-тегом "code=clickermann"
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Где только вы ищете непонятно, все описано в справке
Code: (clickermann) [Select]//=============================================
SUB(pboi)
//Зашли в бой и ждем кнопки боя
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "Проверка крестика.bmp", -1, 100)
LCLICK($_return1, $_return2)
END_IF
WAITMS(500)
$check = 0
WHILE($check = 0)
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "карточки.bmp", -1, 100)
LCLICK($_return1, $_return2)
WAIT(10)
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "Проверка крестика.bmp", -1, 100)
LCLICK($_return1, $_return2)
END_IF
$check = 1
END_IF
WAIT(5)
END_CYC
END_SUB
//=============================================
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "Кнопка боя.bmp", -1, 100)
LCLICK($_return1, $_return2)
MOVE(10,10)
LOGWRITE ("Нашли кнопку боя")
END_IF
WAIT(15)
INC($timer,1)
LOGWRITE ("Цикл №", $timer)
IF(($timer=3)|($timer=6)|($timer=9)|($timer=12)|($timer=15))
pboi()
LOGWRITE ("Проверяем на цикле №", $timer)
END_IF
//ждем кнопки боя
LOGWRITE ("Ждем кнопку боя")
$boi = 0
WHILE($boi = 0)
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "Кнопка боя.bmp", -1, 100)
$boi = 1
ELSE
WAITMS(100) // зачем раз в 10 сек когда 100 мс не будут напрягать процессор
END_IF
END_CYC
IF(($timer=3)|($timer=6)|($timer=9)|($timer=12)|($timer=15))
вот например это нормально?Code: (clickermann) [Select]GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "карточки.bmp", -1, 100)
LCLICK($_return1, $_return2)
WAIT(10)
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "Проверка крестика.bmp", -1, 100) // ищем крестик по снимку сделанному до карточки.bmp
LCLICK($_return1, $_return2)
END_IF
$check = 1
END_IF
Попробуй ограничить область поиска, тоесть искать не по всему экрану. Тогда крестик основного окна будет вне области, да и работать будет быстрее.
А по коду тебе лучше Гуру подскажут, но они точно не будут в восторге что ты из цикла по GoTo выскакиваешь
У цикла FOR нет параметра начального значения, он выполнится 15 раз и перестанет.
снимок надо делать непосредственно перед анализом.
Из циклов выпрыгивать нельзя. Для чего у тебя там переменная $check?
$timer=$timer+1
LOGWRITE ("Цикл №", $timer)
//=============================================
SUB(pboi)
//Зашли в бой и ждем кнопки боя
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "Проверка крестика.bmp", -1, 100)
LCLICK($_return1, $_return2)
END_IF
WAITMS(500)
$check = 0
WHILE($check = 0)
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "карточки.bmp", -1, 100)
LCLICK($_return1, $_return2)
WAIT(10)
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "Проверка крестика.bmp", -1, 100)
LCLICK($_return1, $_return2)
END_IF
$check = 1
END_IF
WAIT(5)
END_CYC
END_SUB
//=============================================
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "Кнопка боя.bmp", -1, 100)
LCLICK($_return1, $_return2)
MOVE(10,10)
LOGWRITE ("Нашли кнопку боя")
END_IF
WAIT(15)
IF($timer=3)
pboi()
LOGWRITE ("Проверяем на цикле №", $timer)
END_IF
IF($timer=6)
pboi()
LOGWRITE ("Проверяем на цикле №", $timer)
END_IF
IF($timer=9)
pboi()
LOGWRITE ("Проверяем на цикле №", $timer)
END_IF
IF($timer=12)
pboi()
LOGWRITE ("Проверяем на цикле №", $timer)
END_IF
IF($timer=15)
pboi()
LOGWRITE ("Проверяем на цикле №", $timer)
END_IF
//ждем кнопки боя
$boi = 0
WHILE($boi = 0)
LOGWRITE ("Ждем кнопку боя")
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "Кнопка боя.bmp", -1, 100)
$boi = 1
ELSE
WAIT(10)
END_IF
END_CYC
FOR($a, $a < 19)
star:
GETSCREEN
WAIT(3)
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "кнопка боя.bmp", -1, 100)
LCLICK($_return1, $_return2)
WAIT(15)
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "проверка крестика.bmp", -1, 100)
LCLICK($_return1, $_return2)
END_IF
END_IF
//Зашли в бой и ждем кнопки боя
$check = 0
WHILE($check = 0)
WAIT(3)
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "карточки.bmp", -1, 100)
LCLICK($_return1, $_return2)
END_IF
WAIT(5)
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "проверка крестика.bmp", -1, 100)
LCLICK($_return1, $_return2)
END_IF
WAIT(5)
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "кнопка боя.bmp", -1, 100)
WAIT(10)
GOTO(star)
ELSE
WAITMS(30)
END_IF
END_CYC
END_CYC