poe2-bot/src/Nexus.Core/IInputController.cs
2026-04-04 16:44:32 -04:00

27 lines
790 B
C#

using System.Numerics;
namespace Nexus.Core;
public interface IInputController
{
bool IsInitialized { get; }
void KeyDown(ushort scanCode);
void KeyUp(ushort scanCode);
void KeyPress(ushort scanCode, int holdMs = 50);
void MouseMoveTo(int x, int y);
void SmoothMoveTo(int x, int y);
void MouseMoveBy(int dx, int dy);
void LeftClick(int x, int y);
void RightClick(int x, int y);
void MiddleClick(int x, int y);
void LeftDown();
void LeftUp();
void RightDown();
void RightUp();
/// <summary>
/// Sets the direction for the next dodge roll. Called before KeyPress(0x21).
/// Default no-op for real input controllers (direction comes from game state).
/// </summary>
void SetDodgeDirection(Vector2 direction) { }
}