Difference between revisions of "minetest.sound play"
Line 48: | Line 48: | ||
minetest.sound_play("testmod_foobar") | minetest.sound_play("testmod_foobar") | ||
</source> | </source> | ||
− | Plays | + | Plays random <code>testmod_foobar</code> sound to the player. |
[[Category:Methods]] | [[Category:Methods]] |
Revision as of 18:17, 28 August 2014
Syntax
minetest.sound_play(SimpleSoundSpec, SoundParameters)
Description
Plays a sound.
Only OGG files are supported. For positional playing of sounds, only single-channel (mono) files are supported. Otherwise OpenAL will play them non-positionally.
SimpleSoundSpec
can be a string with the filename (without the file extention) or a table with the fields name="name"
and gain=float
.
SoundParameters
is a table with the following fields:
gain = float
: the gain. default = 1.0max_hear_distance = int
: the maximum hear distance. default = 32loop = bool
: Sound is looped. Only sounds connected to objects can be looped. default = false
The location can be specified with one of the following fields in the SoundParameters (if none is used, its played locationless to all players):
to_player = "playername"
: Sound is played locationless to the playerpos = position
: Sound is played at this positionobject = ObjectRef
: Sound is played connected to the object
The function returns a sound handle that can be passed to minetest.sound_stop(handle)
to stop the sound.
Features
You can play random sound using filename convention modname_soundname.N.ogg
(see examples)
Examples
minetest.sound_play("testmod_testsound", {
pos = {x=0, y=0, z=0},
max_hear_distance = 100,
gain = 10.0,
})
Plays the sound testmod_testsound.ogg
at the position 0,0,0.
minetest.sound_play("testmod_foobar", {
to_player = "foo",
gain = 2.0,
})
Plays the sound testmod_foobar.ogg
to player "foo".
-- testmod/sounds listing:
-- /testmod_foobar.1.ogg
-- /testmod_foobar.2.ogg
-- /testmod_foobar.3.ogg
minetest.sound_play("testmod_foobar")
Plays random testmod_foobar
sound to the player.