diff options
| author | salmonik <salmonik@tuta.io> | 2026-11-03 22:04:06 +0100 |
|---|---|---|
| committer | salmonik <salmonik@tuta.io> | 2026-11-03 22:04:06 +0100 |
| commit | 62cc5b2a08df1a347b78b98d056b62e79e88f5f3 (patch) | |
| tree | b1e340a442004357b2bd1188919942a9441753b5 | |
| parent | GUI: recover invalid fonts; vischeck: props and bulletproof glass (diff) | |
| download | hl2h-62cc5b2a08df1a347b78b98d056b62e79e88f5f3.tar.gz hl2h-62cc5b2a08df1a347b78b98d056b62e79e88f5f3.zip | |
Vischeck: only glass materials are glass; log font/glass diagnostics
| -rw-r--r-- | src/gui.cpp | 9 | ||||
| -rw-r--r-- | src/vischeck.cpp | 5 |
2 files changed, 11 insertions, 3 deletions
diff --git a/src/gui.cpp b/src/gui.cpp index 417860f..b02e88a 100644 --- a/src/gui.cpp +++ b/src/gui.cpp | |||
| @@ -510,8 +510,10 @@ static unsigned long create_gui_font(int tall) { | |||
| 510 | if (!f) | 510 | if (!f) |
| 511 | break; | 511 | break; |
| 512 | if (s_set_font(f, families[i], tall, 400, 0x400, 0x20, 0xFF) && | 512 | if (s_set_font(f, families[i], tall, 400, 0x400, 0x20, 0xFF) && |
| 513 | font_valid(f)) | 513 | font_valid(f)) { |
| 514 | logd("gui: font %dpx family %s", tall, families[i]); | ||
| 514 | return f; | 515 | return f; |
| 516 | } | ||
| 515 | } | 517 | } |
| 516 | return 0; | 518 | return 0; |
| 517 | } | 519 | } |
| @@ -526,6 +528,7 @@ static void ensure_fonts() { | |||
| 526 | if (le != g_font_local) { | 528 | if (le != g_font_local) { |
| 527 | g_font_local = le; | 529 | g_font_local = le; |
| 528 | gui_reset_fonts(); | 530 | gui_reset_fonts(); |
| 531 | logd("gui: fonts reset (local entity change)"); | ||
| 529 | } | 532 | } |
| 530 | 533 | ||
| 531 | bool scale_changed = fabsf(g_font_scale - g_scale) >= 0.001f; | 534 | bool scale_changed = fabsf(g_font_scale - g_scale) >= 0.001f; |
| @@ -537,8 +540,10 @@ static void ensure_fonts() { | |||
| 537 | if ((g_font_body && !font_valid(g_font_body)) || | 540 | if ((g_font_body && !font_valid(g_font_body)) || |
| 538 | (g_font_title && !font_valid(g_font_title))) | 541 | (g_font_title && !font_valid(g_font_title))) |
| 539 | gui_reset_fonts(); | 542 | gui_reset_fonts(); |
| 540 | if (scale_changed) | 543 | if (scale_changed) { |
| 541 | gui_reset_fonts(); | 544 | gui_reset_fonts(); |
| 545 | logd("gui: fonts reset (scale change)"); | ||
| 546 | } | ||
| 542 | 547 | ||
| 543 | g_font_scale = g_scale; | 548 | g_font_scale = g_scale; |
| 544 | int req_body = (int)(15.0f * g_scale + 0.5f); | 549 | int req_body = (int)(15.0f * g_scale + 0.5f); |
diff --git a/src/vischeck.cpp b/src/vischeck.cpp index a568f31..97a2c12 100644 --- a/src/vischeck.cpp +++ b/src/vischeck.cpp | |||
| @@ -150,7 +150,7 @@ static bool surface_is_breakable_glass(const SurfaceCompat &surf) { | |||
| 150 | } | 150 | } |
| 151 | 151 | ||
| 152 | static bool surface_is_glass(const SurfaceCompat &surf) { | 152 | static bool surface_is_glass(const SurfaceCompat &surf) { |
| 153 | return surface_contains(surf, "glass") || surface_contains(surf, "window"); | 153 | return surface_contains(surf, "glass"); |
| 154 | } | 154 | } |
| 155 | 155 | ||
| 156 | bool is_visible(const Vector &eye, const Vector &point, void *self, | 156 | bool is_visible(const Vector &eye, const Vector &point, void *self, |
| @@ -206,6 +206,9 @@ bool is_visible(const Vector &eye, const Vector &point, void *self, | |||
| 206 | (int)breakable_glass); | 206 | (int)breakable_glass); |
| 207 | continue; | 207 | continue; |
| 208 | } | 208 | } |
| 209 | if (glass) | ||
| 210 | logd("vischeck: blocked by glass surface=%s contents=0x%x", | ||
| 211 | tr.surface.name ? tr.surface.name : "?", tr.contents); | ||
| 209 | return false; | 212 | return false; |
| 210 | } | 213 | } |
| 211 | return false; | 214 | return false; |
