I thought as much. All animations are set to Enum.AnimationPriority.Action.
This is how I “preload” my animations.
-- In a module script
local tool1 = {}
-- Animation References
-- Format: {id, Looped, Priority, Speed, name}
tool1.Animations = {
["Idle"] = {animationid, true, Enum.AnimationPriority.Action, 2, "Idle"},
["Guard"] = {animationid, false, Enum.AnimationPriority.Action, 2, "Guard"},
["Sprinting"] = {animationid, true, Enum.AnimationPriority.Action, 1, "Sprinting"},
["Aiming"] = {animationid, true, Enum.AnimationPriority.Action, 1, "Aiming"},
["Reloading"] = {animationid, false, Enum.AnimationPriority.Action, 3, "Reloading"},
["Firing"] = {animationid, false, Enum.AnimationPriority.Action, 1, "Firing"},
["Equip"] = {animationid, false, Enum.AnimationPriority.Action, 3, "Equip"},
["Unequip"] = {animationid, false, Enum.AnimationPriority.Action, 3, "Unequip"},
["Walking"] = {animationid, true, Enum.AnimationPriority.Action, 1, "Walking"},
["Roll"] = {animationid, false, Enum.AnimationPriority.Action, 1, "Roll"},
["Jump"] = {animationid, false, Enum.AnimationPriority.Action, 1, "Jump"}
}
return tool1
-- In a local script
function toolAnimations_populate(tab) -- tab is the module script relating to that tool
table.insert(toolAnimations,1,currentTool) -- toolAnimations is a table in the same script defined above
toolAnimations[currentTool] = {}
-- Format: {id, Looped, Priority, Speed}
for i,v in pairs(tab.Animations) do
toolAnimations[currentTool][i] = function()
local animation = Instance.new("Animation")
animation.AnimationId = 'rbxassetid://'..tostring(v[1])
local animationTrack = Humanoid:LoadAnimation(animation)
animationTrack.Looped = v[2]
animationTrack.Priority = v[3]
animationTrack:AdjustSpeed(v[4])
animationTrack.Name = v[5]
animationTrack:Play()
end
end
end