PlaySFX3D: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(Updated warning according to recent Steam GTA: SA patches)
mNo edit summary
 
(5 intermediate revisions by 3 users not shown)
Line 10: Line 10:


It also returns ''false'' when trying to play a track deleted in the recent GTA: SA Steam patches (and if the client is using a Steam GTA: SA copy).|true}}
It also returns ''false'' when trying to play a track deleted in the recent GTA: SA Steam patches (and if the client is using a Steam GTA: SA copy).|true}}
{{Note|PlaySFX sounds are MTA driven sounds, so MTA volume affects the volume.}}


==Syntax==
==Syntax==
Line 31: Line 32:




{{New feature/item|4.0140|1.4|6443|
{{New feature/item|3.0140|1.4|6443|
==Syntax 2==
==Syntax 2==
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
Line 64: Line 65:
==See Also==
==See Also==
{{Client_audio_functions}}
{{Client_audio_functions}}
[[hu:playSFX3D]]
[[pt-br:playSFX3D]]

Latest revision as of 22:19, 7 January 2022

This function plays a sound in the GTA world from GTA's big sound containers.

[[{{{image}}}|link=|]] Note: There is a tool available which allows you to find bank and sound IDs easily: [sfxBrowser:Download].
Dialog-warning.png Warning: Many players use versions of GTA:SA (especially pirated versions) that have audio files full of zeros so that they can compresses better in their AUDIO\SFX\ folder. (They lack any data)

In case of these invalid audio files, this function returns false.

It also returns false when trying to play a track deleted in the recent GTA: SA Steam patches (and if the client is using a Steam GTA: SA copy).

[[{{{image}}}|link=|]] Note: PlaySFX sounds are MTA driven sounds, so MTA volume affects the volume.

Syntax

element playSFX3D ( string containerName, int bankId, int soundId, float x, float y, float z [, bool looped = false ] )

Required Arguments

  • containerName: The name of the audio container. Possible values are: "feet", "genrl", "pain_a", "script", "spc_ea", "spc_fa", "spc_ga", spc_na", "spc_pa"
  • bankId: The audio bank id
  • soundId: The sound id within the audio bank
  • x: A floating point number representing the X coordinate on the map.
  • y: A floating point number representing the Y coordinate on the map.
  • z: A floating point number representing the Z coordinate on the map.

Optional Arguments

  • looped: A boolean representing whether the sound will be looped

Returns

Returns a sound element if the sound was successfully created, false otherwise.


Syntax 2

element playSFX3D( string "radio", string radioStation, int trackId, float x, float y, float z [, bool looped = false ] )

Required Arguments

  • radio: The string "radio" (used to differentiate to the first syntax)
  • radioStation: The radio station. Possible values are "Adverts", "Ambience", "Police", "Playback FM", "K-Rose", "K-DST", "Cutscene", "Beats", "Bounce FM", "SF-UR", "Radio Los Santos", "Radio X", "CSR 103.9", "K-Jah West", "Master Sounds 98.3", "WCTR".
  • trackId : The radio track id within the radio station audio file
  • x: A floating point number representing the X coordinate on the map.
  • y: A floating point number representing the Y coordinate on the map.
  • z: A floating point number representing the Z coordinate on the map.

Optional Arguments

  • looped: A boolean representing whether the sound will be looped

Returns

Returns a sound element if the sound was successfully created, false otherwise.


Example

The following example plays a fire alarm sound near you (looped).

local x, y, z = getElementPosition(localPlayer)
if not playSFX3D("script", 7, 1, x + 10, y, z, true) then
    outputChatBox("You have to install some missing audio files to hear the sound")
end

See Also