Garry's Mod Wiki

CreateSound

Description

Returns a sound parented to the specified entity.

You can only create one CSoundPatch per audio file, per entity at the same time.

Arguments

1 Entity targetEnt
The target entity.
2 string soundName
The sound to play.
3 CRecipientFilter filter = [CPASAttenuationFilter](https://developer.valvesoftware.com/wiki/CRecipientFilter#Derived_classes)
A CRecipientFilter of the players that will have this sound networked to them.

This argument only works serverside.

Returns

1 CSoundPatch
The sound object

Example

Play a sound everywhere, similar to surface.PlaySound but available clientside and serverside.

local LoadedSounds if CLIENT then LoadedSounds = {} -- this table caches existing CSoundPatches end local function ReadSound( FileName ) local sound local filter if SERVER then filter = RecipientFilter() filter:AddAllPlayers() end if SERVER or !LoadedSounds[FileName] then -- The sound is always re-created serverside because of the RecipientFilter. sound = CreateSound( game.GetWorld(), FileName, filter ) -- create the new sound, parented to the worldspawn (which always exists) if sound then sound:SetSoundLevel( 0 ) -- play everywhere if CLIENT then LoadedSounds[FileName] = { sound, filter } -- cache the CSoundPatch end end else sound = LoadedSounds[FileName][1] filter = LoadedSounds[FileName][2] end if sound then if CLIENT then sound:Stop() -- it won't play again otherwise end sound:Play() end return sound -- useful if you want to stop the sound yourself end -- When we are ready, we play the sound: ReadSound( "phx/hmetal1.wav" )

Page Links


Special Pages


Wikis

?

Render Time: 44ms

Session 0
DB GetPage 4
Generate Html 16
SaveChanges 9
Render Body 0
Render Sidebar 12