Okay, so I made a flying script using Zairky’s Script and so I wanted to make a function so that if I didn’t press the key “w” I would stop flying but would still be in the air. So I made the script but every time I try to fly nothing worked.
Script:
local uis = game:GetService(“UserInputService”)
local rs = game:GetService(“RunService”)
local myPlayer = game.Players.LocalPlayer
local myChar = myPlayer.Character
local myHRP = myChar:WaitForChild(“HumanoidRootPart”)
local camera = game.Workspace.CurrentCamera
local LastTapped, Tapped = false, false
local flyUpSpeed = 20
local flyDownSpeed = 20
local toggle = false
local flying = false
local speed = 0.5
local bp = Instance.new(“BodyPosition”, myHRP)
bp.MaxForce = Vector3.new()
bp.D = 10
bp.P = 10000
local bg = Instance.new(“BodyGyro”, myHRP)
bg.MaxTorque = Vector3.new()
bg.D = 10
function fly()
flying = true
bp.MaxForce = Vector3.new(400000,400000,400000)
bg.MaxTorque = Vector3.new(400000,400000,400000)
while flying do
rs.RenderStepped:wait()
bp.Position = myHRP.Position +((myHRP.Position - camera.CFrame.p).unit * speed)
bg.CFrame = CFrame.new(camera.CFrame.p, myHRP.Position)
uis.InputBegan:connect(function(KeyCode)
if KeyCode == “w” then
if toggle == false then
local bodyGyro = Instance.new (“BodyGyro”)
bodyGyro.MaxTorgue = Vector3.new(0, 0, 0)
bodyGyro.P = (10^6)
local bodyVel = Instance.new("BodyVelocity")
bodyVel.MaxForce = Vector3.new(0, 0, 0)
bodyVel.P = (10^4)
end
end
Could someone tell me what I’m doing wrong?