Just tested it on the uncopylocked place I provided you and for some reason it’s working there but it’s not working in my main place even though they are literally the same script.
Are there any errors or warning in console? Or is the clickdetector possibly being deleted at some point by another script in your game? Check for any scripts that also could be messing with the mask.
I’ve fixed the problem, it was with the module returning a function which basically stopped the code. Also your module was useless since you never used it properly.
Call the module:
--[[Scripted by daZau_nis#9283]]--
local module require(script.GameInit)
module.loopObject()
Module:
local module = {}
function module.loopObject()
for _, object in next, workspace.Givers.ClickDetector:GetChildren() do
if object.Name == "MonkeyMask" then
object.ClickDetector.MouseClick:Connect(function(Player)
local character = Player.Character
if not character:FindFirstChild("MonkeyMask") then
local newMask = object:Clone()
local weld = Instance.new("WeldConstraint")
newMask.Parent = character
newMask.CFrame = character.Head.CFrame
weld.Part0 = character.Head
weld.Part1 = newMask
weld.Parent = newMask
end
end)
end
end
end
return module