J'ai rajouté cela à la place du Until, sachant que $temps est égal en minutes au temps donné par l'utilisateur
$temps = $temps - ($dif / 1000)
Until $temps <= 0
$dif étant égal à la durée d'une boucle en milisecondes, je test.
EDIT : fonctionne pas :/
Nouveau code :
► Afficher le texte
Code : Tout sélectionner
Do
$begin = TimerInit()
Global $pixel1 = pixelsearch(243,34,1109,630, $COLORpixel1[$COLORS], 1, 1) ; Recherche d'une certaines couleur en fonction de la valeur de $COLORS
If Not @error Then
MouseClick("left", $pixel1[0], $pixel1[1], 1, 1)
MouseClick("left", $pixel1[0] + 10, $pixel1[1] + 20,1,1)
Sleep($frequence)
Else
changec()
EndIf
EndIf
$dif = TimerDiff($begin)
$temps = $temps - ($dif / 1000)
Until $temps <= 0
MsgBox(0,"Fin", "Les " & $time & " minutes sont terminées.")
EDIT 2 : Fonctionne, j'ai tout simplement oublié que la valeur de $dif était en milisecondes, je faisais bien /1000 pour avoir des secondes, mais fallait aussi /60 pour avoir des minutes, et si j'avais voulu avoir des heures, rediviser par 60, ou directement par 3600.
Code fonctionnel :
► Afficher le texte
Code : Tout sélectionner
Do
$begin = TimerInit()
Global $pixel1 = pixelsearch(243,34,1109,630, $COLORpixel1[$COLORS], 1, 1) ; Recherche d'une certaines couleur en fonction de la valeur de $COLORS
If Not @error Then
MouseClick("left", $pixel1[0], $pixel1[1], 1, 1)
MouseClick("left", $pixel1[0] + 10, $pixel1[1] + 20,1,1)
Sleep($frequence)
Else
changec()
EndIf
EndIf
$dif = TimerDiff($begin)
$temps = $temps - (($dif / 60) / 1000) ; ou directement $temps = $temps - ($dif / 60000)
Until $temps <= 0
MsgBox(0,"Fin", "Les " & $time & " minutes sont terminées.")