This script is supposed to play a sound when touching a brick, while stopping other sounds
script.Parent.Touched:connect(function(hit) if hit.Parent:FindFirstChild("Humanoid")then game.Players[hit.Parent.Name].PlayerGui.Sound1.Volume = 1 game.Players[hit.Parent.Name].PlayerGui.Sound1:Play() game.Players[hit.Parent.Name].PlayerGui.Sound2:Stop() end end)
However, when tested on roblox studio it works perfectly fine but when in the actual roblox game it fails to do anything.
I'm new to scripting so it's been a pain trying to figure out whats wrong with this script, please send help!
Try using GetPlayerFromCharacter, like so:
script.Parent.Touched:connect(function(hit) if hit.Parent:FindFirstChild("Humanoid")then player = game.Player:GetPlayerFromCharacter(hit.Parent) player.PlayerGui.Sound1.Volume = 1 player.PlayerGui.Sound1:Play() player.PlayerGui.Sound2:Stop() end end)