Hello! i made this script, and i dont see any error on it, but on console says
this is my code, can someone help?
local Pantsggj = game.Players.LocalPlayer:WaitForChild("PlayerOldPantsId")
local Shirtsggj = game.Players.LocalPlayer:WaitForChild("PlayerOldShirtId")
local ChangerPart = script.Parent
local ShirtTemplate = "http://www.roblox.com/asset/?id=aniceidhere"
local PantsTemplate = "http://www.roblox.com/asset/?id=aniceidhere"
ChangerPart.Touched:Connect(function(TouchPart)
if TouchPart and TouchPart.Parent and TouchPart.Parent:FindFirstChild("Humanoid") then
print(TouchPart.Parent.Name .. " - Changed clothes")
local Character = TouchPart.Parent
local shirt = Character:FindFirstChildOfClass("Shirt")
local pants = Character:FindFirstChildOfClass("Pants")
if not shirt then
shirt = Instance.new("Shirt", Character)
shirt.Name = "Shirt"
end
if not pants then
pants = Instance.new("Pants", Character)
pants.Name = "Pants"
end
Character.Shirt.ShirtTemplate = ShirtTemplate
Character.Pants.PantsTemplate = PantsTemplate
wait(3)
Character.Shirt.ShirtTemplate = Shirtggj.Value
Character.Pants.PantsTemplate = Pantsggj.Value
end
end)
You can get the player in a different way, keep it in a serverscript, but change it to this
local ChangerPart = script.Parent
local ShirtTemplate = "http://www.roblox.com/asset/?id=aniceidhere"
local PantsTemplate = "http://www.roblox.com/asset/?id=aniceidhere"
ChangerPart.Touched:Connect(function(TouchPart)
local player = game.Players:GetPlayerFromCharacter(TouchPart)
if TouchPart and TouchPart.Parent and TouchPart.Parent:FindFirstChild("Humanoid") and player then
print(TouchPart.Parent.Name .. " - Changed clothes")
local Pantsggj = player:WaitForChild("PlayerOldPantsId")
local Shirtsggj = player:WaitForChild("PlayerOldShirtId")
local Character = TouchPart.Parent
local shirt = Character:FindFirstChildOfClass("Shirt")
local pants = Character:FindFirstChildOfClass("Pants")
if not shirt then
shirt = Instance.new("Shirt", Character)
shirt.Name = "Shirt"
end
if not pants then
pants = Instance.new("Pants", Character)
pants.Name = "Pants"
end
Character.Shirt.ShirtTemplate = ShirtTemplate
Character.Pants.PantsTemplate = PantsTemplate
wait(3)
Character.Shirt.ShirtTemplate = Shirtggj.Value
Character.Pants.PantsTemplate = Pantsggj.Value
end
end)
Like @MixedConscience said, you should use GetPlayerFromCharacter, which with this, should work since if it doesn’t find a player with the parent of hit, then it will give nil