Equipping delay with Motor6D

My game had very few tools that had Motor6Ds didn’t put the Part0 to nil after unequipping. Soon, there’s going to be an update with another tool that will have to be used with this one, and if I don’t fix it, it’ll just make the tools go through the land and not connect.

Now, I have it fixed, but it has a small delay when equipped. It’ll be positioned where you last equipped it, then teleport to where the Motor6D connects it to.


module.Connect = function(sp)
	if sp.Parent:FindFirstChild("Right Arm") then
		if sp.Parent["Right Arm"]:FindFirstChild("RightGripAttachment") and sp.Parent["Right Arm"]:FindFirstChild("RightShoulderAttachment") then
			sp.Parent["Right Arm"].RightGripAttachment:Destroy()
			sp.Parent["Right Arm"].RightShoulderAttachment:Destroy()
		sp.Parent["Right Arm"].Motor6D.Part0 = sp.BodyAttach

module.Disconnect = function(char)
	if char:FindFirstChild("Right Arm") then
		char["Right Arm"].Motor6D.Part0 = nil

Note the module.Connect runs when the tool equips and module.Disconnect runs when the tool unequips.

It runs perfectly fine, just a delay when equipped :wink:

Note it isn’t my device I have a gamer’s computer
Also, the Motor6D is created on character added