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_SPACE = 0x20
VK_A = 0x41
VK_F = 0x46
KEYEVENTF_KEYUP = 0x0002

# 1. Close inventory / modals
print("1. Closing UI modals (SPACE)...")
user32.keybd_event(VK_SPACE, 0x39, 0, 0)
time.sleep(0.05)
user32.keybd_event(VK_SPACE, 0x39, KEYEVENTF_KEYUP, 0)
time.sleep(0.3)

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

# 3. Click Map Device pedestal at (580, 650) and press F
print("3. Clicking Map Device at (580, 650) and pressing F...")
user32.SetCursorPos(580, 650)
time.sleep(0.1)
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(0.8)

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