Я делаю скрипт полета для использования в ProtoSmasher, и он работает не так, как задумано. Я хочу, чтобы он имел кнопку переключения (G), а затем мог летать с кнопкой (W). Вместо этого, чтобы заставить его работать, я должен удерживать W, а затем нажать G; но если я попытаюсь отпустить w, чтобы остановиться в воздухе, мне придется снова нажать G.
local plr = game:GetService("Players").LocalPlayer
local char = plr.Character
local hum = char.Humanoid
local Torso = char.HumanoidRootPart
local Mouse = plr:GetMouse()
local toggle = false
local wToggle = false
Mouse.KeyDown:Connect(function(key)
if key == "w" then
wToggle = true
end
if key == "g" then
if toggle == false then
toggle = true
local BV = Instance.new("BodyVelocity",Torso)
BV.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
while wToggle == true do
BV.Velocity = Mouse.Hit.lookVector*200
wait()
end
end
if toggle == true then
toggle = false
Torso:FindFirstChildOfClass("BodyVelocity"):remove()
end
end
end)
Mouse.KeyUp:Connect(function(key)
if key == "w" then
wToggle = false
end
end)