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_D = 0x44
VK_F = 0x46
KEYEVENTF_KEYUP = 0x0002

# 1. Walk East slightly towards portal (Hold D for 0.35s)
print("1. Walking towards portal (D for 0.35s)...")
user32.keybd_event(VK_D, 0x20, 0, 0)
time.sleep(0.35)
user32.keybd_event(VK_D, 0x20, KEYEVENTF_KEYUP, 0)
time.sleep(0.2)

# 2. Click portal center at (1580, 620) and press F
print("2. Clicking portal at (1580, 620) and pressing F...")
user32.SetCursorPos(1580, 620)
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)

print("3. Waiting 4.0s for area transition...")
time.sleep(4.0)

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