Difference between revisions of "LlResetOtherScript"
Jump to navigation
Jump to search
All Issues ~ Search JIRA for related Bugs
(Fixed typo :() |
(It took me a while to understand what the sentance framgent was trying to convey, i think this rearrangment helps. Also reordered the a few of the fields to aid readability.) |
||
Line 1: | Line 1: | ||
{{LSL Function | {{LSL Function | ||
|inject-2={{LSL Function/inventory|name|uuid=false|type=script}} | |||
|func_id=249|func_sleep=0.0|func_energy=10.0 | |func_id=249|func_sleep=0.0|func_energy=10.0 | ||
|func=llResetOtherScript|p1_type=string|p1_name=name | |func=llResetOtherScript|p1_type=string|p1_name=name | ||
|func_desc=Resets script '''name'''. | |||
|func_footnote=On script reset... | |func_footnote=On script reset... | ||
*The current event/function is exited without further execution or return. | *The current event/function is exited without further execution or return. | ||
Line 9: | Line 10: | ||
*The [[default]] state is set as the active state | *The [[default]] state is set as the active state | ||
**If it has a [[state_entry]] event, then it is queued. | **If it has a [[state_entry]] event, then it is queued. | ||
|spec | |spec | ||
|caveats= | |caveats= | ||
*If the script is not running, this call has no effect, even after the script is set running again. | *If the script is not running, this call has no effect, even after the script is set running again. | ||
* | *A script can reset itself with this function (not just other scripts). | ||
|constants | |constants | ||
|examples= | |examples= |
Revision as of 10:59, 20 April 2012
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: llResetOtherScript( string name );249 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Resets script name.
• string | name | – | a script in the inventory of the prim this script is in |
On script reset...
- The current event/function is exited without further execution or return.
- All global variables are set to their defaults
- The event queue is cleared, and recurring events are stopped.
- The default state is set as the active state
- If it has a state_entry event, then it is queued.
Caveats
- If name is missing from the prim's inventory or it is not a script then an error is shouted on DEBUG_CHANNEL.
- If the script is not running, this call has no effect, even after the script is set running again.
- A script can reset itself with this function (not just other scripts).
Examples
<lsl> integer menu_channel = -2345;
default { state_entry(){ llListen(menu_channel, "", "", ""); }
touch_start(integer total_number){ llDialog(llDetectedKey(0), "Reset database script?", ["Yes", "No"], menu_channel); }
listen(integer channel, string name, key id, string message){ if (message == "Yes"){ llSay(0, "Reseting script..."); llResetOtherScript("Database_script"); // The script must be in the same prim and does have to be running } else llSay(0, "Operation canceled"); } }
</lsl>See Also
Functions
• | llResetScript | |||
• | llGetScriptState | |||
• | llSetScriptState |