✓ Accepted answer
I took this script i found eventualy when i wanted a fly script too, too make sure nobody thinks im copying, ill say he let me use it and this person's YouTube Account Name is 'RyukoPlays'
and thats all i know.
script (huge)
local Player = script.Parent.Parent
local Character = Player.Character or Player.CharacterAdded:Wait()
local Humanoid = Character:WaitForChild("Humanoid")
local Anim = Instance.new("Animation")
Anim.AnimationId = "rbxassetid://02882200867"
local PlayAnim = Humanoid:LoadAnimation(Anim)
local Anim2 = Instance.new("Animation")
Anim2.AnimationId = "rbxassetid://02882221865"
local PlayAnim2 = Humanoid:LoadAnimation(Anim2)
local HumaoidRP = Character:WaitForChild("HumanoidRootPart")
local UIS = game:GetService("UserInputService")
local Mouse = Player:GetMouse()
local TapTime = .25
local Tapped = false
local Toggle = false
UIS.InputBegan:Connect(function(Input)
if Input.KeyCode == Enum.KeyCode.Space then
if not Tapped then
Tapped = true
wait(TapTime)
Tapped = false
else
if Toggle == false then
local Jump = Instance.new("BodyVelocity",HumaoidRP)
Jump.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
Jump.Velocity = Vector3.new(0,50,0)
game.Debris:AddItem(Jump,.5)
wait(.5)
HumaoidRP.Anchored = true
PlayAnim2:Play()
Toggle = true
elseif Toggle == true then
Toggle = false
PlayAnim2:Stop()
HumaoidRP.Anchored = false
local Children = HumaoidRP:GetChildren()
for i, child in pairs(Children) do
if child:IsA("BodyVelocity") then
child:Destroy()
end
end
end
end
end
end)
UIS.InputBegan:Connect(function(Input)
if Input.KeyCode == Enum.KeyCode.W then
if Toggle == false then return end
PlayAnim:Play()
HumaoidRP.Anchored = false
if HumaoidRP:FindFirstChildOfClass("BodyVelocity") then
HumaoidRP:FindFirstChildOfClass("BodyVelocity"):Destroy()
end
local Forward = Instance.new("BodyVelocity",HumaoidRP)
Forward.Name = "ForwardMovement"
Forward.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
local Gyro = Instance.new("BodyGyro",HumaoidRP)
Gyro.MaxTorque = Vector3.new(math.huge,math.huge,math.huge)
Gyro.D = 100
Gyro.P = 10000
while Toggle == true do
Forward.Velocity = Mouse.Hit.lookVector*150
Gyro.CFrame = Mouse.Hit
wait()
end
end
end)
UIS.InputEnded:Connect(function(Input)
if Input.KeyCode == Enum.KeyCode.W then
if Toggle == false then return end
if HumaoidRP:FindFirstChild("ForwardMovement") then
HumaoidRP.ForwardMovement:Destroy()
HumaoidRP.Anchored = true
PlayAnim:Stop()
if HumaoidRP:FindFirstChildOfClass("BodyGyro") then
HumaoidRP:FindFirstChildOfClass("BodyGyro"):Destroy()
end
end
end
end)
UIS.InputBegan:Connect(function(Input)
if Input.KeyCode == Enum.KeyCode.S then
if Toggle == false then return end
HumaoidRP.Anchored = false
if HumaoidRP:FindFirstChildOfClass("BodyVelocity") then
HumaoidRP:FindFirstChildOfClass("BodyVelocity"):Destroy()
end
local Back = Instance.new("BodyVelocity",HumaoidRP)
Back.Name = "BackMovement"
Back.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
local Gyro = Instance.new("BodyGyro",HumaoidRP)
Gyro.MaxTorque = Vector3.new(math.huge,math.huge,math.huge)
Gyro.D = 100
Gyro.P = 10000
while Toggle == true do
Back.Velocity = Mouse.Hit.lookVector*-100
Gyro.CFrame = Mouse.Hit
wait()
end
end
end)
UIS.InputEnded:Connect(function(Input)
if Input.KeyCode == Enum.KeyCode.S then
if Toggle == false then return end
if HumaoidRP:FindFirstChild("BackMovement") then
HumaoidRP.BackMovement:Destroy()
HumaoidRP.Anchored = true
if HumaoidRP:FindFirstChildOfClass("BodyGyro") then
HumaoidRP:FindFirstChildOfClass("BodyGyro"):Destroy()
end
end
end
end)
put this in a local script inside StarterPack Folder. Change the Animations as well, i made my own, just replace them or use them, i really dont care, ill allow it. This is the best fly script i got.
4 comments
disable hat collision and use body thurst thingies to boost yourself in the air
Use body movers.
XD body movers XD no such thing
workspace.Gravity = 0