From a5a051f3356046fcaeaa295272d6859defebb320 Mon Sep 17 00:00:00 2001 From: xolatile Date: Wed, 23 Jul 2025 17:33:57 +0200 Subject: Alternative GUI, more info in scoreboard, icons, accuracy, pickup state... --- src/fpsgame/scoreboard.cpp | 45 +++++++++++++++++++++++++++++++++++++-------- 1 file changed, 37 insertions(+), 8 deletions(-) (limited to 'src/fpsgame/scoreboard.cpp') diff --git a/src/fpsgame/scoreboard.cpp b/src/fpsgame/scoreboard.cpp index 40a1246..2bc82d2 100644 --- a/src/fpsgame/scoreboard.cpp +++ b/src/fpsgame/scoreboard.cpp @@ -5,15 +5,16 @@ namespace game { VARP(scoreboard2d, 0, 1, 1); VARP(showservinfo, 0, 1, 1); - VARP(showclientnum, 0, 0, 1); + VARP(showclientnum, 0, 1, 1); VARP(showpj, 0, 0, 1); VARP(showping, 0, 1, 2); VARP(showspectators, 0, 1, 1); - VARP(showspectatorping, 0, 0, 1); + VARP(showspectatorping, 0, 1, 1); VARP(highlightscore, 0, 1, 1); VARP(showconnecting, 0, 0, 1); - VARP(hidefrags, 0, 1, 1); - VARP(showdeaths, 0, 0, 1); + VARP(hidefrags, 0, 0, 1); + VARP(showdeaths, 0, 1, 1); + VARP(showdamagedealt, 0, 1, 1); static hashset teaminfos; @@ -253,13 +254,19 @@ namespace game g.poplist(); } + if(showdamagedealt) + { + g.pushlist(); + g.strut(7); + g.text("damage", fgcolor); + loopscoregroup(o, g.textf("%d", 0xFFFFDD, NULL, o->totaldamage)); + g.poplist(); + } + g.pushlist(); g.text("name", fgcolor); g.strut(12); - loopscoregroup(o, - { - g.textf("%s ", statuscolor(o, 0xFFFFDD), NULL, colorname(o)); - }); + loopscoregroup(o, { g.textf("%s ", statuscolor(o, 0xFFFFDD), NULL, colorname(o)); }); g.poplist(); if(multiplayer(false) || demoplayback) @@ -417,6 +424,28 @@ namespace game } } } + + /// PW + g.separator(); + g.pushlist(); + g.textf(" %d%% ", 0x787878, "chainsaw.png", pwaccuracy[0]); + g.textf(" %d%% ", 0xfba6a6, "shotgun.png", pwaccuracy[1]); + g.textf(" %d%% ", 0x7bc77a, "chaingun.png", pwaccuracy[2]); + g.textf(" %d%% ", 0xefd7a6, "rocket_launcher.png", pwaccuracy[3]); + g.textf(" %d%% ", 0x8f91e7, "rifle.png", pwaccuracy[4]); + g.textf(" %d%% ", 0x9ee5e5, "grenade_launcher.png", pwaccuracy[5]); + g.textf(" %d%% ", 0xc3c3c3, "pistol.png", pwaccuracy[6]); + g.poplist(); + g.separator(); + g.pushlist(); + g.textf(" x %d ", 0xffffff, "blue_armour.png", pwitemspicked[0]); + g.textf(" x %d ", 0xffffff, "green_armour.png", pwitemspicked[1]); + g.textf(" x %d ", 0xffffff, "yellow_armour.png", pwitemspicked[2]); + g.textf(" x %d ", 0xffffff, "tiny_health.png", pwitemspicked[3]); + g.textf(" x %d ", 0xffffff, "health.png", pwitemspicked[4]); + g.textf(" x %d ", 0xffffff, "health_boost.png", pwitemspicked[5]); + g.textf(" x %d ", 0xffffff, "quad_damage.png", pwitemspicked[6]); + g.poplist(); } struct scoreboardgui : g3d_callback -- cgit v1.2.3