Add modular capture backends, resolution profiles, Wayland support

This commit is contained in:
Hoid 2026-02-14 10:00:19 +00:00
parent 3b363192f2
commit 80ba9b1b90
16 changed files with 2266 additions and 45 deletions

View file

@ -7,6 +7,8 @@ package plugin
import (
"context"
"image"
"git.cloonar.com/openclawd/iso-bot/pkg/engine/capture"
)
// GameState represents the current state of the game (menu, loading, in-game, etc.)
@ -109,6 +111,9 @@ type Plugin interface {
// DefaultLootFilter returns the default loot filter.
DefaultLootFilter() LootFilter
// SupportedResolutions returns resolutions available for this game.
SupportedResolutions() []image.Point
}
// PluginInfo describes a game plugin.
@ -125,6 +130,15 @@ type EngineServices interface {
// Capture returns the current screen frame.
Capture() image.Image
// CaptureSource returns the active capture source.
CaptureSource() capture.Source
// Resolution returns the current capture resolution.
Resolution() (width, height int)
// Region returns a named screen region for the current game and resolution.
Region(name string) image.Rectangle
// Click sends a mouse click at the given position.
Click(pos image.Point)