Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: rasnvas on March 07, 2017, 08:25:13 PM
-
Привет всем скажите как исправить почему та не выполняется 10 раз
WAIT(1)
start:
FOR($a=0,$a<10)//надо чтобы работал по меткам B1: , B2: ,B4: 10 раз
B1:
B2:
B4:
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "w.bmp")//(1)
//==============================
LDOWN(1192,96)//ВЫДЕЛЯЕМ ТЕКСТ '
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL) // Ctrl+C копируем
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
//==============================
FOR($a=0, $a<3)
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
GOTO(B1)
END_IF//...
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "l.bmp") //(1)
FOR($a=0, $a<3
KEYPRESS(#BACKSPACE)
SOUND("EServer_Err.wav")
WAITMS (10)
END_CYC
END_IF //==========================================
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "w.bmp")//(2)
//==============================
LDOWN(1192,96)//ВЫДЕЛЯЕМ ТЕКСТ
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL) // Ctrl+C копируем
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
//==============================
FOR($a=0, $a<3
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
GOTO(B2)
END_IF//...
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "w.bmp")//(3)
//==============================
LDOWN(1192,96)//ВЫДЕЛЯЕМ ТЕКСТ
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL) // Ctrl+C копируем
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
//==============================
FOR($a=0, $a<3
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
GOTO(B4)
END_IF//...
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "l.bmp")//(3)
FOR($a=0, $a<3
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
END_IF
END_CYC //=========================================
GOTO(start)
-
А можно пошагово изложить свои хотелки. Что сначала 10 раз, что потом. Или может просто всё повторить 10 раз? Весь ли это текст, или часть чего-то огромного? :'(
А то от того что я вижу глаза кровоточат. :'( :'( :'(
Зря ты нашел функцию GOTO().
-
Там у вас переменные по талонам? Или просто дифицит.
А то одна переменная $a и во внешнем цикле и во внутренних.
-
1) Скобок не хватает.
2) Зачем разные имена меток, если все они находятся в одном месте...
3) Условия с картинкой "w.bmp" абсолютно одинаковы и не понятно что они делают. Выделить>Скопировать>Стереть(3 раза). И так десять раз? Тогда не хватает функции СОХРАНИТЬ_И_УДАЛИТЬ($всё).
-
Зачем там один и тот же код несколько раз?
Думаю вот так
WAIT(1)
$count = 0
WHILE($count < 10) // цикл на 10 повторов
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "w.bmp")
//==============================
LDOWN(1192,96)//ВЫДЕЛЯЕМ ТЕКСТ '
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
WAITMS(50)
KEYDOWN (#CTRL) // Ctrl+C копируем
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
WAITMS(50)
//==============================
FOR($b=0,$b<3)
KEYPRESS(#BACKSPACE)
WAITMS(10)
END_CYC
INC($count,1) // наращиваем счетчик цикла если картинка "w.bmp" найдена
ELSE
IF_PICTURE_IN (570,482, 851,508, "l.bmp")
FOR($b=0, $b<3)
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav") // команда не тормозит скрипт, поэтому после требуется задержка равная длительности звука.
WAIT(1)
ELSE
WAITMS(100)
END_IF
END_IF
END_CYC
HALT
-
Привет всем попробую объяснить хотя для меня это трудно мне надо что бы по двум картинкам "l.bmp"и "w.bmp" выполняла определенные действия пример: нашли картинку "l.bmp" но при этом получили число оно может любое ,но нам надо пока не найдем картинку "w.bmp" при найденной картинке "w.bmp" нам надо откатиться на определенную строку но при этом выполнялся сценарий 32 раза вот Я и нашел функцию GOTO() но с этой функцию не выполняет сценарий 32 раза как сделать по другому не могу понять вот как то так .
FOR($c=0,$c<32)
skip:
IF_PICTURE_IN (570,482, 851,508, "w.bmp")
//==============================
GOTO(skip)
IF_PICTURE_IN (570,482, 851,508, "l.bmp")
//==============================
skip1:
IF_PICTURE_IN (570,482, 851,508, "w.bmp")
//==============================
GOTO(skip1)
IF_PICTURE_IN (570,482, 851,508, "l.bmp")
//==============================
skip2:
IF_PICTURE_IN (570,482, 851,508, "w.bmp")
//==============================
GOTO(skip2)
IF_PICTURE_IN (570,482, 851,508, "l.bmp")
//==============================
skip3:
IF_PICTURE_IN (570,482, 851,508, "w.bmp")
//==============================
GOTO(skip3)
IF_PICTURE_IN (570,482, 851,508, "l.bmp")
END_CYC
-
Тебе не через гото надо прыгать а писать нормальные циклы. Пока что описанный тобой алгоритм довольно размыт.
-
Вот подробно надо как то исправить может как то надо упростить
final1: //начинаем
LCLICK(89,20)
WAITMS(500)
BEEP(800,200)
WAITMS(50)
SOUND("ESystemNotification.wav")
WAIT(4)
GETSCREEN
IF_PICTURE_IN (0,0, 1439,255, "gotova.bmp")
KEYPRESS(#F5)
WAIT(20)
SOUND("EWindows Change Theme.wav")
WAIT(4)
END_IF
start:
FOR($c=0,$c<32)//3,6,12,24,48,96,192,384,766;-1535
B1:
B2:
B4:
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "win.bmp")//(3)
LDOWN(1192,96)
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
WAITMS(50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,2))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*0.03
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
WAITMS (100)
HINTPOPUP (INT($count,0),"win1")
SOUND("ESpbTimeBioTick3.wav")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
GOTO(B1)
END_IF//...
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "lose.bmp")//(3)
KEYPRESS(#D)
WAITMS(50)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a< (rnd(0,2))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*0.06
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
WAITMS (100)
HINTPOPUP (INT($count,0),"lose1")
SOUND("ESpbTimeBioTick3.wav")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_IF
B8:
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "win.bmp")//(6)
LDOWN(1192,96)
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
WAITMS(50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,3))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*0.03
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
WAITMS (100)
HINTPOPUP (INT($count,0),"win2")
SOUND("ESpbTimeBioTick3.wav")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
GOTO(B2)
END_IF//...
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "lose.bmp") //(6)
KEYPRESS(#D)
WAITMS(50)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a< (rnd(0,2))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*0.12
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
WAITMS (100)
HINTPOPUP (INT($count,0),"lose2")
SOUND("ESpbTimeBioTick3.wav")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_IF
B16:
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "win.bmp")//(12)
LDOWN(1192,96)
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
WAITMS(50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,4))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*0.03
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
WAITMS (100)
HINTPOPUP (INT($count,0),"win3")
SOUND("ESpbTimeBioTick3.wav")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
GOTO(B4)
END_IF//...
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "lose.bmp")//(12)
KEYPRESS(#D)
WAITMS(50)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,3))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*0.24
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
WAITMS (100)
HINTPOPUP (INT($count,0),"lose3")
SOUND("ESpbTimeBioTick3.wav")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_IF
B32:
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "win.bmp")//(24)
LDOWN(1192,96)
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
WAITMS (50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,5))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*0.06
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
WAITMS (100)
HINTPOPUP (INT($count,0),"win4")
SOUND("ESpbTimeBioTick3.wav")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
GOTO(B8)
END_IF//...
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "lose.bmp")//(24)
WAITMS(50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,3))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*0.48
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
WAITMS (100)
HINTPOPUP (INT($count,0),"lose4")
SOUND("ESpbTimeBioTick3.wav")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_IF
B64:
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "win.bmp")//(48)
LDOWN(1192,96)
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
WAITMS (50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,5))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*0.12
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
SOUND("EServer_Err.wav")
WAITMS (100)
HINTPOPUP (INT($count,0),"win5")
SOUND("ESpbTimeBioTick3.wav")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
GOTO(B16)
END_IF//...
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "lose.bmp")//(48)
WAITMS(50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,4))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*0.96
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
SOUND("ESpbTimeBioTick3.wav")
WAITMS (100)
HINTPOPUP (INT($count,0),"lose5")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_IF
B128:
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "win.bmp")//(96)
LDOWN(1192,96)
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL) // Ctrl+C eiie?oai
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
WAITMS (50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,6))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*0.24
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
SOUND("ESpbTimeBioTick3.wav")
WAITMS (100)
HINTPOPUP (INT($count,0),"win6")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
GOTO(B32)
END_IF//...
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "lose.bmp")//(96)
WAITMS(50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,4))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
//Ctrl+V ec aooa?a iaiaia anoaaeou
$count = (INT(FROMCLIP(),0)/100)*1.92
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
SOUND("ESpbTimeBioTick3.wav")
WAITMS (100)
HINTPOPUP (INT($count,0),"lose6")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_IF
B256:
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "win.bmp")//(192)
LDOWN(1192,96)
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
WAITMS (50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,7))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*0.48
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
SOUND("ESpbTimeBioTick3.wav")
WAITMS (100)
HINTPOPUP (INT($count,0),"win7")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
GOTO(B64)
END_IF//...
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "lose.bmp")//(192)
WAITMS(50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,4))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*3.84
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
SOUND("ESpbTimeBioTick3.wav")
WAITMS (100)
HINTPOPUP (INT($count,0),"lose7")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_IF
//B512
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "win.bmp")//(384)
LDOWN(1192,96)
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
WAITMS (50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,6))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*0.96
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
SOUND("ESpbTimeBioTick3.wav")
WAITMS (100)
HINTPOPUP (INT($count,0),"win8")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
GOTO(B128)
END_IF//...
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "lose.bmp")//(384)
WAITMS(50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,4))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*7.66
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
SOUND("ESpbTimeBioTick3.wav")
WAITMS (100)
HINTPOPUP (INT($count,0),"lose8")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_IF
//B1024
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "win.bmp")//(766)
LDOWN(1192,96)
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
WAITMS (50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a<(rnd(0,8))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = (INT(FROMCLIP(),0)/100)*1.92
LOGWRITE (INT($count,0)
FOR($b=0, $b < strlen(INT($count,0)))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING (INT($count,0))
SOUND("ESpbTimeBioTick3.wav")
WAITMS (100)
HINTPOPUP (INT($count,0),"win9")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
GOTO(B256)
END_IF//...
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "lose.bmp")//(766)-1537
SOUND("EmptyRecycleBin.wav")
WAIT(4)
GOTO(final1)
END_IF
GETSCREEN
IF_PICTURE_IN (583,312, 707,360, "loss.bmp")
SOUND("EWindowsLogoff.wav")
WAIT(4)
GOTO(final1)//обновить страницу
END_IF
END_CYC
GOTO(start)
-
Надо как то исправить это точно, потому что ошибок там моря!
Например у функции INT нет парамертов, а ты везде пишешь ,0
$count = (INT(FROMCLIP(),0)/100)*0.03
Верно так
$count = (INT(FROMCLIP())/100)*0.03
Далее этот не верно написанный INT начинает преследовать $count везде, зачем???
Если хочешь отсечь запятую пиши так
$count = INT((INT(FROMCLIP())/100)*0.03)
и далее используй просто переменную $count
Здесь лишняя скобка
FOR($a=0,$a< (rnd(0,2))
Правильно так
FOR($a=0,$a<rnd(0,2))
однако правильнее вот так. Дело в том что рандом будет снова рассчитывать число при каждом новом цикле. В другом месте у тебя 0,5 так вот чтобы цикл выполнился 5 раз рандому нужно будет выдасть пятерку 5 раз! Это мало вероятно.
$R = rnd(0,2)
FOR($a=0,$a<$R)
Есть метка final: но нет GOTO(final)
Зато есть GOTO(final1) но нет метки final1
Также GOTO(start)
Если ты хочешь выполнение скрипта по кругу то никакие GOTO(start) тебе не нужны, он и так выполняется по кругу. А выпрыгивать из цикла GOTO(final) в начало скрипта вообще нельзя, это приведет к ошибке.
-
Вот что вышло.
Здесь код будет прокручен именно 32 раза. После чего скрипт останавливается.
// вносим в массивы твои значения. Индекс начинается с 0 а кончается 8 тоесть в массиве будет храниться 9 чисел
STRSEPARATE("2:3:4:5:5:6:7:6:8", ":", $A_R)
STRSEPARATE("2:2:3:3:4:4:4:4:0", ":", $A_R2)
STRSEPARATE("0.03:0.03:0.03:0.06:0.12:0.24:0.48:0.96:1.92", ":", $A_N1)
STRSEPARATE("0.06:0.12:0.24:0.48:0.96:1.92:3.84:7.66:0", ":", $A_N2)
// Индексом массива будет управлять переменная $num
$num = 0
FOR($c=0,$c<32) // 3,6,12,24,48,96,192,384,766;-1535
IF(($num < 0)|($num > 8)) // здесь мы сбрасываем индекс если он ушел вне пределов от 0 до 8
$num = 0
END_IF
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "win.bmp")
LDOWN(1192,96)
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
WAITMS(50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
$R = RND(0,$A_R[$num])
FOR($a=0,$a<$R)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = INT((INT(FROMCLIP())/100)*$A_N1[$num])
LOGWRITE ($count)
FOR($b=0, $b < strlen($count))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING ($count)
WAITMS (100)
HINTPOPUP ($count,STRCONCAT("win ",$num+1))
SOUND("ESpbTimeBioTick3.wav")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
SWITCH($num) // здесь в зависимости от значения $num
CASE(0)
$num = 0
CASE(1)
$num = 0
CASE(2)
$num = 0
CASE(3)
$num = 1
CASE(4)
$num = 2 // откатываем индекс массива назад
CASE(5)
$num = 3
CASE(6)
$num = 4
CASE(7)
$num = 5
CASE(8)
$num = 6
DEFAULT
$num = 0
END_SWITCH
ELSE
IF($num ! 8) // Если индекс не равер 8
IF_PICTURE_IN (570,482, 851,508, "lose.bmp")
KEYPRESS(#D)
WAITMS(50)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a < (rnd(0,$A_R2[$num]))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = INT((INT(FROMCLIP())/100)*$A_N2[$num])
LOGWRITE ($count)
FOR($b=0, $b < strlen($count))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING ($count)
WAITMS (100)
HINTPOPUP ($count,STRCONCAT("lose ",$num+1))
SOUND("ESpbTimeBioTick3.wav")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_IF
ELSE // если равен то выполняем этот код
IF_PICTURE_IN (570,482, 851,508, "lose.bmp") //(766)-1537
SOUND("EmptyRecycleBin.wav")
WAIT(4)
LOGWRITE ("Сброс")
$num = 0 // хочешь начать цикл заново? Тогда сбрасываем все счетчики
$c=0
END_IF
GETSCREEN
IF_PICTURE_IN (583,312, 707,360, "loss.bmp")
SOUND("EWindowsLogoff.wav")
WAIT(4)
LOGWRITE ("Сброс")
$num = 0
$c=0
END_IF
END_IF
INC($num,1) // увеличиваем индекс массива +1
END_IF
END_CYC
HALT
-
Благодарю, огромное СПАСИБО тебе Oraven проблема решена Я думал не когда не решу задачку спасибо.
-
Привет у меня такой вопрос вернее Я запутался в END_IF скажите пожалуйста Я правильно расставил номера END_IF// если нет то подскажите как правильно.
// вносим в массивы твои значения. Индекс начинается с 0 а кончается 8 тоесть в массиве будет храниться 9 чисел
STRSEPARATE("2:3:4:5:5:6:7:6:8", ":", $A_R)
STRSEPARATE("2:2:3:3:4:4:4:4:0", ":", $A_R2)
STRSEPARATE("0.03:0.03:0.03:0.06:0.12:0.24:0.48:0.96:1.92", ":", $A_N1)
STRSEPARATE("0.06:0.12:0.24:0.48:0.96:1.92:3.84:7.66:0", ":", $A_N2)
// Индексом массива будет управлять переменная $num
$num = 0
FOR($c=0,$c<32) // 3,6,12,24,48,96,192,384,766;-1535
IF(($num < 0)|($num > 8)) // 1
$num = 0
END_IF//1
GETSCREEN
IF_PICTURE_IN (570,482, 851,508, "win.bmp")//2
LDOWN(1192,96)
MOVE(1266,103)
WAITMS(500)
LUP(1261,122)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(464,491)
WAITMS(50)
KEYPRESS(#D)
SOUND("ENavigating.wav")
WAIT(2)
$R = RND(0,$A_R[$num])
FOR($a=0,$a<$R)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = INT((INT(FROMCLIP())/100)*$A_N1[$num])
LOGWRITE ($count)
FOR($b=0, $b < strlen($count))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING ($count)
WAITMS (100)
HINTPOPUP ($count,STRCONCAT("win ",$num+1))
SOUND("ESpbTimeBioTick3.wav")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
SWITCH($num) // здесь в зависимости от значения $num
CASE(0)
$num = 0
CASE(1)
$num = 0
CASE(2)
$num = 0
CASE(3)
$num = 1
CASE(4)
$num = 2 // откатываем индекс массива назад
CASE(5)
$num = 3
CASE(6)
$num = 4
CASE(7)
$num = 5
CASE(8)
$num = 6
DEFAULT
$num = 0
END_SWITCH
ELSE
IF($num ! 8) //3
IF_PICTURE_IN (570,482, 851,508, "lose.bmp")//4
KEYPRESS(#D)
WAITMS(50)
SOUND("ENavigating.wav")
WAIT(2)
FOR($a=0,$a < (rnd(0,$A_R2[$num]))
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_CYC
$count = INT((INT(FROMCLIP())/100)*$A_N2[$num])
LOGWRITE ($count)
FOR($b=0, $b < strlen($count))
KEYPRESS(#BACKSPACE)
WAITMS (10)
END_CYC
SOUND("EServer_Err.wav")
WAITMS (10)
KEYSTRING ($count)
WAITMS (100)
HINTPOPUP ($count,STRCONCAT("lose ",$num+1))
SOUND("ESpbTimeBioTick3.wav")
WAITMS(50)
KEYPRESS(#L)
WAITMS(RND(1400,1500))
END_IF//2
ELSE // если равен то выполняем этот код
IF_PICTURE_IN (570,482, 851,508, "lose.bmp") //5
SOUND("EmptyRecycleBin.wav")
WAIT(4)
LOGWRITE ("Сброс")
$num = 0 // хочешь начать цикл заново? Тогда сбрасываем все счетчики
$c=0
END_IF//5
GETSCREEN
IF_PICTURE_IN (583,312, 707,360, "loss.bmp")//6
SOUND("EWindowsLogoff.wav")
WAIT(4)
LOGWRITE ("Сброс")
$num = 0
$c=0
END_IF//6
END_IF//3
INC($num,1) // увеличиваем индекс массива +1
END_IF//4
END_CYC
HALT
-
Ошибок нет. Но номера ты расставил не верно.
Ну неужели не видно что к чему. "Расставить отступы" в редакторе все наглядно показывает. Каждое условие выдвигается как пирамидка.
-
если я правильно понял вопрос
113 END_IF //закрывает IF 4
...
134 END_IF //закрывает IF 2
и ещё лишняя скобка
91 FOR($a=0,$a < (rnd(0,$A_R2[$num]))
хы, так это скрипт Oraven-а. а я сразу не сообразил, думаю как красиво-то всё для новичка