From 5ddc9eb9d02ddc84e4c3a45bdcb2941513fb0346 Mon Sep 17 00:00:00 2001 From: salmonik Date: Wed, 4 Nov 2026 18:58:13 +0100 Subject: Chams: per-relationship, visible/invisible styles and viewmodel - Hostile/neutral/friendly each have independent visible and through-wall settings: enable, style and colour. Viewmodel has its own enable/style/colour. - Styles: Flat, Wireframe, Additive, Solid, White, Fullbright, Glow outline. Additive uses the model solid material + ADDITIVE flag (the VGUI additive was invisible on NPCs). White/fullbright are solid-based, so the viewmodel no longer disappears/checkerboards. Glow outline adds a wireframe contour pass for depth. - Config: [chams] active/bind, [chams_hostile|neutral|friendly] vis/inv settings, [chams_vm]. GUI sections for each group. --- src/hl2h.h | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'src/hl2h.h') diff --git a/src/hl2h.h b/src/hl2h.h index 0f7e1f2..4c9012f 100644 --- a/src/hl2h.h +++ b/src/hl2h.h @@ -230,11 +230,21 @@ extern FeatureState g_bhop, g_abh, g_jumpbug, g_melee, g_spread, g_esp, g_aimbot, g_triggerbot, g_silentaim, g_item_esp, g_fullbright, g_world_tint, g_fog, g_skybox, g_projectiles, g_chams; extern bool g_proj_fuse, g_proj_radius; -extern bool g_chams_walls; + +// Chams settings per relationship, and separate visible / through-wall +// (invisible) material and colour. The viewmodel has a single style. +struct ChamsGroup { + bool vis_on; + int vis_mat; + int vis_rgb[3]; + bool inv_on; + int inv_mat; + int inv_rgb[3]; +}; +extern ChamsGroup g_chams_hostile, g_chams_neutral, g_chams_friendly; extern bool g_chams_viewmodel; -extern int g_chams_mat_index; -extern int g_chams_rgb[3]; -extern bool g_tint_world_on, g_tint_sky_on, g_tint_prop_on; +extern int g_chams_vm_mat; +extern int g_chams_vm_rgb[3];extern bool g_tint_world_on, g_tint_sky_on, g_tint_prop_on; extern int g_tint_world_rgb[3], g_tint_sky_rgb[3], g_tint_prop_rgb[3]; extern bool g_fog_skybox, g_fog_disable; extern int g_fog_rgb[3], g_fog_start, g_fog_end; @@ -337,6 +347,7 @@ void silentaim_reset_lock(); void *entitylist_get(int idx); bool esp_is_npc_index(int idx); bool esp_is_viewmodel_index(int idx); +int esp_npc_relation(int idx); void *world_find_material(const char *name); void chams_init(); void chams_preload(); -- cgit v1.2.3