render: (relatively) minor UI overhaul #10

Merged
NotAShelf merged 8 commits from notashelf/push-lnksylnmlvzq into main 2026-04-08 12:39:10 +00:00

8 commits

Author SHA1 Message Date
1a6b71fd03
render: sectioned new HUD layout with portrait; polish action log panel
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I8a46ddecadd45712c9bef32d061783896a6a6964
2026-04-08 15:38:22 +03:00
ea8306060b
render: revert redundant ternary expression
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ica6dc2015e573cc71b1882e69fef351e6a6a6964
2026-04-08 15:38:21 +03:00
22a2da75a9
render: implement dynamic box sizing & line count calculation in render_message
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ibb30f7ff6fbff55f253397619e2208c76a6a6964
2026-04-08 15:38:20 +03:00
4f0a85df19
build: 'lock' zig build setup
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I5a09be217458921978d2a8f69ef72ee86a6a6964
2026-04-08 15:38:19 +03:00
436083f606
render: replace game over screen with end screen; show stats breakdown
The game over logic is now consolidated as there are two possible
scenarios: victory or death. The end-screen rendering has thus been
consolidated to display victory (gold YOU ESCAPED) or death (red GAME OVER)
with a stats box. 

Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Iecf71ecde4097a41bd074f9123c8c4c76a6a6964
2026-04-08 15:38:18 +03:00
19a9da4aee
stats: track all gameplay statistics during player actions
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ie94380572d2256dda45ce7bfcf347c7f6a6a6964
2026-04-08 15:38:17 +03:00
e048e02475
stats: add stat tracking fields to GameState
We can now track kills, items, damage dealt/taken, crits, times hit,
potions used, floors reached, and final score in `GameState` for
end-game display. This is rather basic for now, but I intend to extend
the tracked statistics as we introduce more mechanics. 

Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I4dcd3e1effd0209268dc56fe4bba4b696a6a6964
2026-04-08 15:38:16 +03:00
0b4f14c73c
build: also link raylib for libcombat
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I337a654ffc0dbfab19bdbe68ba9bd9026a6a6964
2026-04-08 15:38:15 +03:00