Custom tool's idle animation gets overriden?

I am creating a melee tool that has a custom idle/inactive pose. I have done this by replacing the toolnone animation in the default Animate script:

Character:WaitForChild("Animate").toolnone.ToolNoneAnim.AnimationId = AnimationIdle.AnimationId

However, the idle animation seems to be overridden shortly after the player spawns, is given the tool, and has the animation inserted. Here’s the issue in action (apologies for the terrible quality):
idleissue

Swinging with the tool doesn’t seem to break the idle animation, so I don’t really know what’s causing this. The animation’s priority is Movement. Is there a way to fix this, or should I use a different method?

I’ve found the root of the problem: the toolnone animation isn’t being looped! Would there be a way to make the animation loop without having to create a custom version of the Animate script?