Unofficial LSL Reference

[[events:start]]


Unofficial LSL reference

User Tools

Login

You are currently not logged in! Enter your authentication credentials below to log in. You need to have cookies enabled to log in.

Login

Forgotten your password? Get a new one: Set new password

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

events:start [2015-01-09 17:10 SLT]
sei Add missing events
events:start [2024-04-15 04:05 SLT] (current)
sei Update to 0.0.20230714000
Line 1: Line 1:
-Here are all events that LSL supports:+$nav 
 +{{## 
 + * Generated by LSL2 Derived Files Generator. 
 + * Database version0.0.20230714000;​ output module version: 0.0.20170615000 
 +##}} 
 +====== Events ======
  
-<​HTML><​div style="​-moz-column-count:3;​-webkit-column-count:​3;​column-count:​3"></​HTML>​ +Events are SL's method for notifying scripts about what's happening. Events do not execute concurrentlythey run one after the other, and there'​s an event queue where they are stored waiting for execution of the last one to finish before the next one starts. The minimum delay between events is 0.022 seconds (one simulator frame). The function ​$lfn[llMinEventDelaycan set a higher minimum delay between events of the //same// type.
-**A**$br[[at_rot_target]]$br +
-[[at_target]]$br +
-[[attach]]$br+
  
-**C**$br +==== The event queue ====
-[[changed]]$br +
-[[collision]]$br +
-[[collision_end]]$br +
-[[collision_start]]$br +
-[[control]]$br+
  
-**D**$br +If an event occurs while another event is being processed, the new event is placed in a queue, waiting for a chance to be executed.
-[[dataserver]]$br+
  
-**E**$br +The queue is able to hold up to 64 events. Certain events can appear in the queue only a limited number of times.
-[[email]]$br +
-[[experience_permissions]]$br +
-[[experience_permissions_denied]]$br+
  
-**H**$br +  ​* $lec[Touch], $lec[collisionand $lec[targetevents, as well as $ev[timer] events, can appear only once in the queue. 
-[[http_request]]$br +  * Up to two $ev[sensorand $ev[no_sensor] events (or a mixture of them) can be enqueued. 
-[[http_response]]$br+  * Most other events can appear any number of times in the queue.
  
-**L**$br +In some cases, events can be removed from the queue:
-[[land_collision]]$br +
-[[land_collision_end]]$br +
-[[land_collision_start]]$br +
-[[link_message]]$br +
-[[listen]]$br+
  
-**M**$br +  ​Events for which there is no event handler in the current state are discarded. 
-[[money]]$br +  ​The event queue is completely cleared by either a reset or a $lkw[state] change. 
-[[moving_end]]$br +  * Using $lfn[llSetTimerEvent](0) removes any pending ​$ev[timer] event from the queue, if present. 
-[[moving_start]]$br+  * Using $lfn[llSensorRemove]() removes ant pending ​$ev[sensoror $ev[no_sensor] events.
  
-**N**$br +Some events are enqueued per //prim// rather than per script, meaning all scripts in the prim will receive them:
-[[no_sensor]]$br +
-[[not_at_rot_target]]$br +
-[[not_at_target]]$br+
  
-**O**$br +  ​* $ev[dataserver] 
-[[object_rez]]$br +  * $ev[object_rez] 
-[[on_rez]]$br+  * $ev[link_message] 
 +  * $ev[http_response]
  
-**P**$br +And some per //object//:
-[[path_update]]$br+
  
-**R**$br +  ​* $ev[money]
-[[remote_data]]$br +
-[[run_time_permissions]]$br+
  
-**S**$br +==== Event categories ====
-[[sensor]]$br +
-[[state_entry]]$br +
-[[state_exit]]$br+
  
-**T**$br +^ Category ^ Description ^ 
-[[timer]]$br +| $lec[Detection] | Includes all events inside which $lfc[detection|detection functions] are valid. | 
-[[touch]]$br +| $lec[Touch] | Includes the $ev[touch_start],​ $ev[touch] and $ev[touch_end] events. | 
-[[touch_end]]$br +| $lec[Collision] | Includes $ev[collision_*] and $ev[land_collision_*]. | 
-[[touch_start]]$br +| $lec[Target] | Includes $ev[`[not_`]at_`[rot_`]target]. | 
-[[transaction_result]]$br + 
-<​HTML></​div></​HTML>​+====== Event list ====== 
 + 
 +Here's a comprehensive list of the events that LSL supports: 
 + 
 +<​HTML><​div style="​width:​100%"><​div style="​float:​left;​width:​32%;​margin-right:​1.9%;​word-wrap:​break-word"></​HTML>​ 
 +**a**\\ 
 +[[at_rot_target]]\\ 
 +[[at_target]]\\ 
 +[[attach]]\\ 
 +\\ 
 +**c**\\ 
 +[[changed]]\\ 
 +[[collision]]\\ 
 +[[collision_end]]\\ 
 +[[collision_start]]\\ 
 +[[control]]\\ 
 +\\ 
 +**d**\\ 
 +[[dataserver]]\\ 
 +\\ 
 +**e**\\ 
 +[[email]]\\ 
 +[[experience_permissions]]\\ 
 +[[experience_permissions_denied]]\\ 
 +\\ 
 +**h**\\ 
 +[[http_request]]\\ 
 +<​HTML></​div><​div style="​float:​left;​width:​32%;​margin-right:​1.9%"></​HTML>​ 
 +[[http_response]]\\ 
 +\\ 
 +**l**\\ 
 +[[land_collision]]\\ 
 +[[land_collision_end]]\\ 
 +[[land_collision_start]]\\ 
 +[[link_message]]\\ 
 +[[linkset_data]]\\ 
 +[[listen]]\\ 
 +\\ 
 +**m**\\ 
 +[[money]]\\ 
 +[[moving_end]]\\ 
 +[[moving_start]]\\ 
 +\\ 
 +**n**\\ 
 +[[no_sensor]]\\ 
 +[[not_at_rot_target]]\\ 
 +[[not_at_target]]\\ 
 +\\ 
 +**o**\\ 
 +[[object_rez]]\\ 
 +<​HTML></​div><​div style="​float:​left;​width:​32%"></​HTML>​ 
 +[[on_rez]]\\ 
 +\\ 
 +**p**\\ 
 +[[path_update]]\\ 
 +\\ 
 +**r**\\ 
 +<wrap important>​[[remote_data]]</​wrap>​\\ 
 +[[run_time_permissions]]\\ 
 +\\ 
 +**s**\\ 
 +[[sensor]]\\ 
 +[[state_entry]]\\ 
 +[[state_exit]]\\ 
 +\\ 
 +**t**\\ 
 +[[timer]]\\ 
 +[[touch]]\\ 
 +[[touch_end]]\\ 
 +[[touch_start]]\\ 
 +[[transaction_result]]\\ 
 +<HTML></​div></​div></​HTML>​