aboutsummaryrefslogtreecommitdiff
path: root/internal/game/game.go
diff options
context:
space:
mode:
authorhistoria <[not public]>2026-07-18 04:44:50 -0400
committerhistoria <[not public]>2026-07-18 04:44:50 -0400
commit2b5d8f595f96a2864899f4c7e28bc06fa52d2603 (patch)
treef1539db865d9968414e59d9b250861c1b356d627 /internal/game/game.go
parentdb8ca1fe26a36b78074a424ae657b2cbb9b3af19 (diff)
downloadthehouseoficarus-2b5d8f595f96a2864899f4c7e28bc06fa52d2603.tar.gz
feat: expose all colors in config.yaml for easier theming
Diffstat (limited to 'internal/game/game.go')
-rw-r--r--internal/game/game.go30
1 files changed, 16 insertions, 14 deletions
diff --git a/internal/game/game.go b/internal/game/game.go
index eed61f5..700877b 100644
--- a/internal/game/game.go
+++ b/internal/game/game.go
@@ -38,9 +38,10 @@ type Deps struct {
MobStore *world.MobStore
CraftIndex *CraftIndex
CourseStore *CourseStore
- Ticks *engine.Engine
- ColorConfig *config.ColorsConfig
- DataDir string
+ Ticks *engine.Engine
+ ColorConfig *config.ColorsConfig
+ ConstantColorConfig *config.ColorsConfig
+ DataDir string
}
// Game is the central orchestrator: it owns the data stores (via the embedded
@@ -75,19 +76,20 @@ type Game struct {
shutdownMu sync.Mutex
}
-func New(dataDir string, colorConfig *config.ColorsConfig, valConfig config.ValidationConfig, startingRoom int) *Game {
+func New(dataDir string, colorConfig *config.ColorsConfig, constantColorConfig *config.ColorsConfig, valConfig config.ValidationConfig, startingRoom int) *Game {
g := &Game{
Deps: Deps{
- World: world.New(dataDir),
- ObjectStore: object.NewObjectStore(dataDir),
- ItemStore: item.NewItemStore(dataDir),
- AccountStore: player.NewAccountStore(dataDir),
- MobStore: world.NewMobStore(dataDir),
- CraftIndex: NewCraftIndex(),
- CourseStore: NewCourseStore(dataDir),
- Ticks: engine.New(),
- ColorConfig: colorConfig,
- DataDir: dataDir,
+ World: world.New(dataDir),
+ ObjectStore: object.NewObjectStore(dataDir),
+ ItemStore: item.NewItemStore(dataDir),
+ AccountStore: player.NewAccountStore(dataDir),
+ MobStore: world.NewMobStore(dataDir),
+ CraftIndex: NewCraftIndex(),
+ CourseStore: NewCourseStore(dataDir),
+ Ticks: engine.New(),
+ ColorConfig: colorConfig,
+ ConstantColorConfig: constantColorConfig,
+ DataDir: dataDir,
},
GlobalFlags: NewGlobalFlagStore(),
Combat: combat.NewTracker(),