I need an animation I made to trigger when this button is pressed, and it works by using:
local animTrack = hum:LoadAnimation(script.Punch)
animTrack:Play()
wait(0.6)
animTrack:Stop()
But it messes up the cooldown on the script, and allows the skill to be used 2 times in a row before the cooldown happens. Anyone have any ideas?
local Player = game.Players.LocalPlayer
local mouse = Player:GetMouse()
local lastUse = 0;
local char = Player.Character
local hum = char.Humanoid
local function onKeyDown(key)
local Key = key:lower()
if key == "z" and Player.Levelss.Level.Value >= 15 and tick()-lastUse > 10 and Player.Levelss.RangedPunch.Value < 1 then
local x = Instance.new("Part")
x.BrickColor = BrickColor.new("White")
x.Material = "Neon"
x.CanCollide = false
x.Transparency = 0.6
x.Size = Vector3.new(10,10,10)
x.TopSurface = "Smooth"
x.BottomSurface = "Smooth"
x.Shape = "Ball"
x.Name = Player.Name
local fd = script.fireDamage:clone()
fd.Parent = x
local a = Instance.new("Sound")
a.SoundId = "http://www.roblox.com/asset/?id=260430117"
a.Parent = x
a.Volume = 2
a:play()
Player.Levelss.XP.Value = Player.Levelss.XP.Value + 8
local y = Instance.new("BodyVelocity")
y.maxForce = Vector3.new(math.huge ,math.huge ,math.huge)
y.velocity = Player.Character.Torso.CFrame.lookVector*95
x.CFrame = Player.Character.Torso.CFrame*CFrame.new(0, 1 , -10)
x.Parent = Workspace
y.Parent = x
game.Debris:AddItem(x, 6)
lastUse = tick();
end
end
mouse.KeyDown:connect(onKeyDown)

2 comments
Yes, thank you for taking the time to post that edit, it was very easy to understand and worked great! The only thing I had to change was where animTrack was defined, I had to move local animTrack to be right above where it Plays and stops the animation. Apart from that, you're a life saver! Thanks so much!
Are you getting "Huamnoid needs to be a in workspace" or something like that? If so, repeat wait() until char.Parent == workspace. Doing it the way you're doing it isn't good :c