From 77bd6ba7054b19332dc357e866f158321ec889fb Mon Sep 17 00:00:00 2001 From: salmonik Date: Tue, 27 Oct 2026 21:37:41 +0100 Subject: Item ESP: tag world weapons, name ammo types, restrict crates - Add a Weapons category and classify world weapon models (crowbar, pistol, revolver, SMG, AR2, shotgun, crossbow, RPG, grenade, gravity gun, stunstick, bugbait, sniper). Skip the active weapon and anything with a valid m_hOwner/m_hOwnerEntity handle so held weapons do not tag. - Label ammo by model: pistol, SMG, AR2, .357, crossbow, shotgun, sniper, flares, AR2 grenade, RPG rocket and specific ammo-crate variants. - Only item_item_crate and item_beacon_crate are supply crates; generic breakable crates are no longer tagged. Crate chunks stay excluded. - Add item diagnostics: category state, prop-like entities with class/model/ kind/distance/origin, and every item crate seen. --- src/menu.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src/menu.cpp') diff --git a/src/menu.cpp b/src/menu.cpp index af8d10d..69c3b45 100644 --- a/src/menu.cpp +++ b/src/menu.cpp @@ -48,6 +48,7 @@ FeatureState g_item_esp{true, 0}; // valuable item tags, always-on by default bool g_item_health = true; bool g_item_ammo = true; bool g_item_armor = true; +bool g_item_weapons = true; bool g_item_crates = true; bool g_item_distance = true; int g_item_max_dist = 2500; @@ -184,10 +185,10 @@ void config_save() { fprintf(f, "[silentaim]\nactive=%d\nbind=%d\nfov=%d\n", g_silentaim.active, g_silentaim.bind, g_silent_fov); fprintf(f, "[items]\nactive=%d\nbind=%d\nhealth=%d\nammo=%d\n" - "armor=%d\ncrates=%d\ndistance=%d\nmax_dist=%d\n", + "armor=%d\nweapons=%d\ncrates=%d\ndistance=%d\nmax_dist=%d\n", g_item_esp.active, g_item_esp.bind, (int)g_item_health, - (int)g_item_ammo, (int)g_item_armor, (int)g_item_crates, - (int)g_item_distance, g_item_max_dist); + (int)g_item_ammo, (int)g_item_armor, (int)g_item_weapons, + (int)g_item_crates, (int)g_item_distance, g_item_max_dist); fprintf(f, "[esp]\nactive=%d\nbind=%d\nneutral=%d\nhealthbar=%d\n" "healthnum=%d\nname=%d\nskeleton=%d\nbox=%d\nspeedgraph=%d\n", g_esp.active, g_esp.bind, g_esp_opt[ESP_OPT_SHOW_NEUTRAL], @@ -271,6 +272,8 @@ static bool config_load() { g_item_ammo = atoi(val) != 0; else if (strcmp(key, "armor") == 0) g_item_armor = atoi(val) != 0; + else if (strcmp(key, "weapons") == 0) + g_item_weapons = atoi(val) != 0; else if (strcmp(key, "crates") == 0) g_item_crates = atoi(val) != 0; else if (strcmp(key, "distance") == 0) @@ -372,6 +375,7 @@ void config_reset_defaults() { g_item_health = true; g_item_ammo = true; g_item_armor = true; + g_item_weapons = true; g_item_crates = true; g_item_distance = true; g_item_max_dist = 2500; -- cgit v1.2.3