Local $cbt=0
Local $nombreAttaques=0
Local $possible=1
Local $nombreCombats=0
Func combat($couleurmob) ; fct combat principale
If $cbt=0 Then
debutcombat() ; on lance la fct de début de combat
EndIf
detecterTour() ; savoir si c'est son tour
trouveMonstre($couleurMob) ; on va chercher le mob ---> fct complémentaire
EndFunc
Func debutcombat() ; fct de debut de cbt
pret() ; appuie sur le bouton pret
Sleep(5000)
$cbt=1
EndFunc
Func trouveMonstre($couleurMob) ; fonction complémentaire pour trouver le mob à attaquer
Local $trouve=0
While $trouve=0 ; tq pas de mob trouvé
$trouve=rechercheMonstre($couleurmob) ; on cherche le mob
If $trouve=0 Then ; si non trouvé
$nombreAttaques=0
passerTour()
Sleep(1000)
supprimerAiresExclues()
$possible=1
combat($couleurmob)
Else
possibiliteAttaque($couleurMob)
EndIf
WEnd
EndFunc
Func possibiliteAttaque($couleurMob)
If $possible=1 Then
cliquerSort()
EndIf
Sleep(500)
pointerMonstre($mob_a)
Sleep(1000)
$possible=attaquePossible($mob_a); on cherche à savoir si on peut l'attaquer
If $possible=0 Then ; si impossible
exclureAire($mob_a)
trouveMonstre($couleurMob)
Else
supprimerAiresExclues()
$possible=1
attaquerMonstre($couleurMob)
EndIf
EndFunc
Func attaquerMonstre($couleurMob)
If $nombreAttaques=0 Then
lancerSort($mob_a)
Sleep(3000)
$nombreAttaques+=1
$test=rechercheMonstre($couleurmob)
If $test=0 Then
Sleep(2000)
finCombat($couleurmob)
EndIf
trouveMonstre($couleurMob)
Else
lancerSort($mob_a)
Sleep(500)
$nombreAttaques=0
passerTour()
barreTourAbsente() ; on attend que la barre de tour disparaisse
Sleep(3000)
finCombat($couleurmob)
combat($couleurmob)
EndIf
EndFunc
Func finCombat($couleurmob)
If PixelGetColor(735,627)=0xFF6100 Then ; si le bouton pour fermer la fenêtre de combat est présent
Sleep(500)
MouseClick("left",735,627,1,0) ; alors on clique dessus
Sleep(500) ; on attends un peu qu'elle se ferme
$nombreCombats+=1 ; on incrémente la variable du nombre de combats de 1 pour compter les combats
If PixelGetColor(873,766)=0x322D25 Then ; si le perso est à la moitié de sa vie (environ)
MouseClick("left",325,740,1,0) ; alors on ouvre la fenêtre des émotes
Sleep(2000) ; on attend un peu qu'elle s'ouvre
MouseClick("left",330,660,1,0) ; on clique sur l'émote s'asseoir pour se reposer
Sleep(3000) ; on attend que le personnage soit assis
MouseClick("left",325,740,1,0) ; on ferme la fenêtre des émotes
Do
Sleep(10) ; on attend
Until PixelGetColor(867,749)=0xFF0000 ; jusqu'à ce qu'il ait repris assez de vie
EndIf
$cbt=0 ; ------> A TESTER !!!!!!!!!!!!!!!!
testInventaire()
main() ; et on relance la boucle de recherche de nouveau combat
EndIf
EndFunc
Func quitter() ; fonction qui peut être déclencher exclusivement par l'utilisateur
MsgBox(0,"Nombre de combats",$nombreCombats) ; affiche une boîte de dialogue affichant le nombre de combat effectué
Exit ; stop le script définitivement
EndFunc