From 714262bcf759a238daf906de16e7b204712a104f Mon Sep 17 00:00:00 2001 From: salmonik Date: Wed, 4 Nov 2026 14:28:21 +0100 Subject: Add usable item filter, projectile ESP and gravity-gun melee - Items: "Only if usable" hides health tags at full health and armor at full suit. Health ceiling is the server player's m_iMaxHealth; armor uses the server m_ArmorValue against HL2's 100 cap. Fails open when unreadable. - Projectiles: new Visuals feature/card for thrown grenades, RPG rockets, helicopter bombs and AR2 balls. Fuse from server m_flDetonateTime vs engine time; radius from m_DmgRadius with per-type fallback; optional 24-segment radius ring and FRAG timer label. - Melee: the killbot now handles the gravity gun as well; only VULNERABLE targets, 1200-unit range, primary attack to launch the held object, and no aim-punch compensation because the launch uses EyeVectors. - Server/netvars: m_ArmorValue, m_flDetonateTime, m_DmgRadius. --- src/gui.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'src/gui.cpp') diff --git a/src/gui.cpp b/src/gui.cpp index 59c4364..2f832a2 100644 --- a/src/gui.cpp +++ b/src/gui.cpp @@ -364,7 +364,9 @@ static void build_cards() { add_card(1, &g_triggerbot, "Triggerbot", "Fire when the crosshair is on a hostile.", true); - add_card(1, &g_melee, "Melee killbot", "360-degree crowbar silent aim.", + add_card(1, &g_melee, "Melee killbot", + "360-degree crowbar swing, or a gravity-gun launch at VULN " + "targets while holding an object.", true); int esp = add_card(2, &g_esp, "ESP", "Draw hostile NPC information.", true); @@ -405,11 +407,22 @@ static void build_cards() { &g_item_crates); add_toggle(items, "Show distance", "Append the distance in units.", &g_item_distance); + add_toggle(items, "Only if usable", + "Hide health kits at full health and armor at full suit.", + &g_item_usable); add_slider(items, "Max distance", "0 = unlimited; otherwise items farther away are hidden.", 0, 10000, &g_item_max_dist); g_ctrls[g_nctrl - 1].zero_unlimited = true; + int proj = add_card(2, &g_projectiles, "Projectiles", + "Tag grenades, rockets, bombs and AR2 balls.", true); + add_toggle(proj, "Fuse timer", + "Show the remaining time until a grenade or ball detonates.", + &g_proj_fuse); + add_toggle(proj, "Blast radius", + "Draw the projectile's damage radius on the ground.", &g_proj_radius); + int view = add_card(2, nullptr, "Camera / display", "Camera FOV, viewmodel FOV and HDR brightness.", true); add_slider(view, "Camera FOV", -- cgit v1.2.3