Difference between revisions of "LlLoopSoundMaster"

From Second Life Wiki
Jump to navigation Jump to search
(added a more complicated (but more useful) usage example based on the Toggle States script)
m (lsl code tagging)
Line 10: Line 10:
|caveats
|caveats
|constants
|constants
|examples=<pre>// for an uploaded .wav file called "MasterLoop" in inventory
|examples=
llLoopSoundMaster("MasterLoop", 1.0);</pre>
<lsl>
// for an uploaded .wav file called "MasterLoop" in inventory
llLoopSoundMaster("MasterLoop", 1.0);
</lsl>
The script below can be added to an object, to toggle a SoundMaster on and off. Note that the script requires a sound in inventory called MasterLoop, or you need to change the argument in the function for it to work. This script is a slight modification to the script [[Toggle_States]], adding only the llLoopSoundMaster and [[llStopSound]] to make it work.
The script below can be added to an object, to toggle a SoundMaster on and off. Note that the script requires a sound in inventory called MasterLoop, or you need to change the argument in the function for it to work. This script is a slight modification to the script [[Toggle_States]], adding only the llLoopSoundMaster and [[llStopSound]] to make it work.
<pre>
<lsl>
default {
default {
     state_entry() {
     state_entry() {
Line 39: Line 42:
     }
     }
}
}
</pre>
</lsl>
|helpers
|helpers
|also_functions
|also_functions

Revision as of 12:56, 1 April 2008

Summary

Function: llLoopSoundMaster( string sound, float volume );
0.0 Forced Delay
10.0 Energy

Plays attached sound looping at volume, declares it a sync master.

• string sound a sound in the inventory of the prim this script is in or a UUID of a sound
• float volume between 0.0 (silent) and 1.0 (loud) (0.0 <= volume <= 1.0)

Caveats

  • If sound is missing from the prim's inventory and it is not a UUID or it is not a sound then an error is shouted on DEBUG_CHANNEL.
  • If sound is a UUID then there are no new asset permissions consequences for the object.
    • The resulting object develops no new usage restrictions that might have occurred if the asset had been placed in the prims inventory.

Examples

<lsl> // for an uploaded .wav file called "MasterLoop" in inventory llLoopSoundMaster("MasterLoop", 1.0); </lsl> The script below can be added to an object, to toggle a SoundMaster on and off. Note that the script requires a sound in inventory called MasterLoop, or you need to change the argument in the function for it to work. This script is a slight modification to the script Toggle_States, adding only the llLoopSoundMaster and llStopSound to make it work. <lsl> default {

   state_entry() {
       // run this code when entering the default state
       // displays red "OFF" as floating text above the prim
       llSetText("OFF", <1,0,0>, 1.0);
   }
   touch_start(integer num_detected) {
       // when touched, switch to state named 'on'
       state on;
   }

}

state on {

   state_entry() {
       // run this code when entering state 'on'
       // displays green "ON" as floating text above the prim
       llSetText("ON", <0,1,0>, 1.0);
       llLoopSoundMaster("MasterLoop", 1.0);
   }
   touch_start(integer num_detected) {
       // when touched, stop sound & switch back to the default state
       llStopSound();
       state default;
   }

}

</lsl>

Deep Notes

Signature

function void llLoopSoundMaster( string sound, float volume );