Character Moves Backwards when equipping tool

Whenever i equip the tool (While moving) it will make my character teleport backwards just a little.

Neither Parts are Anchored & CanCollide is off

Tool = script.Parent
LSword = script.Parent.LeftSword
RSword = script.Parent.RightSword

Tool.Equipped:Connect(function()
local RArm = Tool.Parent:FindFirstChild(“Right Arm”)
RSword.CFrame = RArm.CFrame * CFrame.new(0,-.6,-1.5) * CFrame.Angles(math.rad(180),0,math.rad(90))
local weld = Instance.new(“Weld”)
weld.Part0 = RArm
weld.Part1 = RSword
weld.C0 = RArm.CFrame:Inverse()
weld.C1 = RSword.CFrame:Inverse()
weld.Parent = script.Parent

local LArm = Tool.Parent:FindFirstChild("Left Arm")
LSword.CFrame = LArm.CFrame * CFrame.new(0,-.6,-1.5) * CFrame.Angles(math.rad(180),0,math.rad(90))
local weld = Instance.new("Weld")
weld.Part0 = LArm
weld.Part1 = LSword
weld.C0 = LArm.CFrame:Inverse()
weld.C1 = LSword.CFrame:Inverse()
weld.Parent = script.Parent

end)

Are all the parts massless? If not that could be one of the reasons. Also is the code on the client or server?

also a good tip is to make the welds before hand with all the position you need and then when you clone the sword you can just set the welds Part1 to the arm or part you were welding it too. So you dont have to do everything like making the welds and setting its position in the code.

Its a script inside a tool inside the starterpack

Changed the script and it solved that problem, but its completely dissapearing after a couple seconds.