diff options
Diffstat (limited to 'src/game/game.cpp')
-rw-r--r-- | src/game/game.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/game/game.cpp b/src/game/game.cpp index 8deadd6..4b9a9a3 100644 --- a/src/game/game.cpp +++ b/src/game/game.cpp @@ -251,6 +251,31 @@ void state_t::command(v2f_t x, int number) if (!selected_units.size()) return; + // debugging + if (number == 666) { + for (size_t i = 0; i < 100; i++) { + v2f_t rad; + world::trace_t best; + + best.hit = false; + best.frac = 2.0f; + + rad = v2f_t::rad(i / 99.0f * 2.0f * M_PI); + + for (unit_t *unit : selected_units) { + world::trace_t trace; + + trace = world::ray_v_rect(x, x + rad * 10, unit->cmodel.bounds); + if (trace.frac < best.frac) + best = trace; + } + + debug_render->render_line(x, best.end, (best.hit ? sf::Color::Yellow : sf::Color::White)); + } + + return; + } + snap[0] = std::round(x[0] - 0.5f) + 0.5f; snap[1] = std::round(x[1] - 0.5f) + 0.5f; |