Quest HUD: an objective tracker, and quests that speak #132
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Sub-ticket of #129.
Done in
397983b.Two halves, deliberately not one node.
ui/QuestTracker.gdis the standing objective: title, task, and a progress bar, in the wave alert's idiom - neon geometry, no art. It sits under the alert on the right so the two stack rather than argue, and it stands down whenever a full-screen panel is open, which is the HUD's existing rule for anything sitting behind a menu. A one-of-one goal shows no counter, because "0 / 1" reads as a broken readout rather than as a task not started.world/QuestDirector.gdis the voice. Quests announce themselves through the narration banner, so a new objective is something the player acknowledges and the game waits for (#128) rather than a caption that slides past.The reason those are separate: quests advance in
GameState, which keeps running on a planet surface where there is no banner at all. A line emitted straight at a banner from down there would simply be lost. SoGameStatequeues lines and the director drains whichever banner is alive. Both scenes now carry a banner, a tracker and a director, so a quest finished underground is announced underground - and if one is ever finished somewhere with no banner at all, the next one that exists reads it out instead of dropping it.The tracker is an ordinary pausable node, so it is frozen behind a dialog like the rest of the HUD and comes up as the line closes. The line and the panel say the same thing, so there was nothing to gain from having both on screen at once.