Advertisement
ZernaxLeDozo

Untitled

Jun 27th, 2019
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.12 KB | None | 0 0
  1. local gnode_strafe = { }
  2. gnode_strafe.MetaPlayer = FindMetaTable( "Player")
  3. gnode_strafe.oldKeyDown = gnode_strafe.MetaPlayer['KeyDown']
  4. gnode_strafe.On = false
  5. gnode_strafe.SOn = true
  6. gnode_strafe.Hooks = { hook = { }, gnode = { } }
  7. gnode_strafe.jump = false
  8. function gnode_strafe.AddHook(bhop, gnode, func)
  9. table.insert( gnode_strafe.Hooks.hook, bhop )
  10. table.insert( gnode_strafe.Hooks.gnode, gnode )
  11. hook.Add( bhop, gnode, func )
  12. end
  13. gnode_strafe.MetaPlayer['KeyDown'] = function( self, key )
  14. if self ~= LocalPlayer() then return end
  15.  
  16. if (key == IN_MOVELEFT) and gnode_strafe.left then
  17. return true
  18. elseif (key == IN_MOVERIGHT) and gnode_strafe.right then
  19. return true
  20. elseif (key == IN_JUMP) and gnode_strafe.jump then
  21. return true
  22. else
  23. return gnode_strafe.oldKeyDown( self, key )
  24. end
  25. end
  26.  
  27. local oldEyePos = LocalPlayer():EyeAngles()
  28. function gnode_strafe.CreateMove( cmd )
  29. gnode_strafe.jump = false
  30. if (cmd:KeyDown( IN_JUMP )) then
  31.  
  32. if (not gnode_strafe.jump) then
  33. if (gnode_strafe.On and not LocalPlayer():OnGround()) then
  34. cmd:RemoveKey( IN_JUMP )
  35. end
  36. else
  37. gnode_strafe.jump = false
  38. end
  39.  
  40. if(gnode_strafe.SOn ) then--auto strafer
  41. local traceRes = LocalPlayer():EyeAngles()
  42.  
  43. if( traceRes.y > oldEyePos.y ) then
  44. oldEyePos = traceRes
  45. cmd:SetSideMove( -1000000 )
  46. gnode_strafe.left = true
  47. gnode_strafe.right = false
  48. elseif( oldEyePos.y > traceRes.y ) then
  49. oldEyePos = traceRes
  50. cmd:SetSideMove( 1000000 )
  51. gnode_strafe.right = true
  52. gnode_strafe.left = false
  53. end
  54. end
  55. elseif (not gnode_strafe.jump) then
  56. gnode_strafe.jump = true
  57. end
  58. end
  59.  
  60. gnode_strafe.AddHook( "CreateMove", tostring(math.random(0, 133712837)), gnode_strafe.CreateMove )
  61.  
  62. concommand.Add( "gnode_strafe", function ()
  63. gnode_strafe.On = not gnode_strafe.On
  64. local state = "off"
  65. if gnode_strafe.On then state = "on" end
  66. chat.AddText(Color(204, 40, 40, 255), "[", Color(23, 196, 134, 255), "Bhop", Color(204, 40, 40, 255), "]" .. " ", Color(33, 167, 196, 255), state)
  67. end)
  68.  
  69. concommand.Add( "gnode_strafe_strafe", function ()
  70. gnode_strafe.SOn = not gnode_strafe.SOn
  71. local state = "off"
  72. if gnode_strafe.SOn then state = "on" end
  73. chat.AddText(Color(204, 40, 40, 255), "[", Color(23, 196, 134, 255), "strafe", Color(204, 40, 40, 255), "]" .. " ", Color(33, 167, 196, 255), state)
  74. end)
  75.  
  76. concommand.Add("gnode_strafe_unload", function()
  77. for i = 1, #gnode_strafe.Hooks.hook do
  78. hook.Remove( gnode_strafe.Hooks.hook[i], gnode_strafe.Hooks.gnode[i] )
  79. print( "Unhooked "..gnode_strafe.Hooks.hook[i].." using gnode "..gnode_strafe.Hooks.gnode[i] )
  80. end
  81.  
  82. concommand.Remove("gnode_strafe_strafe")
  83. concommand.Remove("gnode_strafe")
  84. concommand.Remove( "gnode_strafe_unload" )
  85. gnode_strafe = nil
  86.  
  87. chat.AddText(Color(204, 40, 40, 255), "[", Color(23, 196, 134, 255), "Autostrafe", Color(204, 40, 40, 255), "]" .. " ", Color(33, 167, 196, 255), "has been unloaded!")
  88. end)
  89.  
  90. chat.AddText(Color(204, 40, 40, 255), "[", Color(23, 196, 134, 255), "Autostrafe", Color(204, 40, 40, 255), "]" .. " ", Color(33, 167, 196, 255), "initialized!")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement