summaryrefslogtreecommitdiff
path: root/cheat/gmod/aimbot.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'cheat/gmod/aimbot.hpp')
-rw-r--r--cheat/gmod/aimbot.hpp38
1 files changed, 38 insertions, 0 deletions
diff --git a/cheat/gmod/aimbot.hpp b/cheat/gmod/aimbot.hpp
new file mode 100644
index 0000000..5b6ad5f
--- /dev/null
+++ b/cheat/gmod/aimbot.hpp
@@ -0,0 +1,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 );
+ };
+}