I wonder if anyone can help me with this. Players are getting trapped in my morph mannequins when they touch them so I would like to change the script so they can morph when they click the part instead of touch?


function onTouched(hit)
	if hit.Parent ~= nil then
		if hit.Parent:findFirstChild("Humanoid") then
			if hit.Parent:findFirstChild("Player") == nil then
				string = Instance.new("StringValue")
				string.Name = "Player"
				string.Parent = hit.Parent
				--Headz
				if hit.Parent:findFirstChild("Humanoid") ~= nil and hit.Parent:findFirstChild("Morph") == nil then
					local g = script.Parent.Parent.Morph: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)

2 comments

0

use ClickDetectors instead. https://www.youtube.com/watch?v=yJglWQM0h5A

0

This doesn't help for this script, thank you though