its more like the part is a blackhole and if u press a button with userinputservice then it will drag the player who presses the button i dont have any idea on how to do that
Idk but, for gui's you could do
script.Parent.MouseButton1Click:Connect(function() workspace.Player:MoveTo(Vector3.new(0,0,0)) -- Change player to your username.