blob: 5b6ad5f370fa52b84cb388015ed41222d0c49714 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#pragma once
#include <deque>
#include <memory>
#include <map>
#include "sdk.hpp"
#include "console.hpp"
namespace features
{
class c_aimbot
{
public:
c_aimbot( ) = default;
private:
struct aim_target_t
{
int m_ent_index;
vec3_t m_position;
};
vec3_t m_shot_dir{ }, m_last_viewangles{ };
user_cmd_t* m_cmd{ };
std::map< const char*, vec3_t > m_spread{ }; // sorry not sorry
void run( );
aim_target_t find_best_target( ) const;
vec3_t get_entity_position( c_base_player* ent ) const;
void aim_at_target( const aim_target_t& target );
void fix_accuracy( vec3_t& angle );
public:
void operator()( user_cmd_t* cmd );
void silent( );
void log_shot( c_base_player* local, fire_bullets_info* info );
};
}
|