1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
| def main():
state = States.OUT_OF_COMBAT
while True:
screenshot = pyautogui.screenshot(region=(0, 0, 1020, 768))
screenshot_gray = cv2.cvtColor(np.array(screenshot), cv2.COLOR_RGB2GRAY)
if state == States.OUT_OF_COMBAT:
monster_name, monster_position = find_monster(screenshot_gray)
if monster_name:
print(f"Monstre {monster_name} trouvé à la position {monster_position}")
pyautogui.rightClick(monster_position[0], monster_position[1])
else:
print("Aucun monstre trouvé")
time.sleep(2)
pyautogui.click(x=830, y=295)
time.sleep(1)
pyautogui.press('space')
elif state == States.WAITING_TURN:
if is_bot_next_turn(screenshot_gray):
if is_combat_over(screenshot_gray):
print("Combat terminé")
break
else:
state = States.FIRST_TURN
elif state == States.FIRST_TURN:
time.sleep(1)
pyautogui.click(893, 330)
time.sleep(1)
pyautogui.press('t')
time.sleep(1)
pyautogui.click(1133, 451)
time.sleep(1)
pyautogui.press('t')
time.sleep(1)
pyautogui.click(1133, 451)
pyautogui.press('space')
elif state == States.WAITING_TURN:
if is_bot_next_turn(screenshot_gray):
if is_combat_over(screenshot_gray):
print("Combat terminé")
break
else:
state = States.SECOND_TURN
elif state == States.SECOND_TURN:
time.sleep(1)
pyautogui.click(930, 385)
time.sleep(1)
pyautogui.press('&')
time.sleep(1)
pyautogui.click(930, 385)
time.sleep(1)
pyautogui.press('&')
time.sleep(1)
pyautogui.click(930, 385)
time.sleep(1)
pyautogui.press('é')
time.sleep(1)
pyautogui.click(930, 385)
time.sleep(1)
pyautogui.press('é')
time.sleep(1)
pyautogui.click(930, 385)
time.sleep(1)
pyautogui.press('"')
time.sleep(1)
pyautogui.click(930, 385)
pyautogui.press('space')
time.sleep(5) |
Partager