Difference between revisions of "LlSetScriptState"

From Second Life Wiki
Jump to navigation Jump to search
(clarify what happens when a script stops itself)
m (lsl code tagging)
Line 13: Line 13:
|constants
|constants
|examples=
|examples=
<pre>//Stops the Script, at some non-deterministic time later, until invoked with TRUE, in another script
<lsl>
//Stops the Script, at some non-deterministic time later, until invoked with TRUE, in another script
llSetScriptState(llGetScriptName(),FALSE);
llSetScriptState(llGetScriptName(),FALSE);
// Stall until end of time slice
// Stall until end of time slice
llSleep(0.1);</pre>
llSleep(0.1);
 
</lsl>
<pre>//Starts Another Script
<lsl>
llSetScriptState("somescript",TRUE);</pre>
//Starts Another Script
llSetScriptState("somescript",TRUE);
</lsl>
|helpers
|helpers
|also_functions=
|also_functions=

Revision as of 12:28, 31 March 2008

Summary

Function: llSetScriptState( string name, integer run );

Set the running state of the script name.

• string name a script in the inventory of the prim this script is in
• 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.
All Issues ~ Search JIRA for related Bugs

Examples

<lsl> //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); </lsl> <lsl> //Starts Another Script llSetScriptState("somescript",TRUE);

</lsl>

See Also

Functions

•  llGetScriptState
•  llResetOtherScript

Deep Notes

Search JIRA for related Issues

Signature

function void llSetScriptState( string name, integer run );