What did you do to fix the issue? I have just implemented the module and everything is working fine except for the release event which is triggered every time to GUI is moved rather then when released.
To add to the above, I have done more testing and it seems that any event I bind to is triggered by every event for every draggable object. That is to say, when the āStartedā event fires by one draggable object, every event connection receives a signal from the āStartedā, "Movedā and āReleasedā event⦠for every draggable object that exists.
I had 16 draggable objects created during this test. Each object was binded to the 3 events that should only exist for that specific object:
Is there something Iām missing here? Is this a problem with the Remote module? On that topic I am curious why the Remote module is even needed⦠whatās wrong with just using Bindable events?
Switching out usage of the Remote module with BindableEvents has fixed the problem so Iām fairly confident there is some issue with the Remote module.
Hey, sorry for the slight bump, but every time I call :Destroy() on the draggable class, i get this error
hereās my code:
local CurrentDraggable
local function OpenUI()
Gui.Enabled = true
AppearTween:Play()
CurrentDraggable = DraggableUI.new(MainFrame)
CurrentDraggable:Ignore(IgnoreObjects) -- Allow the frame to be draggable
end
-- Main
-- Set ignored objects for UI
for i, Object in pairs(MainFrame:GetDescendants()) do
if Object:IsA("TextBox") or Object:IsA("GuiButton") or Object:IsA("ScrollingFrame") then
table.insert(IgnoreObjects, Object)
end
end
CloseButton.MouseButton1Click:Connect(function()
MainFrame.GroupTransparency = 1
Gui.Enabled = false
CurrentDraggable:Destroy()
end)
MainFrame.GroupTransparency = 1
OpenUI()
OpenUIEvent.OnClientEvent:Connect(function(GuiName)
if Gui.Name == GuiName then
OpenUI()
end
end)
Thank you so much for this, actual life saver.