Difference between revisions of "LlListenRemove"
Jump to navigation
Jump to search
All Issues ~ Search JIRA for related Bugs
m (<lsl> tag to <source>) |
|||
(20 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{LSL_Function | ||
|inject-2={{LSL Function/handle|handle|listen}} | |||
|func_id=27|func_sleep=0.0|func_energy=10.0 | |||
|func=llListenRemove | |||
|p1_type=integer|p1_subtype=handle|p1_name=handle | |||
|func_footnote | |||
|func_desc=Removes listen event callback {{LSLP|handle}} | |||
|return_text | |||
|spec | |||
|caveats=*On [[state]] change or [[llResetScript|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 {{LSLP|handle}} has already been released or is invalid. | |||
|constants | |||
|examples=<source lang="lsl2"> | |||
// 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 | |||
} | |||
}</source> | |||
|helpers | |||
|also_functions={{LSL DefineRow||[[llListen]]}} | |||
{{LSL DefineRow||[[llListenControl]]}} | |||
|also_events={{LSL DefineRow|[[listen]]|}} | |||
|also_tests | |||
|also_articles | |||
|notes=*It is good practice to remove listeners when they are no longer required, or set them inactive via [[llListenControl]] | |||
|permission | |||
|negative_index | |||
|sort=ListenRemove | |||
|cat1=Communications | |||
|cat2=Chat | |||
|cat3 | |||
|cat4 | |||
}} |
Revision as of 12:13, 22 January 2015
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
// 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
}
}
Notes
- It is good practice to remove listeners when they are no longer required, or set them inactive via llListenControl