local UserInputService = game:GetService("UserInputService")
local Player = game.Players.LocalPlayer
local Mouse = Player:GetMouse()
local debounce = false
local Keybind = script:WaitForChild("Keybind").Value
local BodyGyroTime = false
local AnimationsFolder = game.ReplicatedStorage.Animations
local HoldAnim = AnimationsFolder.Hold
local ReleaseAnim = AnimationsFolder.Release
local HoldAnimLoader
local ReleaseAnimLoader
local BG
local BP
UserInputService.InputBegan:Connect(function(Input, IsTyping)
if not IsTyping then
if Input.KeyCode == Enum.KeyCode[Keybind] then
--- Forces
BodyGyroTime = true
HoldAnimLoader = Player.Character:WaitForChild("Humanoid"):LoadAnimation(HoldAnim)
HoldAnimLoader:Play()
BG = Instance.new("BodyGyro")
BG.MaxTorque = Vector3.new(math.huge,math.huge,math.huge)
BG.P = 15000
BG.Name = "FireBallGyro"
BG.CFrame = CFrame.new(Player.Character.HumanoidRootPart.Position, Mouse.Hit.Position)
BG.Parent = Player.Character:FindFirstChild("HumanoidRootPart")
BP = Instance.new("BodyPosition",Player.Character:WaitForChild("HumanoidRootPart"))
BP.D = 1250
BP.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
BP.P = 10000
BP.Position = Player.Character:WaitForChild("HumanoidRootPart").Position + Vector3.new(0,0.1,0)
game.ReplicatedStorage.Flame:FireServer("FireBallHolding")
spawn(function()
while BodyGyroTime == true do
wait(0.01)
BG.CFrame = CFrame.new(Player.Character.HumanoidRootPart.Position, Mouse.Hit.Position)
end
end)
end
end
end)
UserInputService.InputEnded:Connect(function(Input, IsTyping)
if not IsTyping then
if Input.KeyCode == Enum.KeyCode[Keybind] then
HoldAnimLoader:Stop()
ReleaseAnimLoader = Player.Character:WaitForChild("Humanoid"):LoadAnimation(ReleaseAnim)
ReleaseAnimLoader:Play()
wait(ReleaseAnimLoader.Length)
game.ReplicatedStorage.Flame:FireServer("FireBallFired",Mouse.Hit.Position)
BodyGyroTime = false
local BGDestroy = Player.Character.HumanoidRootPart:WaitForChild("FireBallGyro")
BGDestroy:Destroy()
local BPDestroy = Player.Character.HumanoidRootPart:WaitForChild("BodyPosition")
BPDestroy:Destroy()
end
end
end)
✓ ANSWER ACCEPTED
Could anybody help me add a cooldown into my client sided scipt?
1 answer
✓ Accepted answer
Well what I like to do when I want to add a cooldown to a script is very simple and stupid, but what I do is
Script.Disabled = true
wait("the amount of cooldown time u want")
Script.Disabled = false
and so so so simple and it just works
This discussion is preserved as it was. New answers, comments, and votes are closed.
