PlaySound: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
(add info about supported URL protocols, especially ftp://)
(18 intermediate revisions by 11 users not shown)
Line 1: Line 1:
{\rtf1\ansi\ansicpg1252
__NOTOC__
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{{Client function}}
{\colortbl;\red255\green255\blue255;\red0\green0\blue0;\red255\green255\blue255;}
Creates a [[sound]] [[element]] and plays it immediately after creation for the local player.<br />
\deftab720
<br />
\pard\pardeftab720\sl380\partightenfactor0
{{Note|
*The only supported audio formats are MP3, WAV, OGG, RIFF, MOD, XM, IT, S3M and PLS (e.g. Webstream).
*For performance reasons, when using playSound for effects that will be played lots (i.e. weapon fire), it is recommend that you convert your audio file to a one channel (mono) WAV with sample rate of 22050 Hz or less. Also consider adding a limit on how often the effect can be played e.g. once every 50ms.}}
==Syntax==
<syntaxhighlight lang="lua">element playSound ( string soundPath, [ bool looped = false, bool throttled = true ] )</syntaxhighlight>
{{OOP||[[Sound]]}}
===Required Arguments===
*'''soundPath:''' the [[filepath]] or URL (http://, https:// or ftp://) of the sound file you want to play. ('''Note:''' Playing sound files from other resources requires the target resource to be in the running state)


\f0\fs22 \cf2 \cb3 \expnd0\expndtw0\kerning0
===Optional Arguments===  
\outl0\strokewidth0 \strokec2 \uc0\u8234 __NOTOC__ \uc0\u8236 \
{{OptionalArg}}  
\{\{Client function\}\}\uc0\u8236 \
*'''looped:''' a [[boolean]] representing whether the sound will be looped. To loop the sound, use ''true''. Loop is not available for streaming sounds, only for sound files.
Creates a [[sound]] [[element]] and plays it immediately after creation for the local player.<br />\uc0\u8236 \
{{New feature/item|3.0150|1.5||
<br />\uc0\u8236 \
*'''throttled:''' a [[boolean]] representing whether the sound will be throttled (i.e. given reduced download bandwidth). To throttle the sound, use ''true''. Sounds will be throttled per default and only for URLs.
'''Note:''' The only supported audio formats are MP3, WAV, OGG, RIFF, MOD, XM, IT, S3M and PLS(e.g. Webstream).\uc0\u8236 \
}}
\{\{Note|For performance reasons, when using playSound for effects that will be played lots (i.e. weapon fire), it is recommend that you convert your audio file to a one channel (mono) WAV with sample rate of 22050 Hz or less. Also consider adding a limit on how often the effect can be played e.g. once every 50ms.\}\}\uc0\u8236 \
 
==Syntax== \uc0\u8236 \
===Returns===
<syntaxhighlight lang="lua">element playSound ( string soundPath, [ bool looped = false ] )</syntaxhighlight> \uc0\u8236 \
Returns a [[sound]] [[element]] if the sound was successfully created, ''false'' otherwise.
\{\{New feature/item|3.0150|1.5||\uc0\u8236 \
 
<syntaxhighlight lang="lua">element playSound ( string soundPath, [ bool looped = false, [ bool throttled = true ] ] )</syntaxhighlight> \uc0\u8236 \
==Example==
\}\}\uc0\u8236 \
<syntaxhighlight lang="lua">
\{\{OOP||[[Sound]].create\}\}\uc0\u8236 \
function wasted (killer, weapon, bodypart)  
===Required Arguments=== \uc0\u8236 \
local sound = playSound("sounds/wasted.mp3") --Play wasted.mp3 from the sounds folder
*'''soundPath:''' the [[filepath]] or URL of the sound file you want to play. (Sound specified by filepath has to be predefined in the [[meta.xml]] file with <file /> tag.)\uc0\u8236 \
setSoundVolume(sound, 0.5) -- set the sound volume to 50%
\uc0\u8236 \
end
===Optional Arguments=== \uc0\u8236 \
 
\{\{OptionalArg\}\} \uc0\u8236 \
addEventHandler("onClientPlayerWasted", localPlayer, wasted) --add the event handler
*'''looped:''' a [[boolean]] representing whether the sound will be looped. To loop the sound, use ''true''. Loop is not available for streaming sounds, only for sound files.\uc0\u8236 \
</syntaxhighlight>
*'''throttled:''' a [[boolean]] representing whether the sound will be throttled. To throttle the sound, use ''true''. Sounds will be throttled per default and only for URLs.\uc0\u8236 \
 
\uc0\u8236 \
==See Also==
===Returns===\uc0\u8236 \
{{Client_audio_functions}}
Returns a [[sound]] [[element]] if the sound was successfully created, ''false'' otherwise.\uc0\u8236 \
[[HU:playSound]]
\uc0\u8236 \
[[AR:playSound]]
==Example==\uc0\u8236 \
[[DE:playSound]]
<syntaxhighlight lang="lua">\uc0\u8236 \
[[RO:playSound]]
function wasted (killer, weapon, bodypart) \uc0\u8236 \
local sound = playSound("sounds/wasted.mp3") --Play wasted.mp3 from the sounds folder\uc0\u8236 \
setSoundVolume(sound, 0.5) -- set the sound volume to 50%\uc0\u8236 \
end\uc0\u8236 \
\uc0\u8236 \
addEventHandler("onClientPlayerWasted", getLocalPlayer(), wasted) --add the event handler\uc0\u8236 \
</syntaxhighlight>\uc0\u8236 \
\uc0\u8236 \
==See Also==\uc0\u8236 \
\{\{Client_audio_functions\}\}\uc0\u8236 \
[[AR:playSound]]\uc0\u8236 \
[[DE:playSound]]\uc0\u8236 \
\uc0\u8236 }

Revision as of 14:54, 22 April 2020

Creates a sound element and plays it immediately after creation for the local player.

[[{{{image}}}|link=|]] Note:
  • The only supported audio formats are MP3, WAV, OGG, RIFF, MOD, XM, IT, S3M and PLS (e.g. Webstream).
  • For performance reasons, when using playSound for effects that will be played lots (i.e. weapon fire), it is recommend that you convert your audio file to a one channel (mono) WAV with sample rate of 22050 Hz or less. Also consider adding a limit on how often the effect can be played e.g. once every 50ms.

Syntax

element playSound ( string soundPath, [ bool looped = false, bool throttled = true ] )

OOP Syntax Help! I don't understand this!

Method: Sound(...)


Required Arguments

  • soundPath: the filepath or URL (http://, https:// or ftp://) of the sound file you want to play. (Note: Playing sound files from other resources requires the target resource to be in the running state)

Optional Arguments

NOTE: When using optional arguments, you might need to supply all arguments before the one you wish to use. For more information on optional arguments, see optional arguments.

  • looped: a boolean representing whether the sound will be looped. To loop the sound, use true. Loop is not available for streaming sounds, only for sound files.
  • throttled: a boolean representing whether the sound will be throttled (i.e. given reduced download bandwidth). To throttle the sound, use true. Sounds will be throttled per default and only for URLs.

Returns

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

Example

function wasted (killer, weapon, bodypart) 
	local sound = playSound("sounds/wasted.mp3") --Play wasted.mp3 from the sounds folder
	setSoundVolume(sound, 0.5) -- set the sound volume to 50%
end

addEventHandler("onClientPlayerWasted", localPlayer, wasted) --add the event handler

See Also