Why is my Motor6D animation being weird

You can write your topic however you want, but you need to answer these questions:

  1. What do you want to achieve? Keep it simple and clear!
    i want to make it so the HoldAnimation does not be overlapped by my walk,jump, and idle animations when not holding a tool

  2. What is the issue? Include screenshots / videos if possible!
    so the issue is that when i equip the weapon it’s HoldAnimation gets overlapped by my Idle,Walk, and jump animations, or the HoldAnimation DOES play but afer playing for a bit the idle anim plays, this occured once the animation update came out, here are some pictures.
    image
    image

  3. What solutions have you tried so far? Did you look for solutions on the Developer Hub? i tried to disable AnimationBlendFix, some Motor6D tool tutorials/posts, tried getting help from a few people but stuck with the original script, and tried making the HoldAnimation to the highest priority known as Action.

tool.Equipped:Connect(function()
	character = tool.Parent
	humanoid = character:FindFirstChildWhichIsA("Humanoid")
	local animator = humanoid:WaitForChild("Animator")

	local grip = Instance.new("Motor6D")
	grip.Parent = character:FindFirstChild("Right Arm")
	grip.Part0 = character:FindFirstChild("Right Arm")
	grip.Part1 = tool.FakeHandle
	grip.C0 = CFrame.new(0,0,0)
	grip.C1 = CFrame.new(0,0,0)

	HoldAnimationTrack = animator:LoadAnimation(script.HoldAnimation)
	HoldAnimationTrack.Priority = Enum.AnimationPriority.Movement
	HoldAnimationTrack.Looped = true

	SwingAnimationTrack = animator:LoadAnimation(script.SwingAnimation)
	SwingAnimationTrack.Priority = Enum.AnimationPriority.Action
	SwingAnimationTrack.Looped = false

	HoldAnimationTrack:Play()
	EquipSound:Play()
end)
1 Like

and to add on the bat does move as it’s playing the animation but the right arm doesn’t stay in the same place.

I explained this to you on discord, it’s not hard you’re just replacing the animationid in the players animate local script, you just had to change the capitalizations of the “character” to “Character” on the script I gave you.

yeah i knew that but i was overwhelmed by the point and went to sleep, but i’ll continue rn.

and nothing changed at all it’s rather more of a downgrade i say with the tool since it doesn’t spawn in the players arm anymore

Show me the script so I can see what’s wrong

lemme try fixing it myself first then I’ll show you if i can’t fix it

When the bat is unequipped make sure you set whichever part is connect to the bat to nil

also another thing is that the HoldAnim only plays when i walk but i want it to play when im not moving.

would deleting it be fine aswell?

That’s what I’m trying to help you do.

fixed your Character problem, AKA the Motor6D not going into the right arm

Good job, but does it work now?

Congradulations: you made my problem even worse i would say

The problem: Bat won’t go on players hand, solution: idk

and now i made it worse for myself

Can you show me the script already

yeah `
tool.Activated:Connect(swing)

tool:WaitForChild(“HitboxPart”).Touched:Connect(onTouch)

local player = game.Players.LocalPlayer

local Character = player.Character or player.CharacterAdded:Wait()

tool.Equipped:Connect(function()

local humanoid = Character:FindFirstChildWhichIsA(“Humanoid”)

local animator = humanoid:WaitForChild(“Animator”)

grip = Instance.new(“Motor6D”)

grip.Parent = Character:FindFirstChild(“Right Arm”)

grip.Part0 = Character:FindFirstChild(“Right Arm”)

grip.Part1 = tool.FakeHandle

grip.C0 = CFrame.new(0,0,0)

grip.C1 = CFrame.new(0,0,0)

animatescript = Character:WaitForChild(“Animate”)

animatescript.idle.Animation1.AnimationId = “rbxassetid://9064707337”

animatescript.idle.Animation2.AnimationId = “rbxassetid://9064707337”

SwingAnimationTrack = animator:LoadAnimation(script.SwingAnimation)

SwingAnimationTrack.Priority = Enum.AnimationPriority.Action

SwingAnimationTrack.Looped = false

–idleAnimationTrack:Play()

EquipSound:Play()

end)

tool.Unequipped:Connect(function()

Character:WaitForChild(“Animate”)

grip:Destroy()

animatescript.idle.Animation1.AnimationId = “rbxassetid://9015761559”

animatescript.idle.Animation2.AnimationId = “rbxassetid://9015761559”

end)
`

I’m unable to read this if it’s not in lua format

i could script lol im just dumb lol, the capilization of one word? idk what line you are talking about rn.