Oolite JavaScript Reference: SoundSource
Prototype: Object
Subtypes: none
A SoundSource is an abstract object that can play a sound. A given SoundSource
can only be playing one sound at a particular time.
Contents
Sound Expressions
Several SoundSource
properties and methods can take either Sound
object, or a string representing a file name or a customsounds.plist key.
Constructor
new SoundSource : SoundSource
Creates a new SoundSource that can be altered. e.g.:
var mySound = new SoundSource; mySound.sound = "trumblesqueal.ogg"; mySound.loop = true; mySound.play();
Properties
isPlaying
isPlaying : Boolean (read-only)
true
if the sound is currently playing, false
otherwise.
loop
loop : Boolean (read/write)
true
if the sound source should loop its sound, false
otherwise. Changing this while a sound is playing does not affect the currently-playing sound; it only takes effect when the sound source starts playing.
See Also: repeatCount
position
This property was added in Oolite test release 1.79.
position : Vector (read/write)
The position of the sound source relative to the listener. The listener is always positioned at the origin facing along the Z axis. Therefore if the sound relates to something outside the spaceship, it will need to be positioned relatively to the player.
positional
This property was added in Oolite test release 1.79.
positional : Boolean (read/write)
Whether the SoundSource is positional at all. Non-positional sound sources are "positioned" at the origin.
Note that a SoundSource playing a sound with stereo information built-in is effectively non-positional.
repeatCount
repeatCount : Integer (read/write)
The number of times the sound should repeat, if loop
is false
, ranging from 1 to 100. Unlike loop, this can usefully be changed while the sound is playing, and repeatCount
will be decremented each time the sound is repeated.
See Also: loop
sound
sound : soundExpression (read/write)
The sound to be played by this sound source. You can assign either a Sound
or a string to this property, but when you read it it will always be a Sound
object (or null
).
volume
This property was added in Oolite test release 1.79.
volume : Number (read/write)
The relative volume of the sound source, between 0.0 and 1.0, with 1.0 being the loudest possible and the default. This is further modified of course by the global volume set by the player in their preferences.
Methods
play
function play([count : Integer])
Start playing sound
. If count
is specified, repeatCount
is set to count
first. If the sound source is currently playing a sound, it is stopped.
See Also: playOrRepeat()
, playSound()
playOrRepeat
function playOrRepeat()
If a sound is not playing, starts playing. If a sound is playing and is not looping, increases repeatCount by one.
See Also: play()
playSound
function playSound(sound : soundExpression [, count : Integer])
Set sound
(and, optionally, repeatCount
) and start playing.
See Also: play()
stop
function stop()
Stop playing sound.