Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: Iblue2d2bida on May 31, 2014, 05:09:05 AM
-
sub(g)
while($mymper5 = 0)
keydown(57)
waitms(100)
keyup(57)
print("2")
waitms(200)
end_cyc
end_sub
sub(mp)
chick()
print("!")
if($mymper5 = 1)
print("@")
g()
end_if
end_sub
mp()
halt
так в не принтует "2",т.е. не заходит в while?
sub(g)
for($q3,$q3 < 3)
KEYDOWN(57)
print("2")
Waitms(1500)
KEYUP(57)
end_CYC
end_sub
sub(mp)
chick()
print("!")
if($mymper5 = 1)
print("@")
g()
end_if
end_sub
mp()
halt
и так не работает.
sub(g)
if($mymper5 = 0)
else
keydown(57)
waitms(100)
keyup(57)
print("2")
waitms(200)
end_if
end_sub
sub(mp)
chick()
print("!")
if($mymper5 = 1)
print("@")
g()
end_if
end_sub
mp()
halt
так все в порядке. v4.10,win 8.1.у всех так?или где-то ошибся?
-
Обьяви переменную передд вызовом саба и внутри саба выведи в лог значение переменной
И понятно будет
-
g() вызывается при $mymper5 = 1
А while внутри выполняется только при $mymper5 = 0
А что ты ожидал?
-
под состоянием аффекта писал.
$dol = pxl(111,111)
$pd = 1111111
$dolper = 0
SUB(c)
GETSCREEN
waitms(100)
IF($dol = $pd) // заменил на IF_PIXEL_IN(111,111,111,111, $pd)
$dolper = 1
ELSE //ecли нет
$dolper = 0
end_if
END_SUB
start:
cHICK()
while($dolper = 0)
waitms(100)
keypress(#1)
waitms(200)
c()
end_cyc
halt
goto(start)
Всем спасибо,решил сам.IF не корректно работал, и даже при самостоятельной проверки на наличия пикселя нужного цвета,IF отказывался менять переменную.
Изменил на IF_PXEL_IN и все работает на ура.
-
pxl(111,111) до GETSCREEN вызывает а потом в цикле два числа в двух переменных ($dol = $pd) пытается "гетскренить" ;D
Зачем все так усложнять этими подпрограммами ?!
$pd = 1111111
$dolper = 0
while($dolper = 0)
keypress(#1)
waitms(200)
GETSCREEN
IF(pxl(111,111) = $pd)
$dolper = 1
ELSE
$dolper = 0
end_if
end_cyc
halt
-
Да уж... А потом "IF не корректно работал".
Ну вот зачем сразу валить на программу. Прочитает посетитель такие посты и подумает, что простые условия невозможно заставить корректно работать. В программе есть баги, но не нужно вешать всех собак. В первую очередь пересмотреть скрипт.
-
уважаемые.раз использовал sub,значит задумывалось сократить скрипт и сделать более читабельным.однако,уже понял,что лучше использовать то,что проверенно.
-
Да используй, кто же спорит. Только ты не правильно делаешь. Проверенность здесь не при чём.
pxl это функция, она получает цвет пиксела во время своего вызова. В том месте, где написана. У тебя это первая строка
$dol = pxl(111,111)
Вот перед ней как минимум должен быть GETSCREEN.
Это одно.
В этой же 1 строке $dol получила значение цвета и всё..., больше ты её нигде не меняешь.
А ждать и проверять IF-ом хоть в сабе, хоть без саба бесполезно.
Ну вот оно же в SUB-е
$pd = 1111111
$dolper = 0
SUB(c)
GETSCREEN
waitms(100)
IF(pxl(111,111) = $pd)
$dolper = 1
ELSE //ecли нет
$dolper = 0
end_if
END_SUB
-
еще раз ,пожалуйста,для особо отрешенных. По моей задумке в переменной ($dol) просто задается фиксированный координат,который потом будет вызывать в условии while или if для последующего сравнения с заданным цветом в другой переменной($pd).
-
еще раз ,пожалуйста,для особо отрешенных. По моей задумке в переменной ($dol) просто задается фиксированный координат,который потом будет вызывать в условии while или if для последующего сравнения с заданным цветом в другой переменной($pd).
я понимаю почему у вас не получается написать скрипт рабочий, ваши мысли стольже сумбурны как и логика скрипта.
перефразируйте нифига не понятно
-
еще раз ,пожалуйста,для особо отрешенных. По моей задумке в переменной ($dol) просто задается фиксированный координат,который потом будет вызывать в условии while или if для последующего сравнения с заданным цветом в другой переменной($pd).
Все понятно. функцию в переменную нельзя запихнуть, нужно использовать две переменные чтобы подставлять координаты в функцию.
$dol1 = 111
$dol2 = 111
$pd = 1111111
$dolper = 0
SUB(c)
GETSCREEN
IF(pxl($dol1,$dol2) = $pd)
$dolper = 1
ELSE //ecли нет
$dolper = 0
end_if
waitms(100)
END_SUB
start:
cHICK()
while($dolper = 0)
waitms(100)
keypress(#1)
waitms(200)
c()
end_cyc
halt
goto(start)
-
еще раз ,пожалуйста,для особо отрешенных. По моей задумке в переменной ($dol) просто задается фиксированный координат,который потом будет вызывать в условии while или if для последующего сравнения с заданным цветом в другой переменной($pd).
Все понятно. функцию в переменную нельзя запихнуть, нужно использовать две переменные чтобы подставлять координаты в функцию.
$dol1 = 111
$dol2 = 111
$pd = 1111111
$dolper = 0
SUB(c)
GETSCREEN
IF(pxl($dol1,$dol2) = $pd)
$dolper = 1
ELSE //ecли нет
$dolper = 0
end_if
waitms(100)
END_SUB
start:
cHICK()
while($dolper = 0)
waitms(100)
keypress(#1)
waitms(200)
c()
end_cyc
halt
goto(start)
спасибо,этим я пользовался.переоценил возможности кликермана.Вопрос не в кассу: где можно посмотреть полный набор символов,которые понимает кликерман? "умножить","плюс" - это понятно интуитивно,но хотелось бы увидеть рамки применения и примеры, в частности интересны "не равно" и "или".
-
Операции сравнения
(a > b) = 1, если a > b (вслучае если a и b строки, сравниваются их длины)
(a < b) = 1, если a < b (вслучае если a и b строки, сравниваются их длины)
(a = b) = 1, если a равно b (поддерживает строки)
(a ! b) = 1, если a неравно b (поддерживает строки)
Логические операторы
На самом деле, битовые операции (см. учебную статью на форуме). Однако в контексте данного параграфа просто позволяют объединять логические выражения и операции сравнения в комплексные условия
Логическое И: (a & b) = 1 если и a = 1 и b = 1
Логическое ИЛИ: (a | b) = 1 если a = 1 или b = 1, или оба
Логическое исключающее ИЛИ: (a ^ b) = 1 если только a = 1 или только b = 1, но не оба
-
еще раз ,пожалуйста,для особо отрешенных. По моей задумке в переменной ($dol) просто задается фиксированный координат,который потом будет вызывать в условии while или if для последующего сравнения с заданным цветом в другой переменной($pd).
"Задумка" у тебя отрешённая как и реализация.
-
так я думаю ету тему стоит поднять в верх ! ! ! есть тут полезное обьяснение
-
так я думаю ету тему стоит поднять в верх ! ! ! есть тут полезное обьяснение
Объяснение чего? Что тут вообще полезного? Тема доисторическая, и ни о чем. Если у тебя конкретно что-то не получается, так и пиши что именно.
-
так я думаю ету тему стоит поднять в верх ! ! ! есть тут полезное обьяснение
/
7 лет тут ничего полезного не находили и вот опять! ;D
-
я в теме увидел пример представленый умными людьм пощитал нужним поднять тему) а не плодить похожие