OsLoopSoundMaster

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
(Created)
 
m (Change See Also)
 
(6 intermediate revisions by 3 users not shown)
Line 3: Line 3:
 
|threat_level=ignored
 
|threat_level=ignored
 
|permissions=true
 
|permissions=true
|delay=None
+
|delay=0
 
|ossl_example=<source lang="lsl">
 
|ossl_example=<source lang="lsl">
osLoopSoundMaster(linknum, "00000000-0000-0000-0000-000000000000", volume);
+
osLoopSoundMaster(linknum, "c98100c4-6a2a-456c-a5ba-3cfdb5c14715", volume);
osLoopSoundMaster(linknum, "Name of sound in prim inventory", volume);
+
osLoopSoundMaster(linknum, "Name of master sound in prim inventory", volume);
 +
</source>
 +
<source lang="lsl">
 +
//
 +
// osLoopSoundMaster Script Example
 +
// Author: djphil
 +
//
 +
 
 +
// Can be sound's name in object's inventory or the sound uuid
 +
string sound_master = "f4a0660f-5446-dea2-80b7-6482a082803c";
 +
string sound_slave = "d7a9a565-a013-2a69-797d-5332baa1a947";
 +
float volume = 1.0;
 +
integer switch;
 +
 
 +
default
 +
{
 +
    state_entry()
 +
    {
 +
        llPreloadSound(sound_master);
 +
        llPreloadSound(sound_slave);
 +
        llSay(PUBLIC_CHANNEL, "Touch to see osLoopSoundMaster usage.");
 +
    }
 +
   
 +
    touch_start(integer number)
 +
    {
 +
        if (switch = !switch)
 +
        {
 +
            osLoopSoundMaster(1, sound_master, volume);
 +
            osLoopSoundSlave(2, sound_slave, volume);
 +
        }
 +
 
 +
        else
 +
        {
 +
            osStopSound(1);
 +
            osStopSound(2);
 +
        }
 +
    }
 +
}
 
</source>
 
</source>
 
|description=Play the specified sound at the specified volume and loop it indefinitely.
 
|description=Play the specified sound at the specified volume and loop it indefinitely.
  
The sound parameter can be the UUID of a sound or the name of a sound that is in the inventory of the prim containing the script calling this function.
+
This sound will be set as a master sound. The playing of the sound in other prims using osLoopSoundSlave will be synchronized to this sound.
 +
 
 +
The sound parameter can be the UUID of a sound or the name of a sound that is in the inventory of the target prim.  
 
|additional_info=
 
|additional_info=
TODO: Add a note explaining what is meant by a "master sound".
 
 
This function was added in 0.9.0.1
 
This function was added in 0.9.0.1
 +
Since 0.9.1 if target prim inventory does not contain the sound, the inventory of the prim containing the script calling this function is also checked
 
}}
 
}}
 +
== See Also ==
 +
* [[osLoopSound]]
 +
* [[osLoopSoundMaster]]
 +
* [[osLoopSoundSlave]]

Latest revision as of 20:07, 5 December 2020

osLoopSoundMaster(integer linknum, string sound, float volume)
Play the specified sound at the specified volume and loop it indefinitely.

This sound will be set as a master sound. The playing of the sound in other prims using osLoopSoundSlave will be synchronized to this sound.

The sound parameter can be the UUID of a sound or the name of a sound that is in the inventory of the target prim.

Threat Level This function does not do a threat level check
Permissions Use of this function is always allowed by default
Extra Delay 0 seconds
Example(s)
osLoopSoundMaster(linknum, "c98100c4-6a2a-456c-a5ba-3cfdb5c14715", volume);
osLoopSoundMaster(linknum, "Name of master sound in prim inventory", volume);
//
// osLoopSoundMaster Script Example
// Author: djphil
//
 
// Can be sound's name in object's inventory or the sound uuid
string sound_master = "f4a0660f-5446-dea2-80b7-6482a082803c";
string sound_slave = "d7a9a565-a013-2a69-797d-5332baa1a947";
float volume = 1.0;
integer switch;
 
default
{
    state_entry()
    {
        llPreloadSound(sound_master);
        llPreloadSound(sound_slave);
        llSay(PUBLIC_CHANNEL, "Touch to see osLoopSoundMaster usage.");
    }
 
    touch_start(integer number)
    {
        if (switch = !switch)
        {
            osLoopSoundMaster(1, sound_master, volume);
            osLoopSoundSlave(2, sound_slave, volume);
        }
 
        else
        {
            osStopSound(1);
            osStopSound(2);
        }
    }
}
Notes
This function was added in 0.9.0.1

Since 0.9.1 if target prim inventory does not contain the sound, the inventory of the prim containing the script calling this function is also checked


[edit] See Also

Personal tools
General
About This Wiki