Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

When a player touches a part the audio plays but only for that client?

Asked by 5 years ago

I already get how to do the script it's just I don't get how to make it only for a client.. when a player touches the the part a sound appears instead of getting it viral it only shows for that cilent.

1 answer

Log in to vote
1
Answered by
Ziffixture 6913 Moderation Voter Community Moderator
5 years ago
Edited 5 years ago

This is in terms of FE, I suggest you use RemoteEvents to gain your desired end-game. ROBLOX has pushed FE as a requirement as of recently, therefore I highly suggest you read up on this as it is quite useful, yet should be something familiar with.

For the following Code below, please make sure to have inserted a RemoteEvent in ReplicatedStorage

--// ServerScript - Child of Part.
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RemoteEvent = ReplicatedStorage:WaitForChild("RemoteEvent")

local Part = workspace.Part
local Sound = workspace.Sound

Part.Touched:Connect(function(PartTouched)
    if (PartTouched.Parent:FindFirstChildOfClass("Humanoid")) then
        RemoteEvent:FireAllClients(Sound) --// Sends a signal to everyone
    end
end)

--// LocalScript - Child of StarterPlayerScripts
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RemoteEvent = ReplicatedStorage:WaitForChild("RemoteEvent")

RemoteEvent.OnClientEvent:Connect(function(Sound) --// Receives the signal
    Sound:Play()
end)

Though there is a simpler way with the Laws of FE. Since the Server broadcasts to all Clients, have the Server play the Sound.

--// ServerScript - Child of Part.

local Part = workspace.Part
local Sound = workspace.Sound

Part.Touched:Connect(function(PartTouched)
    if (PartTouched.Parent:FindFirstChildOfClass("Humanoid")) then
        Sound:Play()
    end
end)

Yes, this is simpler, though I suggest the use of example one. As it can be applied in other scenarios this method cannot. It's also best to stretch out your idea of something new before taking the easier route.

Hope this helps! Remember to accept and upvote this answer if so! Have a nice day

Ad

Answer this question