UI polish: logo start screen, broadcast scoreboard, kill pips, best-run
- start screen: SPLATTER TENNIS logo + slogan, controls kept - scoreboard redrawn as a real broadcast board (server ball, name, sets, games, highlighted points cell); weapon stock moved to a status strip - kills-to-next-point pips (NEXT ○○○) so the K-kill gate is visible; TUNE.killPips toggles it - miss-debug HUD off by default (TUNE.missHud 0), dev-only now - eaten screen crows "NEW BEST" when the run beats the stored high score Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
1 parent
aa8d2fff36
commit
ae8c04d413
5 files changed
+79
-48
No files matched your search
+2
-1
@@ -200,7 +200,8 @@ export function updateZombies(dt) {
|
||||
G.horde = null; pellets.length = 0; extras.length = 0; G.mgT = 0; // everything stops; the eaten screen takes over
|
||||
try { // the run is over — settle it against the best (games survived, sets as tiebreak)
|
||||
const b = JSON.parse(localStorage.splatterBest || 'null') || { games: 0, sets: 0 };
|
||||
if (G.runGames > b.games) { b.games = G.runGames; b.sets = G.sets[0]; localStorage.splatterBest = JSON.stringify(b); }
|
||||
G.newBest = G.runGames > b.games; // beat it → the summary crows about it
|
||||
if (G.newBest) { b.games = G.runGames; b.sets = G.sets[0]; localStorage.splatterBest = JSON.stringify(b); }
|
||||
G.best = b;
|
||||
} catch (e) { G.best = null; } // private mode etc. — the summary just skips the best line
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user