diff options
| author | navewindre <boneyaard@gmail.com> | 2018-09-01 17:54:45 +0200 |
|---|---|---|
| committer | navewindre <boneyaard@gmail.com> | 2018-09-01 17:54:45 +0200 |
| commit | 89d0110da2e65405fcbdac0e24f4fcc5cdce4c1c (patch) | |
| tree | fc33ee66cfc1b104c355391386abfccf1e5b94ea /internal_rewrite/util.cpp | |
| parent | aeef9e6d8241b4f7451a26f5af9645c1a6e5c4d9 (diff) | |
uh
Diffstat (limited to 'internal_rewrite/util.cpp')
| -rw-r--r-- | internal_rewrite/util.cpp | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/internal_rewrite/util.cpp b/internal_rewrite/util.cpp index ee815c5..9bc315f 100644 --- a/internal_rewrite/util.cpp +++ b/internal_rewrite/util.cpp @@ -24,8 +24,8 @@ bool util::is_low_fps( ) { return g_csgo.m_globals->m_frametime > g_csgo.m_globals->m_interval_per_tick;
}
-int util::get_closest_player( ) {
- float cur_fov{ 360.f };
+int util::get_closest_player( bool dist ) {
+ float cur_fov = FLT_MAX;
int ret{ -1 };
vec3_t viewangles{ };
vec3_t local_pos{ };
@@ -47,13 +47,19 @@ int util::get_closest_player( ) { continue;
}
- auto ang = math::vector_angles( local_pos, ent->get_hitbox_pos( 0 ) );
- ang.clamp( );
+ float distance = 0.f;
+ if( dist ) {
+ distance = g_ctx.m_local->m_vecOrigin( ).dist_to( ent->m_vecOrigin( ) );
+ }
+ else {
+ auto ang = math::vector_angles( local_pos, ent->get_hitbox_pos( 0 ) );
+ ang.clamp( );
+ distance = ( viewangles - ang ).clamp( ).length2d( );
+ }
- float fov = ( viewangles - ang ).clamp( ).length2d( );
- if( fov < cur_fov ) {
+ if( distance < cur_fov ) {
ret = i;
- cur_fov = fov;
+ cur_fov = distance;
}
}
|
