package groovy import "github.com/hajimehoshi/ebiten/v2" type SceneEvent int64 const ( NOOP SceneEvent = 0 RESET SceneEvent = 1 // reset to initial scene RELOAD SceneEvent = 3 // reload current scene COMPLETED SceneEvent = 4 // current scene has completed ENDGAME SceneEvent = 5 // shutdown all scenes ) type Scene interface { Update() error Draw(screen *ebiten.Image) SetEventHandler(e SceneEvent, f func()) } type ArgoScale interface { Draw(screen *ebiten.Image) GetSceneEvents() []SceneEvent }