Advertisement
Guest User

Fast Fly script item

a guest
Sep 15th, 2019
6,521
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.58 KB | None | 0 0
  1. wait();
  2.  
  3. local MaxFlySpeed = 100 -- change this as needed
  4.  
  5. local UIS = game:GetService("UserInputService")
  6. local LocalPlayer = game:GetService("Players").LocalPlayer
  7. local Torso = (LocalPlayer.Character and LocalPlayer.Character:WaitForChild("Torso"))
  8. local Mouse = LocalPlayer:GetMouse()
  9. local Tool = Instance.new("Tool")
  10. Tool.RequiresHandle = false
  11. Tool.Name = "Fly tool"
  12.  
  13. assert(Torso.ClassName == "Part", "Yikes! Torso is not a part.")
  14.  
  15. local ToolUtils do
  16. ToolUtils = {
  17. --// Setup Vars
  18. Enabled = false,
  19. WindowFocused = true,
  20.  
  21. Keys = {},
  22. InternalVars = {
  23. FlyForward = 0,
  24. FlyBackward = 0
  25. }
  26. }
  27. end
  28.  
  29. local ToolEvents do
  30. Tool.Equipped:connect(function(Mouse)
  31. ToolUtils.Enabled = true
  32. Torso.Anchored = true
  33. end)
  34. Tool.Unequipped:connect(function(...)
  35. ToolUtils.Enabled = false
  36. Torso.Anchored = false
  37. end)
  38. UIS.InputBegan:connect(function(input, processedEvent)
  39. ToolUtils.Keys[input.KeyCode] = true
  40. end)
  41. UIS.InputEnded:connect(function(input, processedEvent)
  42. ToolUtils.Keys[input.KeyCode] = nil
  43. end)
  44. UIS.WindowFocusReleased:connect(function()
  45. ToolUtils.WindowFocused = false
  46. end)
  47. UIS.WindowFocused:connect(function()
  48. ToolUtils.WindowFocused = true
  49. end)
  50. end
  51.  
  52. --// Main Event
  53. game:GetService("RunService").RenderStepped:connect(function(...)
  54. if ToolUtils.WindowFocused and ToolUtils.Enabled then
  55. if ToolUtils.Keys[Enum.KeyCode.W] then
  56. if ToolUtils.InternalVars.FlyForward < MaxFlySpeed then
  57. ToolUtils.InternalVars.FlyForward = ToolUtils.InternalVars.FlyForward + 0.7
  58. end
  59. else
  60. ToolUtils.InternalVars.FlyForward = ToolUtils.InternalVars.FlyForward * 1.0
  61. end
  62. if ToolUtils.Keys[Enum.KeyCode.S] then
  63. if ToolUtils.InternalVars.FlyBackward < MaxFlySpeed then
  64. ToolUtils.InternalVars.FlyBackward = ToolUtils.InternalVars.FlyBackward + 0.7
  65. end
  66. else
  67. ToolUtils.InternalVars.FlyBackward = ToolUtils.InternalVars.FlyBackward * 1.0
  68. end
  69.  
  70. local Camera = workspace.CurrentCamera
  71. Torso.CFrame = Torso.CFrame:lerp(
  72. CFrame.new(Torso.Position, Camera.CFrame.p)
  73. * CFrame.Angles(0, math.rad(180), 0)
  74. * CFrame.new(0, 0, -(ToolUtils.InternalVars.FlyForward - ToolUtils.InternalVars.FlyBackward))
  75. * CFrame.Angles(-(math.rad(10 * (ToolUtils.InternalVars.FlyForward / MaxFlySpeed)) - math.rad(10 * (ToolUtils.InternalVars.FlyBackward / MaxFlySpeed))), 0, 0)
  76. , 0.9)
  77. end
  78. end)
  79.  
  80. Tool.Parent = LocalPlayer:findFirstChild("Backpack") or Instance.new("Backpack", LocalPlayer)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement