import time
import ctypes
import sys
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parent.parent))

from src.assistant_tool.screen_capturer import ScreenCapturer

capturer = ScreenCapturer(output_dir="captures")
hwnd = capturer.find_poe2_window()
if not hwnd:
    print("Could not find POE2 window")
    sys.exit(1)

capturer.bring_to_foreground(hwnd)
time.sleep(0.2)

user32 = ctypes.windll.user32
VK_A = 0x41
VK_F = 0x46
KEYEVENTF_KEYUP = 0x0002

# Walk West towards Map Device flame (Hold A for 1.1s)
print("Walking West towards Map Device flame (A for 1.1s)...")
user32.keybd_event(VK_A, 0x1E, 0, 0)
time.sleep(1.1)
user32.keybd_event(VK_A, 0x1E, KEYEVENTF_KEYUP, 0)
time.sleep(0.3)

# Now character should be right next to Map Device pedestal!
# Click Map Device and press F
print("Interacting with Map Device (click + F)...")
user32.SetCursorPos(1280, 680)
time.sleep(0.08)
user32.mouse_event(0x0002, 0, 0, 0, 0)
time.sleep(0.06)
user32.mouse_event(0x0004, 0, 0, 0, 0)
time.sleep(0.1)
user32.keybd_event(VK_F, 0x21, 0, 0)
time.sleep(0.05)
user32.keybd_event(VK_F, 0x21, KEYEVENTF_KEYUP, 0)
time.sleep(1.0)

img_path = capturer.capture_screenshot(event_name="MAP_DEVICE_INTERACT_RESULT", capture_ram=False)
print(f"Captured: {img_path}")
