I have hair morph giver and morph remover, both have scripts The remover works good at the first time But after I touch the remover the morph giver doesn't work Is it problem in one of the scripts?
The morph remover script:
function onTouched(hit)
local d = hit.Parent:GetChildren()
for i=1, #d do
if (d[i].className == "Model") then
d[i]:remove()
end
end
end
script.Parent.Touched:connect(onTouched)
The morph giver script:
function onTouched(hit)
if hit.Parent ~= nil then
if hit.Parent:findFirstChild("Humanoid") then
if hit.Parent:findFirstChild("IsPony") == nil then
string = Instance.new("StringValue")
string.Name = "IsPony"
string.Parent = hit.Parent
--Headz
if hit.Parent:findFirstChild("Humanoid") ~= nil and hit.Parent:findFirstChild("Headz") == nil then
local g = script.Parent.Parent.Headz:clone()
g.Parent = hit.Parent
local C = g:GetChildren()
for i=1, #C do
if C[i].className == "Part" or "Union" then
local W = Instance.new("Weld")
W.Part0 = g.Middle
W.Part1 = C[i]
local CJ = CFrame.new(g.Middle.Position)
local C0 = g.Middle.CFrame:inverse()*CJ
local C1 = C[i].CFrame:inverse()*CJ
W.C0 = C0
W.C1 = C1
W.Parent = g.Middle
end
local Y = Instance.new("Weld")
Y.Part0 = hit.Parent["Head"]
Y.Part1 = g.Middle
Y.C0 = CFrame.new(0, 0, 0)
Y.Parent = Y.Part0
end
local h = g:GetChildren()
for i = 1, # h do
if h[i].className == "Part" or "Union" then
h[i].Anchored = false
h[i].CanCollide = false
end
end
end
--Remove limbs
local human = hit.Parent:findFirstChild("Humanoid")
if human ~= nil then
hit.Parent:findFirstChild("Head").Transparency = 0
hit.Parent:findFirstChild("Torso").Transparency = 0
hit.Parent:findFirstChild("Left Arm").Transparency = 0
hit.Parent:findFirstChild("Right Arm").Transparency = 0
hit.Parent:findFirstChild("Left Leg").CanCollide = true
hit.Parent:findFirstChild("Left Leg").Transparency = 0
hit.Parent:findFirstChild("Right Leg").CanCollide = true
hit.Parent:findFirstChild("Right Leg").Transparency = 0
end
end
end
end
end
script.Parent.Touched:connect(onTouched)

1 comment
How do I delete the string?