Difference between revisions of "LlListenRemove"
Jump to navigation
Jump to search
All Issues ~ Search JIRA for related Bugs
m |
Omei Qunhua (talk | contribs) (Better variable name. Improve comments) |
||
Line 11: | Line 11: | ||
*No error is thrown if {{LSLP|handle}} has already been released or is invalid. | *No error is thrown if {{LSLP|handle}} has already been released or is invalid. | ||
|constants | |constants | ||
|examples=<lsl>integer | |examples=<lsl> | ||
// Listen for one line of chat from the owner, echo it back to them, then stop listening | |||
integer ListenHandle; | |||
default | default | ||
{ | { | ||
state_entry() | state_entry() | ||
{ | { | ||
// Start listening on channel 0, for text from owner only | |||
ListenHandle = llListen(0, "", llGetOwner(), ""); | |||
} | } | ||
listen(integer channel, string name, key id, string message) | listen(integer channel, string name, key id, string message) | ||
{ | { | ||
llOwnerSay(message); | llOwnerSay(message); // Echo the message back to the owner | ||
llListenRemove( | llListenRemove(ListenHandle); // Stop listening | ||
} | } | ||
}</lsl> | }</lsl> | ||
Line 31: | Line 33: | ||
|also_tests | |also_tests | ||
|also_articles | |also_articles | ||
|notes | |notes=*It is good practice to remove listeners when they are no longer required, or set them inactive via [[llListenControl]] | ||
|permission | |permission | ||
|negative_index | |negative_index |
Revision as of 02:27, 10 January 2013
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: llListenRemove( integer handle );27 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Removes listen event callback handle
• integer | handle | – | handle to control listen event |
Caveats
- On state change or script reset all listens are removed automatically.
- A state change can be used as a shortcut to releasing all listens in the script.
- No error is thrown if handle has already been released or is invalid.
Examples
<lsl> // Listen for one line of chat from the owner, echo it back to them, then stop listening integer ListenHandle; default {
state_entry() { // Start listening on channel 0, for text from owner only ListenHandle = llListen(0, "", llGetOwner(), ""); } listen(integer channel, string name, key id, string message) { llOwnerSay(message); // Echo the message back to the owner llListenRemove(ListenHandle); // Stop listening }}</lsl>
Notes
- It is good practice to remove listeners when they are no longer required, or set them inactive via llListenControl