Declare the managers in boot.go, hand them to the engine whole
ci/woodpecker/push/ebitengine Pipeline was successful
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>
This commit is contained in:
@@ -6,13 +6,11 @@ import (
|
||||
|
||||
type Scene = inkwell.Scene
|
||||
|
||||
var SceneManager = inkwell.NewManager[Scene]()
|
||||
|
||||
func registerScene() {
|
||||
func prepareScene() {
|
||||
fillSelectorPins()
|
||||
SceneManager.Each(func(entity Scene) {
|
||||
World.G.SceneManager.Register(sceneDefaults(entity))
|
||||
})
|
||||
for _, entity := range SceneManager.All() {
|
||||
SceneManager.Set(sceneDefaults(entity))
|
||||
}
|
||||
}
|
||||
|
||||
var sceneFloor = []inkwell.Polygon{
|
||||
|
||||
Reference in New Issue
Block a user