Are you sure script.Punch
is the correct path for the animation.
Instead of using wait(1), you should just wait for character to load in. It might take over a second.
local punch = script.Punch
local player = game.Players.LocalPlayer
local char = player.Character or player.CharacterAdded:Wait()
local hum = char:WaitForChild("Humanoid")
1 Like
Well, from what I can tell, it seems like that is a server script.
Server scripts cannot find the player, so you should do a local script instead.