Hey everyone! I’ve got quite a fiasco going on right now…
I’m creating a retro style game that’s recreating “Work at a Pizza Place” but in a 2010-2012 style.
Currently, I’m experiencing an issue with CloneTrooper1019’s move tool, specifically it not welding in Roblox Studio, but then welding while in the Roblox Player.
CloneTrooper1019’s Original Building Tools: https://www.roblox.com/library/1148735607/Classic-Build-Tools
So basically, every time you let go of a part after dragging it, it welds automatically to the part it was dragged onto. So to counteract this, I created a script that detects when a weld is added to the part, and it then removes it.
-- AntiJoints script
local RunService = game:GetService("RunService")
local mainPart = script.Parent
mainPart.ChildAdded:Connect(function(part)
RunService.Heartbeat:Wait()
if part:IsA("Weld") then
mainPart:BreakJoints() -- Destroys the weld
end
end)
The odd thing is, this works in Studio as seen here:
But while in the Roblox Player, it doesn’t work, as seen here:
I honestly have no idea what’s going on.
I’ve tried multiple remedies, such as printing the part’s current joints using :GetConnectedParts() repeatedly, which was to no avail.
I also messed around with the material type and surfaces to see if that changed anything; it did not.
My theory, however, is since these building tools use the Dragger class, I feel that the :MouseUp() event in some way is welding these parts in a way that’s unchangeable or perhaps not replicated to the client or server while in the Roblox Player.
Though, I don’t see how this could be as I tested this in studio on a local 1 player server and it worked fine on both the client and server ends.
Thanks in advance to any help!