summaryrefslogtreecommitdiff
path: root/tf2/movement.cpp
diff options
context:
space:
mode:
authorJustSomePwner <crotchyalt@gmail.com>2018-08-30 14:01:54 +0200
committerJustSomePwner <crotchyalt@gmail.com>2018-08-30 14:01:54 +0200
commit7ccb819f867493f8ec202ea3b39c94c198c64584 (patch)
tree94622e61af0ff359e3d6689cf274d74f60b2492a /tf2/movement.cpp
parent564d979b79e8a5aaa5014eba0ecd36c61575934f (diff)
first
Diffstat (limited to 'tf2/movement.cpp')
-rw-r--r--tf2/movement.cpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/tf2/movement.cpp b/tf2/movement.cpp
new file mode 100644
index 0000000..e1dd335
--- /dev/null
+++ b/tf2/movement.cpp
@@ -0,0 +1,41 @@
+#include "movement.h"
+#include "interfaces.h"
+#include "settings.h"
+
+namespace features {
+ void c_movement::bhop( ) {
+ if( !g_settings.misc.bunny_hop )
+ return;
+
+ if( g_ctx.m_local->m_nMoveType( ) == MOVETYPE_LADDER ||
+ g_ctx.m_local->m_nMoveType( ) == MOVETYPE_NOCLIP )
+ return;
+
+ //jump like you nohat -> WELL THERES FUCKING HATS IN THIS GAME ISNT THERE CUNT
+ if( m_cmd->m_buttons & IN_JUMP && !( g_ctx.m_local->m_fFlags( ) & FL_ONGROUND ) ) {
+ m_cmd->m_buttons &= ~IN_JUMP;
+ }
+ }
+
+
+ //ehhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh lazy
+ void c_movement::autostrafe( ) {
+ if( !g_settings.misc.auto_strafe )
+ return;
+
+ float velocity = g_ctx.m_local->m_vecVelocity( ).length2d( );
+ auto cmd = g_ctx.get_last_cmd( );
+
+ if( cmd && m_cmd->m_buttons & IN_JUMP && velocity > 1.0f ) {
+ if( !cmd->m_forwardmove && !cmd->m_sidemove ) {
+ if( !cmd->m_mousedx ) {
+ cmd->m_forwardmove = std::min< float >( 450.f, 5850.f / velocity );
+ cmd->m_sidemove = ( m_cmd->m_cmd_nr % 2 ) == 0 ? -450.f : 450.f;
+ }
+ else {
+ cmd->m_sidemove = m_cmd->m_mousedx < 0.f ? -450.f : 450.f;
+ }
+ }
+ }
+ }
+}