summaryrefslogtreecommitdiffstats
path: root/src/hl2h.h
diff options
context:
space:
mode:
authorsalmonik <salmonik@tuta.io>2026-10-27 21:22:47 +0100
committersalmonik <salmonik@tuta.io>2026-10-27 21:22:47 +0100
commit9904891162a6749d39110110c0812a64c241a7ea (patch)
tree676eea2d0933ccb7675be6cac1481cc8208993ec /src/hl2h.h
parentStucklaunch: fix prop detection and add diagnostics (diff)
downloadhl2h-9904891162a6749d39110110c0812a64c241a7ea.tar.gz
hl2h-9904891162a6749d39110110c0812a64c241a7ea.zip
Remove stucklaunch; add valuable-item ESP
- Drop the stucklaunch feature, its settings, diagnostics and m_hGroundEntity resolution. - Add a Visuals feature that scans the client entity list for valuable pickups: health/medkits/chargers, ammo boxes/crates/grenades, batteries, HEV suit modules/chargers, supply crates and generic items. - Model-first classification with class fallbacks; category toggles, distance labels and a max-distance slider. - Draw colored marker/label tags through walls, independent of the hostile NPC ESP. - Persist [items] active/bind/health/ammo/armor/crates/distance/max_dist; Reset restores defaults; GUI card and CONTEXT updated.
Diffstat (limited to '')
-rw-r--r--src/hl2h.h24
1 files changed, 10 insertions, 14 deletions
diff --git a/src/hl2h.h b/src/hl2h.h
index d6729cb..8aeef7a 100644
--- a/src/hl2h.h
+++ b/src/hl2h.h
@@ -92,7 +92,6 @@ struct NetVars {
92 int modelindex = -1; 92 int modelindex = -1;
93 int absvelocity = -1; // client C_BaseEntity::m_vecAbsVelocity (prediction) 93 int absvelocity = -1; // client C_BaseEntity::m_vecAbsVelocity (prediction)
94 int activeweapon = -1; // client m_hActiveWeapon handle 94 int activeweapon = -1; // client m_hActiveWeapon handle
95 int groundentity = -1; // client m_hGroundEntity handle
96 // ponytail: mins/maxs may be absent from some HL2 netvar tables; esp.cpp falls back to h=72 95 // ponytail: mins/maxs may be absent from some HL2 netvar tables; esp.cpp falls back to h=72
97 bool ok() const { return flags >= 0 && velocity >= 0 && movetype >= 0; } 96 bool ok() const { return flags >= 0 && velocity >= 0 && movetype >= 0; }
98 // ponytail: m_iMaxHealth isn't a netvar in HL2 SP; esp.cpp falls back to 100. 97 // ponytail: m_iMaxHealth isn't a netvar in HL2 SP; esp.cpp falls back to 100.
@@ -141,7 +140,7 @@ struct CUserCmd {
141 140
142enum { IN_ATTACK = 1 << 0, IN_JUMP = 1 << 1, IN_DUCK = 1 << 2, IN_USE = 1 << 5, IN_ATTACK2 = 1 << 11, IN_SPEED = 1 << 17 }; 141enum { IN_ATTACK = 1 << 0, IN_JUMP = 1 << 1, IN_DUCK = 1 << 2, IN_USE = 1 << 5, IN_ATTACK2 = 1 << 11, IN_SPEED = 1 << 17 };
143enum { FL_ONGROUND = 1 << 0, FL_DUCKING = 1 << 1, FL_INWATER = 1 << 9 }; 142enum { FL_ONGROUND = 1 << 0, FL_DUCKING = 1 << 1, FL_INWATER = 1 << 9 };
144enum { MOVETYPE_WALK = 2, MOVETYPE_VPHYSICS = 6, MOVETYPE_NOCLIP = 8, MOVETYPE_LADDER = 9 }; 143enum { MOVETYPE_WALK = 2, MOVETYPE_NOCLIP = 8, MOVETYPE_LADDER = 9 };
145 144
146// --------------------------------------------------------------------------- 145// ---------------------------------------------------------------------------
147// vector math 146// vector math
@@ -173,7 +172,7 @@ enum FeatureId {
173 FEAT_JUMPBUG = 6, 172 FEAT_JUMPBUG = 6,
174 FEAT_MELEE = 7, 173 FEAT_MELEE = 7,
175 FEAT_SPREAD = 8, 174 FEAT_SPREAD = 8,
176 FEAT_STUCKLAUNCH = 9, 175 FEAT_ITEM_ESP = 9,
177 FEAT_COUNT = 10 176 FEAT_COUNT = 10
178}; 177};
179enum EspOption { 178enum EspOption {
@@ -206,14 +205,16 @@ struct FeatureState {
206}; 205};
207 206
208extern FeatureState g_bhop, g_abh, g_jumpbug, g_melee, g_spread, g_esp, 207extern FeatureState g_bhop, g_abh, g_jumpbug, g_melee, g_spread, g_esp,
209 g_aimbot, g_triggerbot, g_silentaim, g_stucklaunch; 208 g_aimbot, g_triggerbot, g_silentaim, g_item_esp;
210extern bool g_bhop_autostrafe; 209extern bool g_bhop_autostrafe;
211extern bool g_jumpbug_assist; 210extern bool g_jumpbug_assist;
212extern bool g_spread_no_spread; 211extern bool g_spread_no_spread;
213extern bool g_stucklaunch_use_spam; 212extern bool g_item_health;
214extern bool g_stucklaunch_gravspam; 213extern bool g_item_ammo;
215extern bool g_stucklaunch_autostrafe; 214extern bool g_item_armor;
216extern int g_stucklaunch_spam_ticks; 215extern bool g_item_crates;
216extern bool g_item_distance;
217extern int g_item_max_dist;
217extern bool g_aim_bones[AIM_BONE_COUNT]; 218extern bool g_aim_bones[AIM_BONE_COUNT];
218extern int g_aim_smooth; 219extern int g_aim_smooth;
219extern bool g_aim_vischeck; 220extern bool g_aim_vischeck;
@@ -252,12 +253,6 @@ bool esp_option(int opt);
252bool bhop_autostrafe_enabled(); 253bool bhop_autostrafe_enabled();
253bool jumpbug_assist_enabled(); 254bool jumpbug_assist_enabled();
254bool spread_no_spread_enabled(); 255bool spread_no_spread_enabled();
255bool stucklaunch_use_spam_enabled();
256bool stucklaunch_gravspam_enabled();
257bool stucklaunch_autostrafe_enabled();
258int stucklaunch_spam_ticks();
259bool active_weapon_is_gravity_gun(void *local_ent);
260bool entity_is_physics_prop(int idx);
261unsigned aimbot_bone_mask(); 256unsigned aimbot_bone_mask();
262int aimbot_smooth_step(); 257int aimbot_smooth_step();
263bool aimbot_vischeck_enabled(); 258bool aimbot_vischeck_enabled();
@@ -270,6 +265,7 @@ void *entitylist_get(int idx);
270int engine_get_local_player(); 265int engine_get_local_player();
271void draw_text_col(int x, int y, const char *s, int r, int g, int b); 266void draw_text_col(int x, int y, const char *s, int r, int g, int b);
272void esp_draw(); 267void esp_draw();
268void esp_draw_items();
273bool world_to_screen(const Vector &w, float &sx, float &sy); 269bool world_to_screen(const Vector &w, float &sx, float &sy);
274void set_silent_restore(const QAngle &angles); 270void set_silent_restore(const QAngle &angles);
275bool is_visible(const Vector &eye, const Vector &point); 271bool is_visible(const Vector &eye, const Vector &point);