How to make a GUI Frame draggable with a delay

Hey Guys! I was wondering how to make a delayed draggable GUI. Meaning, when someone tries to drag the GUI, it starts dragging but is a bit behind the mouse. If anyone can help me with this issue that would be great! Thanks.

While I’m not sure if this would accomplish the delay aspect of it, there is a community resource/module that may be useful for part of the process involved in achieving draggable GuiObjects:

You can make something draggable via a local script by doing Frame.Draggable although even though it makes it draggable it doesnt give the delayed aspect of it. Your answer like you said doesnt create the delayed effect. I appreciate your answer though.

1 Like

The Draggable property is deprecated so it’s not advised to use that in newer work (since it could be removed at any point), as noted by its Developer Hub page.

That’s true. Its weird though. Ive seen this delayed draggable style done in many GUIs, yet I can never find anything online about how to make it.

1 Like

(does not work anymore, it’s more buggy compared to back then)

1 Like

Yeah, so this isn’t right at all… Next time, please test your code before providing a solution.

All you have to do is replace 1 line of code in the DraggableObject module.

Replace this line:

object.Position = newPosition

With this one:

TweenService:Create(object, tweenInfo, {Position = newPosition}):Play()

(Apologies for the necrobump, I was trying to do something similar to OP and wanted to provide a working solution here.)