In the making of a hose thingy

Hello there roblox! Back with a second post about the same topic but now I have an new problem, the problem is with the rope attachment I have between the tool and pump because I’m always getting tragged towards the pump meaning I don’t get it to look smooth and always weirdly curvy I tried using magnitude in a loop to get the distance between player and pump using .position)magnitude but still it throws me back and all do you know why that is or how to fix it?

Here’s the current code I’m using;
´´´
local function two(player)
local db = false
local tool = nil

local Storage = game.ServerStorage
local Find = player.Backpack:FindFirstChild("Angriff")

if not Find then
	db = true
	tool = Storage.Angriff
	tool.Parent = player.Backpack
	script.Parent.RopeConstraint.Attachment1 = tool.AttachmentPart.HoseAttachment
	while db == true do
		script.Parent.RopeConstraint.Length = (script.Parent.Position - tool.AttachmentPart.Position).Magnitude
		wait()
	end
end

end
script.Parent.ClickDetector.MouseClick:Connect(two)
´´´

This would reduce the size of the rope.

Instead you should set it to be the magnitude with a small addition to create a bit of slack (magnitude from start of rope to tool)

The problem is that if you stand still it’s not straight there always is slack but not enough to let you walk free