Difference between revisions of "LlRegionSayTo"
m |
m |
||
Line 17: | Line 17: | ||
*A prim can '''not''' hear itself, to prevent problems with recursion. | *A prim can '''not''' hear itself, to prevent problems with recursion. | ||
*If sent to an agent '''not''' on channel 0, all of the agents attachments will hear the message. | *If sent to an agent '''not''' on channel 0, all of the agents attachments will hear the message. | ||
*If sent to an agent '''on''' channel 0, it will appear to the agent as a normal talking prim. | *If sent to an agent '''on''' channel 0, it will appear to the agent as a normal talking prim via the viewer, and will not be heard by attachments. | ||
|examples=<lsl>default | |examples=<lsl>default | ||
{ | { |
Revision as of 12:30, 19 April 2011
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
![]() |
Pre-release Documentation Warning! |
This function is not available yet. This documentation was written prior to its final release so it may not match the final implementation. |
Summary
Function: llRegionSayTo( key target, integer channel, string msg );0.0 | Forced Delay |
10.0 | Energy |
Says the string msg on channel number channel, that can be heard anywhere in the region only by scripts in target listening on channel.
• key | target | – | group, avatar or prim UUID that is in the same region | |
• integer | channel | – | output chat channel, any integer value except zero | |
• string | msg | – | message to be transmitted |
Regardless of where the prim is, the message will not travel over region borders.
Channel Constant | Description | |
---|---|---|
DEBUG_CHANNEL | 0x7FFFFFFF | Chat channel reserved for script debugging and error messages, broadcasts to all nearby users. |
Caveats
- Messages sent on DEBUG_CHANNEL are throttled to a rate of <200/10sec, per region, per owner/user.
- Once the rate is exceeded, all following messages on 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.
- This function cannot transmit on the PUBLIC_CHANNEL, this is a design feature and not a bug.
- If msg is longer than 1023 bytes it is truncated to 1023 bytes.
- A prim can not hear itself, to prevent problems with recursion.
- If sent to an agent not on channel 0, all of the agents attachments will hear the message.
- If sent to an agent on channel 0, it will appear to the agent as a normal talking prim via the viewer, and will not be heard by attachments.
Examples
<lsl>default {
collision_start(integer i) { llRegionSayTo(llDetectedKey(0), DEBUG_CHANNEL, "Ouch! That hurts!" ); }}</lsl>
Notes
If one object 'says' something to another object (e.g., a button that, when touched, turns on a lamp), it is a good idea to use a very negative channel, e.g., <lsl> llRegionSay(-5243212,"turn on");</lsl> Negative channels are popular for script communications because the client is unable to chat directly on those channels ("/-xxxx message" won't chat "message" on channel "-xxxx", it will chat "/-xxxx message" on channel zero). The only way to do so prior to llTextBox was to use llDialog which was limited to 24 bytes.
If DEBUG_CHANNEL is used as channel, the script will say msg to the Script Warning/Error window.
- As of 1.18.3, using llRegionSay on the DEBUG_CHANNEL will wrap around and display on channel 0, with a range of 100m.
See Also
Events
• | listen |
Functions
• | llListen | |||
• | llOwnerSay | – | Sends chat to the owner only | |
• | llWhisper | – | Sends chat limited to 10 meters | |
• | llSay | – | Sends chat limited to 20 meters | |
• | llShout | – | Sends chat limited to 100 meters | |
• | llRegionSay | – | Sends chat that can be heard anywhere in the region | |
• | llInstantMessage | |||
• | llDialog | |||
• | llTextBox |