Ok so I made this script that gives you a helmet if a bool value is set to true. But the problem is even when I set the bool value to false and reset my character it still gives me the sigil helm. I've been trying to find ways to prevent this but I haven't been able to. Here is my code:
function makemotor(parent, p0, p1, c0, c1) local wel = Instance.new("Motor6D") wel.Part0 = p0 wel.Part1 = p1 wel.C0 = c0 if c1 ~= nil then wel.C1 = c1 end wel.Parent = parent return wel end cf = CFrame.new ang = CFrame.Angles rd = math.rad rd2 = math.random game.Players.PlayerAdded:Connect(function(plr) plr.CharacterAdded:Connect(function(chr) chr.Archivable = true local human = chr["Humanoid"] local head = chr["Head"] local human = chr["Humanoid"] local torso = chr["Torso"] local rightarm = chr["Right Arm"] local leftarm = chr["Left Arm"] local rightleg = chr["Right Leg"] local leftleg = chr["Left Leg"] local data = plr:WaitForChild("Data") local SigilHelm = data:WaitForChild("SigilHelm") local Stand = chr:WaitForChild("Stand") -- Waiting for the stand if SigilHelm.Value == true then local helmet = game.ServerStorage.SigilHelm:Clone() helmet.Parent = chr makemotor(head, head, helmet, ang(rd(0), rd(0), rd(0)) * cf(0, 0.4, 0.2), ang(0, 0, 0)) chr.Humanoid.MaxHealth = chr.Humanoid.MaxHealth * 1.3 chr.Humanoid.Health = chr.Humanoid.MaxHealth for _, n in pairs(chr:GetChildren()) do if n.ClassName == "Accessory" or n.ClassName == "Hat" then n:Destroy() end end end end) end)