Difference between revisions of "LSL Delay"

From Second Life Wiki
Jump to navigation Jump to search
m
(→‎Events: Changed to be more factually accurate)
 
(11 intermediate revisions by 5 users not shown)
Line 9: Line 9:


{|
{|
|- valign="top"
|
|
{|{{Prettytable}}
{|{{Prettytable}}
Line 17: Line 18:
|| 20.0  
|| 20.0  
|| [[llRefreshPrimURL]]
|| [[llRefreshPrimURL]]
|-
|| 20.0
|| [[llSetPrimURL]]
|-  
|-  
|| 20.0  
|| 20.0  
Line 44: Line 48:
|| 3.0  
|| 3.0  
|| [[llGiveInventoryList]]
|| [[llGiveInventoryList]]
|-
|| 2.0
|| [[llSetPrimURL]]
|-  
|-  
|| 2.0  
|| 2.0  
Line 191: Line 192:
|| 0.1  
|| 0.1  
|| [[llAddToLandBanList]]
|| [[llAddToLandBanList]]
|-
|| variable
|| [[llSleep|llSleep(float variable)]]
|}
|}
|}
|}


==Events==
==Events==
All events have a min delay, the default delay between events is 0.05 seconds, a longer delay can be specified with [[llMinEventDelay]]. A delay less than the default will have the same effect as if it were the default.
All events except [[state_entry]] and [[state_exit]] have a minimum delay. The default delay between events is 0.022 seconds (one simulator frame); a longer delay can be specified with [[llMinEventDelay]]. A delay less than the default will have the same effect as if it were the default. The [[link_message]], [[run_time_permissions]] and [[http_request]] events don't obey the delay set in '''llMinEventDelay'''. While there is a maximum of one event per simulator frame (with the exception of state_entry and state_exit, which can be triggered multiple times in one frame), those events that don't obey '''llMinEventDelay''' are scheduled with a higher priority than the rest.


{|
{|
|- valign="top"
|
|
{|{{Prettytable}}
{|{{Prettytable}}
Line 204: Line 209:
! Events
! Events
|-  
|-  
||
||0.022
||[[at_rot_target]]
||[[at_rot_target]]
|-  
|-  
||
||0.022
||[[at_target]]
||[[at_target]]
|-  
|-  
Line 213: Line 218:
||[[attach]]
||[[attach]]
|-  
|-  
||
||0.022
||[[changed]]
||[[changed]]
|-  
|-  
Line 225: Line 230:
||[[collision_start]]
||[[collision_start]]
|-  
|-  
||0.05
||0.022
||[[control]]
||[[control]]
|-  
|-  
Line 233: Line 238:
||
||
||[[email]]
||[[email]]
|-
||0.022(*)
||[[http_request]]
|-  
|-  
||
||
Line 252: Line 260:
||[[land_collision_start]]
||[[land_collision_start]]
|-  
|-  
||
||0.022(*)
||[[link_message]]
||[[link_message]]
|-  
|-  
||
||0.022
||[[listen]]
||[[listen]]
|-  
|-  
Line 267: Line 275:
||[[moving_start]]
||[[moving_start]]
|-  
|-  
||
||0.022
||[[no_sensor]]
||[[no_sensor]]
|-  
|-  
||
||0.022
||[[not_at_rot_target]]
||[[not_at_rot_target]]
|-
||0.022
||[[not_at_target]]
|-  
|-  
||
||
||[[not_at_target]]
||[[object_rez]]
|}
|}
|
|
Line 283: Line 294:
|-  
|-  
||
||
||[[object_rez]]
||[[on_rez]]
|-  
|-  
||
||
||[[on_rez]]
||[[path_update]]
|-  
|-  
||
||
||[[remote_data]]
||[[remote_data]]
|-  
|-  
||
||0.022(*)
||[[run_time_permissions]]
||[[run_time_permissions]]
|-  
|-  
||
||0.022
||[[sensor]]
||[[sensor]]
|-  
|-  
||
||0(**)
||[[state_entry]]
||[[state_entry]]
|-  
|-  
||
||0(**)
||[[state_exit]]
||[[state_exit]]
|-  
|-  
||
||0.022
||[[timer]]
||[[timer]]
|-  
|-  
||0.1
||0.022
||[[touch]]
||[[touch]]
|-  
|-  
||0.1
||0.022
||[[touch_end]]
||[[touch_end]]
|-  
|-  
||0.1
||0.022
||[[touch_start]]
||[[touch_start]]
|-
||
||[[transaction_result]]
|}
|}
|}
|}
(*) These events don't obey '''llMinEventDelay''' and are given a higher priority.
(**) These events don't obey '''llMinEventDelay''' and can be triggered more than once per simulator frame.

Latest revision as of 08:16, 19 December 2012

Functions

Some LSL functions delay script execution when they are called.

The delay is measured in seconds (it's a float value).

Delay Function
20.0 llRefreshPrimURL
20.0 llSetPrimURL
20.0 llEmail
10.0 llLoadURL
10.0 llGetSimulatorHostname
5.0 llTeleportAgentHome
3.0 llSendRemoteData
3.0 llRemoteLoadScriptPin
3.0 llRemoteLoadScript
3.0 llRemoteDataReply
3.0 llGiveInventoryList
2.0 llSetParcelMusicURL
2.0 llParcelMediaQuery
2.0 llParcelMediaCommandList
2.0 llInstantMessage
2.0 llGetParcelPrimOwners
1.0 llTextBox
1.0 llRequestSimulatorData
Delay Function
1.0 llRequestInventoryData
1.0 llPreloadSound
1.0 llOpenRemoteDataChannel
1.0 llModPow
1.0 llMapDestination
1.0 llDialog
1.0 llCreateLink
1.0 llCloseRemoteDataChannel
0.3 llXorBase64Strings
0.2 llSetTexture
0.2 llSetRot
0.2 llSetRemoteScriptAccessPin
0.2 llSetPrimitiveParams
0.2 llSetPos
0.2 llSetLocalRot
0.2 llSetLinkTexture
0.2 llSetLinkPrimitiveParams
0.2 llScaleTexture
0.2 llRotateTexture
Delay Function
0.2 llOffsetTexture
0.2 llGetPrimitiveParams
0.1 llRezObject
0.1 llRezAtRoot
0.1 llResetLandPassList
0.1 llResetLandBanList
0.1 llRequestAgentData
0.1 llRemoveFromLandPassList
0.1 llRemoveFromLandBanList
0.1 llMakeSmoke
0.1 llMakeFountain
0.1 llMakeFire
0.1 llMakeExplosion
0.1 llGetNumberOfNotecardLines
0.1 llGetNotecardLine
0.1 llAdjustSoundVolume
0.1 llAddToLandPassList
0.1 llAddToLandBanList
variable llSleep(float variable)

Events

All events except state_entry and state_exit have a minimum delay. The default delay between events is 0.022 seconds (one simulator frame); a longer delay can be specified with llMinEventDelay. A delay less than the default will have the same effect as if it were the default. The link_message, run_time_permissions and http_request events don't obey the delay set in llMinEventDelay. While there is a maximum of one event per simulator frame (with the exception of state_entry and state_exit, which can be triggered multiple times in one frame), those events that don't obey llMinEventDelay are scheduled with a higher priority than the rest.

Delay Events
0.022 at_rot_target
0.022 at_target
attach
0.022 changed
collision
collision_end
collision_start
0.022 control
dataserver
email
0.022(*) http_request
http_response
Delay Events
land_collision
land_collision_end
land_collision_start
0.022(*) link_message
0.022 listen
money
moving_end
moving_start
0.022 no_sensor
0.022 not_at_rot_target
0.022 not_at_target
object_rez
Delay Events
on_rez
path_update
remote_data
0.022(*) run_time_permissions
0.022 sensor
0(**) state_entry
0(**) state_exit
0.022 timer
0.022 touch
0.022 touch_end
0.022 touch_start
transaction_result

(*) These events don't obey llMinEventDelay and are given a higher priority.

(**) These events don't obey llMinEventDelay and can be triggered more than once per simulator frame.