I have this aerial sound system that uses parts positioned around the player. It then picks a random part, random sound, and plays the sound to the part.
The problem is that it gets to the point where it clones the sound (I think) but it just doesn't play the sound.
I think it's the way I'm finding the sound to copy but I've tried a few different things and they never worked.
script:
local parts = {
parta = Instance.new('Part', workspace),
partb = Instance.new('Part', workspace),
partc = Instance.new('Part', workspace),
partd = Instance.new('Part', workspace),
parte = Instance.new('Part', workspace),
partf = Instance.new('Part', workspace)
}
for i,v in pairs(parts) do
v.Anchored = true
v.CanCollide = false
v.Transparency = .5
end
while true do
wait(math.random(2,3))
local character = game.Players.LocalPlayer.Character
if character then
parts.parta.CFrame = character.HumanoidRootPart.CFrame - Vector3.new(-20,0,0)
parts.partb.CFrame = character.HumanoidRootPart.CFrame - Vector3.new(20,0,0)
parts.partc.CFrame = character.HumanoidRootPart.CFrame - Vector3.new(0,-20,0)
parts.partd.CFrame = character.HumanoidRootPart.CFrame - Vector3.new(0,20,0)
parts.parte.CFrame = character.HumanoidRootPart.CFrame - Vector3.new(0,0,-20)
parts.partf.CFrame = character.HumanoidRootPart.CFrame - Vector3.new(0,0,20)
local numeral = math.random(1,6)
local ran = math.random(1,2)
local c = parts["parts"..numeral]
if character.HumanoidRootPart.Position.Z < workspace.maincheckpoint.Position.Z then
print('going along')
if ran == 1 then
print('jump')
local thingstocopy = workspace.sounds.ambient.jump:GetChildren()
local thingtocopy = thingstocopy[math.random(#thingstocopy)]
local copy = thingtocopy:Clone()
copy.Parent = c
wait(.3)
copy:Play()
wait(copy.TimeLength)
wait(.1)
copy:Destroy()
end
if ran == 2 then
print('subtle')
local thingstocopy = workspace.sounds.ambient.subtle:GetChildren()
local thingtocopy = thingstocopy[math.random(#thingstocopy)]
local copy = thingtocopy:Clone()
copy.Parent = c
wait(.3)
copy:Play()
wait(copy.TimeLength)
wait(.1)
copy:Destroy()
end
end
end
end
