From 2e9373d530bca779b4070a79972f246ef41e4038 Mon Sep 17 00:00:00 2001 From: salmonik Date: Tue, 3 Nov 2026 22:03:01 +0100 Subject: GUI: recover invalid fonts; vischeck: props and bulletproof glass - Validate the GUI font handles with GetTextSize and recreate them when the local player entity or UI scale changes. Small scaled sizes fall back to the proven 16 px size, and the failure log/toast is emitted once instead of every frame. This fixes sessions where the menu rendered with no text after a level transition. - Rework visibility: trace with MASK_SHOT/TRACE_EVERYTHING while ignoring the local player and target, so static props, crates and other NPCs block. Non-solid glass and breakable-glass materials are skipped; solid non-break glass (bulletproof) blocks. Fix CONTENTS_WINDOW 0x2 (was 0x4) in the masks. - Pass self/target to is_visible from aimbot/silent/melee callers. --- src/esp.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/esp.cpp') diff --git a/src/esp.cpp b/src/esp.cpp index 3db25e6..5683704 100644 --- a/src/esp.cpp +++ b/src/esp.cpp @@ -541,7 +541,7 @@ static bool select_aim_target(const QAngle &view, unsigned bone_mask, continue; if (f >= best) continue; - if (vischeck && !is_visible(g_cam_eye, pts[i])) + if (vischeck && !is_visible(g_cam_eye, pts[i], local_ent, ent)) continue; best = f; best_pt = pts[i]; @@ -1061,7 +1061,7 @@ bool melee_aimbot_apply(CUserCmd *cmd) { float pd = vec_dist(g_cam_eye, pts[i]); if (pd > MELEE_RANGE || pd >= bestd) continue; - if (!is_visible(g_cam_eye, pts[i])) + if (!is_visible(g_cam_eye, pts[i], local_ent, tent)) continue; bestd = pd; aim = pts[i]; @@ -1083,7 +1083,7 @@ bool melee_aimbot_apply(CUserCmd *cmd) { if (ad > MELEE_RANGE) aim = c.closest; } - if (!is_visible(g_cam_eye, aim)) + if (!is_visible(g_cam_eye, aim, local_ent, tent)) continue; } -- cgit v1.2.3