5.8 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	😍 Checkout our store for more amazing resources https://store.rcore.cz/ 
🎵 Resources using this API https://store.rcore.cz/category/music
Improved audio library for FiveM
Can work with API interact sound
Just make sure you take all sounds from interact
sound and move them to xsound/html/sounds
Thanks to
https://github.com/plunkettscott
for awesome api
https://github.com/plunkettscott/interact-sound
SoundSystem functions
1. Functions (client side)
Playing sound
- 
PlayUrl(name, URL, volume, loop, options)
 Will play sound from URL (can be heard everywhere)
 argument loop and options are optional, doesn't have to be used.
- 
PlayUrlPos(name, url, volume, Vector3 vec, loop, options)
 Will play sound from url at x,y,z location
 argument loop and options are optional, doesn't have to be used.
options list
- onPlayStart
- onPlayEnd
- onLoading
- onPlayPause
- onPlayResume
Manipulation with sound
- 
Position(name, Vector3 vec)
 Will update location of sound
- 
Distance(name, newDistance)
 Will set new playing distance from location
- 
Destroy(name)
 Will destroy sound
- 
Pause(name)
 Will pause sound
- 
Resume(name)
 Will resume sound
- 
setVolume(name,volume)volume is from 0.0 to 1.0
 Will set a new value to volume. Should be used for non 3D sound
- 
setVolumeMax(name,volume)volume is from 0.0 to 1.0
 will set new value to max volume. Should be used only for 3D sound
- 
setTimeStamp(name, time)will set a new timestamp.
- 
setSoundURL(name, url)will set new URL to sound (will play whenever changed)
- 
repeatSound(name)will play again the saved sound
- 
destroyOnFinish(name, bool)true = destroy on end / false = do not destroy on end
- 
setSoundLoop(name, bool)will set a new value to loop
- 
setSoundDynamic(name, bool)will set if the sound is 3D / 3D = true
Effects on sound
- fadeOut(name, time)
- fadeIn(name, time, volume)
Events (client side only)
- 
onPlayStart(name, function)
 This event will trigger after the sound
 is loaded and start playing in game.
- 
onPlayEnd(name, function)
 This event will be triggered after sound end.
- 
onLoading(name, function)
 This event will be triggered when the sound start loading.
- 
onPlayPause(name, function)
 This event will be triggered whenever you pause sound.
- 
onPlayResume(name, function)
 This event will be triggered whenever you resume sound.
Getting info about sound
- 
soundExists(name)
 Will return true/false if sound exists
- 
isPaused(name)
 Will return true/false if song is paused
- 
isPlaying(name)
 Will return true/false if song is playing
- 
isLooped(name)
 Will return true/false if sound is looped
- 
getDistance(name)
 Will return distance in Integer
- 
getVolume(name)
 Will return current volume of music.
- 
getPosition(name)
 Will return vector3
- 
isDynamic(name)
 Will return if sound is 3D or 2D (3D = true, 2D = false)
- 
getTimeStamp(name)
 returns current timestamp
- 
getMaxDuration(name)
 returns max duration of sound
- 
getLink(name)
 Will return url link
- 
isPlayerInStreamerMode()
 will return if player got streamer mode enabled.
- 
getAllAudioInfo()
 Will return array of all sound
- 
isPlayerCloseToAnySound()
 will return true if player is close to any sound.
- 
getInfo(name)
 Will return an array with info of the sound...
{
   volume,          -- value from 0.0 to 1.0
   url ,            -- sound url
   id,              -- id 
   position,        -- will be nil if position isnt set.
   distance,        -- distance in integer
   playing,         -- true/false
   paused,          -- true/false
   loop,            -- true/false
   isDynamic,       -- true/false
   timeStamp,       -- returns current timestamp
   maxDuration,     -- returns max duration of sound
   destroyOnFinish, -- default value is true means after its finish it will destroy it self
}
1. Functions (Server side)
Playing sound
- 
PlayUrl(source, name, URL, volume, loop)
 Will play sound from URL (can be heard everywhere)
- 
PlayUrlPos(source, name, url, volume, Vector3 vec, loop)
 Will play sound from url at x,y,z location
Manipulation with sound
- 
-1 for source work as well 
- 
Position(source, name, Vector3 vec)
 Will update location of sound
- 
Distance(source, name, newDistance)
 Will set new playing distance from location
- 
Destroy(source, name)
 Will destroy sound
- 
Pause(source, name)
 Will pause sound
- 
Resume(source, name)
 Will resume sound
- 
setVolume(source, name,volume)volume is from 0.0 to 1.0
 Will set a new value to volume. Should be used for non 3D sound
- 
setVolumeMax(source, name,volume)volume is from 0.0 to 1.0
 will set new value to max volume. Should be used only for 3D sound
- 
setTimeStamp(source ,name, time)will set a new timestamp.
 TIMESTAMP is in a seconds only !
Showcase how it can stream sound at game
https://www.youtube.com/watch?v=zyZmF5bRSA4
https://www.youtube.com/watch?v=19Q2GVYElSE
Showcase what I did with my API
#These are just a showcase! I will not share them....
