Hud
The screens of LOCUST: what the player reads while the round runs, and the two cards that open and close it.
Hud
The screens of LOCUST: what the player reads while the round runs, and the two cards that open and close it.
Three screens, one on the glass at a time.
- title — the opening card. Premise, controls, and how long the daylight lasts. It holds for five seconds and hands over to the flight HUD.
- flight — the in-round read. Swarm mass with its dispersal floor, the clock counting down to sundown beside a sun sinking along its track, a ranked harvest ladder with a bar for you and one per rival, the tonnage you have taken, and an altitude ladder whose feeding band tells you when you are low enough to strip. Below survival mass the whole frame carries a pulsing starvation warning.
- end — the closing card. The verdict, who carried the harvest and on what
tonnage, the full standings, how much of the farm is still standing, and the
countdown to the next swarm.
FLY AGAINtakes you there at once.
Everything is a pure function of Locust.state, rebuilt twelve times a second,
so there is no retained UI state to fall out of step with the game. The HUD's
accent colour warms from pale gold to ember as state.timeOfDay burns down,
which is the same clock the light runs on.
Published as Locust.systems.hud
Hud.show(kind) -- "title" | "flight" | "end"
Hud.refresh() -- pull from Locust.state and redraw the visible screen
It also answers the event bus: roundStart opens the title card, roundEnd
opens the end card with the round's verdict. The subscription is bound once per
world session and dispatches through Locust.systems.hud, so editing this file
swaps the receiver instead of stacking a second copy of every handler.
Reads the whole blackboard; writes nothing but its own screens and
Locust.state.ui.
Scoped to this part · feeds back into the world's score.