Difference between revisions of "LlShout"

From Second Life Wiki
Jump to navigation Jump to search
m (Replaced old <LSL> block with <source lang="lsl2">)
 
(18 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{LSL_Function
{{LSL_Function
|inject-2={{LSL_Function/chat|channel|msg}}
|func_id=24
|func_id=24
|func_sleep=0.0
|func_sleep=0.0
Line 7: Line 8:
|p1_type=integer|p1_name=channel
|p1_type=integer|p1_name=channel
|p2_type=string|p2_name=msg
|p2_type=string|p2_name=msg
|func_desc=Shouts the text supplied in string '''msg''' on channel supplied in integer '''channel'''.
|func_desc=Shouts the text supplied in string {{LSLP|msg}} on channel supplied in integer {{LSLP|channel}}.
|spec
|spec
|constants={{LSL Constants/Chat}}
|constants
|caveats=*Text can only be a maximum of 1024 bytes.
|caveats=*Text can be a maximum of 1024 bytes. This can convey 1024 ASCII characters, or 512 UTF-8 characters such as á
*Phrases shouted with llShout can only be heard within 100 meters of the speaking object.
*Shouts can be heard within 100 meters of the speaking prim (rather than the root). This is contrary to how [[listen]]s work, where a message can only be heard by any prim in the object if and only if the root prim is capable of hearing it.
*A prim can '''not''' hear itself, to prevent problems with recursion.
*A prim can '''not''' hear itself, this to prevent problems with recursion. It can however hear other prims within the same object.
|examples=<pre>
|examples=
default {
If  you prefer, you can make use of certain mnemonic constants such as [[PUBLIC_CHANNEL]] instead of channel 0 and [[DEBUG_CHANNEL]] instead of channel +2,147,483,647.
<source lang="lsl2">
default
{
     state_entry()
     state_entry()
     {
     {
         llShout(0,"This is an incredibly useless program!" );
         llShout(0, "I scream icecream!");
     }
     }
}
}
</pre>
</source>
To avoid making your object spam its neighborhood, use llOwnerSay or llInstantMessage.
For communicating with a user or owner it is preferable to use [[llOwnerSay]] or [[llInstantMessage]] or [[llRegionSayTo]] as they won't spam other users.
The latter is also an excellent choice for communicating to an attachment of a known avatar, or to an object of known UUID.
|helpers
|helpers
|also_events={{LSL DefineRow||[[listen]]|}}
|also_events={{LSL DefineRow||[[listen]]|}}
Line 28: Line 33:
{{LSL DefineRow||[[llOwnerSay]]|}}
{{LSL DefineRow||[[llOwnerSay]]|}}
{{LSL DefineRow||[[llRegionSay]]|Sends chat region wide}}
{{LSL DefineRow||[[llRegionSay]]|Sends chat region wide}}
{{LSL DefineRow||[[llRegionSayTo]]|Sends chat region wide to a specific avatar, or their attachments, or to a rezzed object of known UUID}}
{{LSL DefineRow||[[llWhisper]]|Sends chat limited to 10 meters}}
{{LSL DefineRow||[[llWhisper]]|Sends chat limited to 10 meters}}
{{LSL DefineRow||[[llSay]]|Sends chat limited to 20 meters}}
{{LSL DefineRow||[[llSay]]|Sends chat limited to 20 meters}}
Line 36: Line 42:
|cat1=Communications
|cat1=Communications
|cat2=Chat
|cat2=Chat
|haiku={{Haiku|From the pitcher's mound|Infielders hear your grumbling|But center field can't.}}
|cat3
|cat3
|cat4
|cat4
}}
}}

Latest revision as of 11:52, 22 January 2015

Summary

Function: llShout( integer channel, string msg );
0.0 Forced Delay
10.0 Energy

Shouts the text supplied in string msg on channel supplied in integer channel.

• integer channel output chat channel, any integer value
• string msg message to be transmitted
Channel Constant Description
DEBUG_CHANNEL 0x7FFFFFFF Chat channel reserved for script debugging and error messages, broadcasts to all nearby users.
PUBLIC_CHANNEL 0x0 Chat channel that broadcasts to all nearby users. This channel is sometimes referred to as: open chat, local chat and public chat.

Caveats

  • Messages sent on channel zero[1] and DEBUG_CHANNEL are throttled to a rate of <200/10sec, per region, per owner/user.
    • Once the rate is exceeded, all following messages on channel zero or DEBUG_CHANNEL will be dropped until the send rate is again below 200/10sec for the previous 10 sec. Dropped messages, despite being dropped still count against the limit.
  • Text can be a maximum of 1024 bytes. This can convey 1024 ASCII characters, or 512 UTF-8 characters such as á
  • Shouts can be heard within 100 meters of the speaking prim (rather than the root). This is contrary to how listens work, where a message can only be heard by any prim in the object if and only if the root prim is capable of hearing it.
  • A prim can not hear itself, this to prevent problems with recursion. It can however hear other prims within the same object.

Examples

If you prefer, you can make use of certain mnemonic constants such as PUBLIC_CHANNEL instead of channel 0 and DEBUG_CHANNEL instead of channel +2,147,483,647.

default
{
    state_entry()
    {
        llShout(0, "I scream icecream!");
    }
}

For communicating with a user or owner it is preferable to use llOwnerSay or llInstantMessage or llRegionSayTo as they won't spam other users.

The latter is also an excellent choice for communicating to an attachment of a known avatar, or to an object of known UUID.

See Also

Events

•  listen

Functions

•  llListen
•  llOwnerSay
•  llRegionSay Sends chat region wide
•  llRegionSayTo Sends chat region wide to a specific avatar, or their attachments, or to a rezzed object of known UUID
•  llWhisper Sends chat limited to 10 meters
•  llSay Sends chat limited to 20 meters
•  llInstantMessage

Deep Notes

Footnotes

  1. ^ Channel zero is also known as: PUBLIC_CHANNEL, open chat, local chat and public chat

Signature

function void llShout( integer channel, string msg );

Haiku

From the pitcher's mound
Infielders hear your grumbling
But center field can't.