Bring plants back as data-driven growth stages over the calendar

Bump the engine submodule to f791ee6 (Calendar) and use it to drive plant
growth. PlantDef gains a Stages list (texture/size/growDays per stage,
inheritable via abstract parents in plants.json); a resolved PlantSet
table turns those into atlas regions and day thresholds at scene load.

New PlantGrowth component plus PlantGrowthSystem advance each plant by
in-game days from the Calendar and swap its sprite/scale at stage borders.
WorldScene scatters plants again with a seed-deterministic, varied initial
maturity, registers the calendar and growth system, and the HUD now shows
the current day. Stage durations and visuals are pure data in plants.json.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Leonid Pershin
2026-06-12 09:47:18 +03:00
co-authored by Claude Opus 4.8
parent 923644dd19
commit 1030f27c50
11 changed files with 288 additions and 48 deletions
+5 -1
View File
@@ -1,5 +1,5 @@
{
"hud.world": "LittleSim | seed {0} | {2} FPS",
"hud.world": "LittleSim | seed {0} | day {1} | {2} FPS",
"hud.controls": "WASD — camera, wheel — zoom, ` — console ('help' lists commands)",
"hud.paused": "PAUSED",
@@ -67,6 +67,10 @@
"plant.pine": "pine",
"plant.grass": "grass tuft",
"plant.bush": "bush",
"plant.stage.seedling": "seedling",
"plant.stage.sprout": "sprout",
"plant.stage.sapling": "sapling",
"plant.stage.mature": "mature",
"pawn.being": "being",
"pawn.bear": "bear",
+5 -1
View File
@@ -1,5 +1,5 @@
{
"hud.world": "LittleSim | сид {0} | {2} FPS",
"hud.world": "LittleSim | сид {0} | день {1} | {2} FPS",
"hud.controls": "WASD — камера, колесо — зум, ` — консоль ('help' — список команд)",
"hud.paused": "ПАУЗА",
@@ -67,6 +67,10 @@
"plant.pine": "сосна",
"plant.grass": "пучок травы",
"plant.bush": "куст",
"plant.stage.seedling": "росток",
"plant.stage.sprout": "всходы",
"plant.stage.sapling": "саженец",
"plant.stage.mature": "взрослое",
"pawn.being": "житель",
"pawn.bear": "медведь",