K88

New member
No...il while non va utilizzato così....
A questo punto prova così:

cont=0
Loop
{
GetKeyState, state, WheelLeft, P
if(state = D){
cont++
if(Mod(cont,3)=0){
Send !{Left}
}
}
}


Non ho avuto modo di provarlo ma concettualmente dovrebbe funzionare.
 
Ultima modifica:

vance

New member
fatto grazie mille

WinWait, Slotomania - Slot Machines su Facebook - Mozilla Firefox,
IfWinNotActive, Slotomania - Slot Machines su Facebook - Mozilla Firefox, , WinActivate, Slotomania - Slot Machines su Facebook - Mozilla Firefox,
WinWaitActive, Slotomania - Slot Machines su Facebook - Mozilla Firefox,




PixelGetColor, color, 745, 921
if (color="0x471100")
{
MsgBox colore 1.
MouseClick, left, 600, 917
Sleep, 5000
}
else {
MsgBox colore 2.
MouseClick, left, 791, 929
Sleep, 5000
}

#p::pause


se devo fargli scegliere tra tre opzioni che comando devo usare?
 

ayman93

New member
No...il while non va utilizzato così....
A questo punto prova così:

cont=0
Loop
{
GetKeyState, state, WheelLeft, P
if(state = D){
cont++
if(Mod(cont,3)=0){
Send !{Left}
}
}
}



Non ho avuto modo di provarlo ma concettualmente dovrebbe funzionare.

Provato ma non funziona, se muovo le dita a sinistra non torna indietro.

Se ho capito bene la variabile cont aumenta ogni volta che faccio un wheel left, ma perchè "cont,3=0"? Lo 0 cosa rappresenta?
 

K88

New member
fatto grazie mille

WinWait, Slotomania - Slot Machines su Facebook - Mozilla Firefox,
IfWinNotActive, Slotomania - Slot Machines su Facebook - Mozilla Firefox, , WinActivate, Slotomania - Slot Machines su Facebook - Mozilla Firefox,
WinWaitActive, Slotomania - Slot Machines su Facebook - Mozilla Firefox,




PixelGetColor, color, 745, 921
if (color="0x471100")
{
MsgBox colore 1.
MouseClick, left, 600, 917
Sleep, 5000
}
else {
MsgBox colore 2.
MouseClick, left, 791, 929
Sleep, 5000
}

#p::pause


se devo fargli scegliere tra tre opzioni che comando devo usare?
Devi eseguire un if "annidato", ovvero devi inserire un nuovo if dentro l'else del primo e così via.
 

K88

New member
Provato ma non funziona, se muovo le dita a sinistra non torna indietro.

Se ho capito bene la variabile cont aumenta ogni volta che faccio un wheel left, ma perchè "cont,3=0"? Lo 0 cosa rappresenta?
Prova a stampare a video il valore del cont con una messagebox: lo script dovrebbe eseguire l'azione solo ogni 3 occorrenze dell'evento wheel left.
Il mod(cont,3)=0 serve per vedere se il valore di cont è divisibile per 3.
 

ayman93

New member
count = 0

WheelLeft::
count++

If (count = "6") {
count = 0
Send, !{Left}
}
return

countt = 0

WheelRight::
countt++

If (countt = "6") {
countt = 0
Send, !{Right}
}
return


Questo codice mi funziona, ma ho ancora un ultimo problema.
Praticamente torna indietro di una pagina anche quando faccio 6 volte un piccolo movimento a sinistra separato anche da lunghi intervalli di tempo.


Esempio, muovo le dita un pò a destra per sbaglio ogni tanto, di conseguenza il contatore continua ad incrementarsi, alla sesta volta basta che muovo pochissimo, e il contatore raggiunge i 6 e torna indietro di una pagina.

Comunque funziona in parte.
 
Ultima modifica:

K88

New member
count = 0

WheelLeft::
count++

If (count = "6") {
count = 0
Send, !{Left}
}
return

countt = 0

WheelRight::
countt++

If (countt = "6") {
countt = 0
Send, !{Right}
}
return


Questo codice mi funziona, ma ho ancora un ultimo problema.
Praticamente torna indietro di una pagina anche quando faccio 6 volte un piccolo movimento a sinistra separato anche da lunghi intervalli di tempo.


Esempio, muovo le dita un pò a destra per sbaglio ogni tanto, di conseguenza il contatore continua ad incrementarsi, alla sesta volta basta che muovo pochissimo, e il contatore raggiunge i 6 e torna indietro di una pagina.

Comunque funziona in parte.
Penso che potresti risolvere con una pausa subito dopo l'if:
Pause

In questo modo durante la pausa lo script non intercetta più i comandi, bloccando l'incremento del contatore.
 
Ultima modifica: