Difference between revisions of "LlTriggerSound"

From Second Life Wiki
Jump to navigation Jump to search
 
(7 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{LSL_Function/inventory|sound|uuid=true|type=sound|volume=volume}}{{LSL_Function
{{LSL_Function
|inject-2={{Issues/SVC-4897}}{{LSL_Function/inventory|sound|uuid=true|type=sound|volume=volume}}
|func_id=91|func_sleep=0.0|func_energy=10.0
|func_id=91|func_sleep=0.0|func_energy=10.0
|func=llTriggerSound|sort=TriggerSound
|func=llTriggerSound|sort=TriggerSound
Line 5: Line 6:
|p2_type=float|p2_name=volume
|p2_type=float|p2_name=volume
|func_footnote=If the object moves the sound does not move with it.<br/>Use [[llPlaySound]] to play a sound attached to the object.
|func_footnote=If the object moves the sound does not move with it.<br/>Use [[llPlaySound]] to play a sound attached to the object.
|func_desc=Plays '''sound''' at '''volume''', centered at but not attached to object.
|func_desc=Plays {{LSLP|sound}} at {{LSLP|volume}}, centered at but not attached to object.
|return_text
|return_text
|spec
|spec
|caveats
|caveats=
* Sounds played from a HUD using llTriggerSound are audible inworld. To make sounds from a HUD audible only to the wearer, use [[llPlaySound]].
*Playing sounds is throttled. If the average number of played sounds per second exceeds the limit (22 sounds/s), all sounds from the object are suppressed until the average falls sufficiently. The throttle is per object, not per link or per script, so multiple links cannot be used to overcome the throttle.
** Once the throttle is hit, the following error will be shown in debug channel: "Too many sound requests.  Throttled until average falls."
|constants
|constants
|examples=
|examples=<source lang="lsl2">//When touched, object containing this script will trigger the sound entered.
<pre>
//When touched, object containing this script will trigger the sound entered.
//This function allows object to trigger sound even if attached to an avatar (AGENT)
//This function allows object to trigger sound even if attached to an avatar (AGENT)
//Creator: TonyH Wrangler
//Creator: TonyH Wrangler
string sound = "ed124764-705d-d497-167a-182cd9fa2e6c"; //uuid or name of item in inventory
default
default
{
{
     touch_start(integer total_num)
     touch_start(integer total_num)
     {
     {
         llTriggerSound("Asset UUID Of Sound, Or Sound Name If In Object Inventory With This Script", 1.0);
         llTriggerSound(sound, 1.0);
     }
     }
}
}</source>
</pre>
|helpers
|helpers
|also_functions={{LSL DefineRow||[[llPlaySound]]|}}
|also_functions={{LSL DefineRow||[[llPlaySound]]|}}
{{LSL DefineRow||[[llTriggerSoundLimited]]|}}
{{LSL DefineRow||[[llTriggerSoundLimited]]|}}
{{LSL DefineRow||[[llLinkPlaySound]]|3=Can be used to trigger sounds in other prims in the linkset.}}
|also_tests
|also_tests
|also_events
|also_events

Latest revision as of 10:08, 18 October 2023

Summary

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

Plays sound at volume, centered at but not attached to object.

• 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)

If the object moves the sound does not move with it.
Use llPlaySound to play a sound attached to the object.

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.
  • Sounds played from a HUD using llTriggerSound are audible inworld. To make sounds from a HUD audible only to the wearer, use llPlaySound.
  • Playing sounds is throttled. If the average number of played sounds per second exceeds the limit (22 sounds/s), all sounds from the object are suppressed until the average falls sufficiently. The throttle is per object, not per link or per script, so multiple links cannot be used to overcome the throttle.
    • Once the throttle is hit, the following error will be shown in debug channel: "Too many sound requests. Throttled until average falls."

Examples

//When touched, object containing this script will trigger the sound entered.
//This function allows object to trigger sound even if attached to an avatar (AGENT)
//Creator: TonyH Wrangler

string sound = "ed124764-705d-d497-167a-182cd9fa2e6c"; //uuid or name of item in inventory

default
{
    touch_start(integer total_num)
    {
        llTriggerSound(sound, 1.0);
    }
}

See Also

Functions

•  llPlaySound
•  llTriggerSoundLimited
•  llLinkPlaySound Can be used to trigger sounds in other prims in the linkset.

Deep Notes

Signature

function void llTriggerSound( string sound, float volume );