Hello,
I’ve spent quite some time today messing around trying to figure out the most efficient way to have a player hold a tool on it’s left side. I’ve managed to work something out, though I’m not to pleased as there’s quite the delay upon equipping the tool.
Script
script.Parent.Equipped:Connect(function()
local character = script.Parent.Parent
local Animator = character.Animate
local Animation = Instance.new("Animation")
Animation.AnimationId = "http://www.roblox.com/asset/?id=7021848701"
Animation.Name = "ToolNone"
Animation.Parent = Animator.toolnone
Animator.toolnone.ToolNoneAnim.Parent = Animator
character["Right Arm"]:WaitForChild("RightGrip"):Destroy()
local motor = Instance.new("Motor6D", script.Parent.Handle)
motor.Part0 = character["Left Arm"]
motor.Part1 = script.Parent.Handle
end)
script.Parent.Unequipped:Connect(function()
local character = script.Parent.Parent.Parent.Character
local Animate = character.Animate
Animate.toolnone.ToolNone:Destroy()
Animate.ToolNoneAnim.Parent = Animate.toolnone
end)
The way it works is, the script welds the Handle of the tool to the players left arm, and a WeldConstraint attaches the tool to it. The script also lowers the right arm and allows it to move like normal when the player walks, whilst also playing an animation to keep the players left arm still.
If anyone has a better way of doing this it’d be appreciated!
Thanks