there's a character and humanoid varible, but everytime I tried to use this, it would always say humanoid needs to be a descendant of game object to use loadanimation, or something along those lines.
local start = humanoid:LoadAnimation(Character:WaitForChild("Animations"):WaitForChild("MagicStart"))
You haven't given it enough time to load for the humanoid, or as so I think. Do this, then run that.
(variable):WaitForChild('humanoid') local start = humanoid:LoadAnimation(Character:WaitForChild("Animations"):WaitForChild("MagicStart"))
So, often times people do this:
local plr = game.Players.LocalPlayer local char = plr.Character or plr.CharacterAdded:Waiti() local humanoid = char:WaitForChild("Humanoid") local animationTrack = humanoid:LoadAnimation(x)
However, this doesn't work often times.
The reason why is that, even though the player has a character, the character doesn't get put into workspace by the game instantly. So simply use this:
-- local script local plr = game.Players.LocalPlayer local char = plr.Character or plr.CharacterAdded:Waiti() local humanoid = char:WaitForChild("Humanoid") char.Parent = workspace local start = humanoid:LoadAnimation(char:WaitForChild("Animations"):WaitForChild("MagicStart")) -- when you want: start:Play()