ci/woodpecker/push/ebitengine Pipeline was successful
boot.manager.go becomes boot.go and carries all seven managers as one block, so what the game holds reads in one place instead of a line hidden in each category file. The category files keep their entity alias. The hand-off stops copying. Our managers are the same *inkwell.Manager[T] the Game holds, so New assigns them onto it and engine and game share one registry per category. content.manager.go is gone with the copy loop. Themes stay additive — NewGame seeds four presets we would otherwise throw away — and registerScene becomes prepareScene, which now has to run before the hand-off: with no copy pass left, the scene defaults are written back into SceneManager with Set. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
33 lines
457 B
Go
33 lines
457 B
Go
package inc
|
|
|
|
import (
|
|
"image/color"
|
|
|
|
inkwell "git.teletypegames.org/engines/inkwell"
|
|
)
|
|
|
|
type Theme = inkwell.Theme
|
|
|
|
const (
|
|
RealWorld = "realworld-93"
|
|
NokiaPunk = "nokia-punk"
|
|
)
|
|
|
|
func RGB(hex uint32) color.Color {
|
|
return color.RGBA{
|
|
R: uint8(hex >> 16),
|
|
G: uint8(hex >> 8),
|
|
B: uint8(hex),
|
|
A: 0xff,
|
|
}
|
|
}
|
|
|
|
func RGBA(hex uint32, a uint8) color.Color {
|
|
return color.RGBA{
|
|
R: uint8(hex >> 16),
|
|
G: uint8(hex >> 8),
|
|
B: uint8(hex),
|
|
A: a,
|
|
}
|
|
}
|