// Screen reader for D2R — extracts game information from screenshots.
package d2r

import (
	"image"

	"git.cloonar.com/openclawd/iso-bot/pkg/plugin"
)

// Reader implements plugin.ScreenReader for D2R.
type Reader struct {
	config   Config
	services plugin.EngineServices
}

// NewReader creates a D2R screen reader.
func NewReader(config Config, services plugin.EngineServices) *Reader {
	return &Reader{
		config:   config,
		services: services,
	}
}

// FindItems detects item labels on the ground.
func (r *Reader) FindItems(frame image.Image) []plugin.DetectedItem {
	// TODO: Detect colored item text labels
	// - Gold text = unique
	// - Green text = set
	// - Yellow text = rare
	// - Orange text = runeword / crafted
	// - White/grey = normal/magic
	return nil
}

// FindPortal locates a town portal on screen.
func (r *Reader) FindPortal(frame image.Image) (image.Point, bool) {
	// TODO: Detect blue portal glow
	return image.Point{}, false
}

// FindEnemies detects enemy positions.
func (r *Reader) FindEnemies(frame image.Image) []image.Point {
	// TODO: Enemy health bar detection
	return nil
}

// ReadText extracts text from a screen region.
func (r *Reader) ReadText(frame image.Image, region image.Rectangle) string {
	// TODO: OCR on the given region
	return ""
}
