LlSetScriptState - Second Life Wiki

LlSetScriptState

From Second Life Wiki

(Redirected from LSL llSetScriptState)
Jump to: navigation, search

Contents

Description

Function: llSetScriptState( string name, integer run );
148 Function ID
0.0 Delay
10.0 Energy

Set the running state of the script name.

• string name a script in the prim's inventory
• integer run boolean, if FALSE the script will be disabled.

Caveats

  • If name is missing from the prim's inventory or it is not a script then an error is shouted on DEBUG_CHANNEL.
  • Cannot be used to restart a script that has encoutered a run-time error.
  • The script appears to stop when its time slice ends, not sooner. If a script tries to stop itself then some LSL code following the llSetScriptState call may be executed before the script stops.

Examples

//Stops the Script, at some non-deterministic time later, until invoked with TRUE, in another script
llSetScriptState(llGetScriptName(),FALSE);
// Stall until end of time slice
llSleep(0.1);

//Starts Another Script
llSetScriptState("somescript",TRUE);

See Also

Functions

•  llGetScriptState
•  llResetOtherScript

Deep Notes

Issues

• Open Bug    Scripts deactivated by llSetScriptState are reset when the region is reset, when they are taken into inventory and re-rezzed and when crossing sim boundaries.