vance

New member
mmmmm ma posso inserirlo dopo il primo if in modo che prenda una delle tre opzioni?

loop 10
{
PixelGetColor, color, 745, 921
if (color="0x1D5DAE")
{
MouseClick, left, 600, 917
Sleep, 6000
}
else if (color="0x081351")
{
MouseClick, left, 272, 537
Sleep, 300 ; inizio sceriffo
MouseClick, left, 100, 537
Sleep, 300 ; inizio minatore
MouseClick, left, 564, 537
Sleep, 300 ; inizio ladro
}
}
 

vance

New member
provato ma mi da errore, io devo far si che se c'è quel determinato colore lui scelga una delle tre opzioni, se il colore è un altro vada di if
 

K88

New member
Allora la cosa è diversa: devi semplicemente inserire il random e lo switch/case (o un if annidato per le 3 scelte) all'interno dell'if relativo al colore.
 

vance

New member
fatto
questo il codice (semplificato x la prova)
loop 10000000
{
PixelGetColor, color, 745, 921
if (color="0x1D5DAE")
{
Random, $rand, 1, 3
switch($rand){
case "1": MouseClick, left, 600, 917
Sleep, 6000

case "2": MouseClick, left, 600, 917
Sleep, 6000

case "3": MouseClick, left, 600, 917
Sleep, 6000

default:

}

else
{
sleep, 1000
}
}
#p::pause

e questo l'errore:
error at line 8.
Line Text: case "1": MouseClick, left, 600, 917
Error: this line does not contain a recognized action.
 

K88

New member
prova ad andare a capo dopo i : e ad inserire un break alla fine di ogni blocco case (nel tuo caso dopo ogni sleep). Al limite puoi anche fare un altro if annidato al posto dello switch, è la stessa cosa (per la programmazione procedurale è addirittura più corretto).