Output says: PlayerGui is not a valid member of MeshPart "Workspace.SashaPro336.LeftHand" The Script:
script.Parent.Touched:Connect(function(plr) plr.PlayerGui.Service.PortalsFrame.Winterland.Text = "Teleport" plr.PlayerGui.Service.PortalsFrame.Winterland.BackgroundColor3 = Color3.fromRGB(62, 255, 33) end)
The 'plr' value you have is referencing the part that touched whatever the script was listening to, using it doesn't directly lead you to the player that touched the part so you'll have to make some edits.
There exists a function in game.Players called 'GetPlayerFromCharacter' which you can use to find a player from their player model, which we would find with plr.Parent because the parent of the body parts is the player model. Just to make sure it doesn't break we make sure that plr.Parent is a model so it doesn't send something incorrect, along with other checks as you'll see.
script.Parent.Touched:Connect(function(plr) if plr.Parent:IsA("Model") and game.Players:FindFirstChild(plr.Parent.Name) then if game.Players:GetPlayerFromCharacter(plr.Parent) then plr=game.Players:GetPlayerFromCharacter(plr.Parent) plr.PlayerGui.Service.PortalsFrame.Winterland.Text = "Teleport" plr.PlayerGui.Service.PortalsFrame.Winterland.BackgroundColor3 = Color3.fromRGB(62, 255, 33) end end end)
Let me know if something is wrong with the code, I can't actually test it.