Center zombie counters and use ASCII HUD separators
This commit is contained in:
+24
-13
@@ -32,12 +32,15 @@ before copying the renamed scripts.
|
||||
- **`SetTimerUp(N)` only ticks when `N == 0`** on T5 SP. Non-zero seeds
|
||||
render "0:00" but don't advance. Late joiners see 0, not real elapsed;
|
||||
authoritative elapsed lives in `level.match_start_time`.
|
||||
- **Dynamic numbers use `SetValue`.** Repeatedly generating unique strings
|
||||
risks exhausting the text config-string pool; identical strings can be reused
|
||||
by the engine's [string lookup](https://github.com/MisaDev4/bo1-zombies-decompiled/blob/102f6992be332610aff587e681e3180b15f395bb/src/game_mp/g_utils_mp.cpp#L46).
|
||||
Composite HP uses numeric elements around a static slash and `HP` suffix;
|
||||
the group appears only while injured. Help reuses up to nine explicitly
|
||||
positioned command/description pairs, and record rows skip unchanged text.
|
||||
- **Dynamic counter text uses `SetTextUnlimited`; HP uses `SetValue`.**
|
||||
Repeatedly generating unique strings through `SetText` risks exhausting the
|
||||
text config-string pool; identical strings can be reused by the engine's
|
||||
[string lookup](https://github.com/MisaDev4/bo1-zombies-decompiled/blob/102f6992be332610aff587e681e3180b15f395bb/src/game_mp/g_utils_mp.cpp#L46).
|
||||
The centered `N ZOMBIES` element uses Plutonium r5334+'s `SetTextUnlimited`
|
||||
only when the count changes. Composite HP retains numeric elements around a
|
||||
static slash and `HP` suffix; the group appears only while injured. Help
|
||||
reuses up to nine explicitly positioned command/description pairs, and
|
||||
record rows skip unchanged text.
|
||||
- **`NewClientHudElem(player)`, not `NewHudElem()`.** `NewHudElem` is
|
||||
globally owned; in co-op every player's HUD draws on top of every other
|
||||
player's. Fall back to `NewHudElem` only if elements don't render at all
|
||||
@@ -77,7 +80,7 @@ before copying the renamed scripts.
|
||||
from page one. Keep both services independent of the HUD module. Services
|
||||
never reposition the core, and AFK remains centered above the zombie count.
|
||||
- **Bound HUD element counts, including hidden elements.** Core + AFK use
|
||||
11 + 1 archived elements. Common allocates only the active service view:
|
||||
10 + 1 archived elements. Common allocates only the active service view:
|
||||
19 nonarchived elements for nine-command help (20 with a multi-page counter),
|
||||
or four for records (five with a multi-page counter), and none while idle.
|
||||
Switching help/record views destroys the previous view first; pages reuse
|
||||
@@ -99,12 +102,16 @@ before copying the renamed scripts.
|
||||
polling `self.health` misses the zero-crossing (health is rewritten during
|
||||
the game-over sequence).
|
||||
|
||||
HUD `1.4.0` and AFK `1.2.0` require matching common `1.4.0+`. Update all three
|
||||
where installed and restart the map. Leaderboard `1.1.0` remains compatible.
|
||||
HUD `1.4.2` requires matching common `1.4.0+` and
|
||||
[Plutonium r5334+](https://plutonium.pw/docs/changelog/#r5334) for
|
||||
`SetTextUnlimited`. On r5334+, update the HUD script and restart the map;
|
||||
older Plutonium clients and servers need updates and full restarts first.
|
||||
AFK `1.2.0` and leaderboard `1.1.0` remain compatible; AFK still requires
|
||||
common `1.4.0+`.
|
||||
The full help order is `.help`, `.hud`, `.afk`, `.back`, `.join`, `.leaders`,
|
||||
`.b`, `.d`, `.w`: one page of nine commands, with full `<amount|all>` bank
|
||||
syntax. `.hud` is absent when HUD is omitted. Records use right-aligned
|
||||
`Map record · Round N` and up to three bounded holder lines, with no footer
|
||||
`Map record | Round N` and up to three bounded holder lines, with no footer
|
||||
and no single-page counter. Both views retain 12-second page timing.
|
||||
Fullscreen X/Y overlay anchors use direct normalized `640 × 480` coordinates.
|
||||
Dynamic health fills use `make_overlay_width()` like their tracks. Apply
|
||||
@@ -112,10 +119,14 @@ Dynamic health fills use `make_overlay_width()` like their tracks. Apply
|
||||
`SetShader` requires an integer width. Legacy panel helpers and their `0.75`
|
||||
horizontal conversion remain available for existing consumers. Font scale is
|
||||
at least `1.0`. Numeric HP appears only while injured; the core and services
|
||||
have no panel backgrounds. There is no new Plutonium/native-plugin/backend
|
||||
dependency or full server-process restart requirement.
|
||||
have no panel backgrounds. The counter is one `N ZOMBIES` element centered
|
||||
at the health track's midpoint with uniform scale `1.25`, starting as
|
||||
`-- ZOMBIES`. There is no new native-plugin/backend dependency or full
|
||||
server-process restart requirement when already using Plutonium r5334+.
|
||||
Run the [shared HUD checks](../../README.md#hud-validation); portable fixtures
|
||||
do not replace T5 live loading, layout and lifecycle validation.
|
||||
do not replace T5 live loading, layout and lifecycle validation. Check the
|
||||
counter's centering at `0`, `6`, `9`, `10`, `99` and `100`, after `.hud`
|
||||
hides/shows it, and after game over freezes the count.
|
||||
|
||||
## Module map
|
||||
|
||||
|
||||
Reference in New Issue
Block a user