CityRuntime
The district's heartbeat, and the only per-frame work the city slice does.
CityRuntime
The district's heartbeat, and the only per-frame work the city slice does.
Ashcross is a tile grid plus a picture, and neither of those needs a frame. What
does need one is the handful of things the city notices about the doctor:
standing at a brazier (which refills the censer), walking into a tincture cache,
and reaching the lazaretto gate. This component calls NB.ext.city.pulse(dt)
once a frame in play, and that is all it does.
It is a component rather than a task loop on purpose: the work then belongs to an entity, starts and stops with the scene, and leaves nothing running behind it.
The city slice spawns exactly one, temporary, under CityRoot. Nothing else
should add it, and nothing else should call pulse.
Runs at executionOrder = 40, after the doctor has moved this frame.
Scoped to this part · feeds back into the world's score.