Untitled

 avatar
unknown
python
a year ago
1.4 kB
4
Indexable
import keyboard
from ultralytics import YOLO
import numpy as np
import pyautogui
import cv2

model = YOLO(r"C:\Users\theow\Downloads\best (11).pt")

FovX = 256
FovY = 256

while True:
    screenshot = pyautogui.screenshot()
    screenshot = cv2.cvtColor(np.array(screenshot), cv2.COLOR_RGB2BGR)
    cv2.imshow('screen', np.array(screenshot))
    results = model(screenshot)

    detected_objects = xyxy_boxes = []

    for r in results:
        xyxy_boxes.extend(r.boxes.xyxy)

    print(detected_objects)

    if xyxy_boxes:
        if len(xyxy_boxes) > 1:
            print("enemy")
            enemy_head = xyxy_boxes[1]
            center_x = (enemy_head[0] + enemy_head[2]) / 2
            center_y = (enemy_head[1] + enemy_head[3]) / 2
            print(center_x)
            print(center_y)
            print("moved to enemy_head: ", enemy_head)
        else:
            print("enemy_head")
            enemy = xyxy_boxes[0]
            target_height = 0.8 * (enemy[3] - enemy[1])
            center_x = (enemy[0] + enemy[2]) / 2
            center_y = ((enemy[1] + enemy[3]) / 2) - (target_height / 2)
            print("moved to enemy: ", enemy)

        pyautogui.moveTo(center_x, center_y)
        print(center_x, center_y)

    if keyboard.is_pressed("q"):
        break

    cv2.waitKey(1)
Editor is loading...
Leave a Comment