last_light/game/model/entity.go

31 lines
413 B
Go
Raw Normal View History

2024-04-24 17:11:33 +03:00
package model
import (
"mvvasilev/last_light/util"
"github.com/gdamore/tcell/v2"
"github.com/gdamore/tcell/v2/views"
"github.com/google/uuid"
)
type Direction int
const (
Up Direction = iota
Down
Left
Right
)
type Entity interface {
UniqueId() uuid.UUID
Draw(v views.View)
Input(e *tcell.EventKey)
Tick(dt int64)
}
type MovableEntity interface {
Position() util.Position
Move(dir Direction)
}