Difference between revisions of "Template:LSL Function"

From Second Life Wiki
Jump to navigation Jump to search
(remove copyright notice <llrobla> go ahead and ditch it)
(Lower case the first character of a function name so it stops appearing as LlCoolFunction and instead shows properly as llCoolFunction)
 
(166 intermediate revisions by 10 users not shown)
Line 1: Line 1:
{{LSL Header}} __NOTOC__  
{{Multi-lang|category=LSL|2=}}{{LSL Header{{#var:lang}}}} __NOTOC__ <noinclude>
<noinclude>
See [[{{#var:langbase}}/docs{{#var:lang}}]] for documentation.
<pre>
</noinclude><includeonly>{{DISPLAYTITLE:{{#if:{{NAMESPACE}}|{{NAMESPACE}}:}}{{lcfirst:{{PAGENAME}}}}}}<!--
{{LSL_Function
I have no idea if the following is still used or I am misunderstanding it. Keeping it for now. -->{{#if:{{#var:sort}}||{{#if:{{{sort|}}}|{{#vardefine:sort|{{{sort|}}}}}|{{#if:{{LSL_Sort}}}}}}}}<div id="sort" style="display:none">{{DEFAULTSORT:{{#var:sort}}}}{{#var:sort}}</div>{{#if:{{#var:nofixname}}||{{#if:{{#pos:{{lc:{{FULLPAGENAMEE}}}}|{{lc:{{{func}}}}}}}|<div id="RealTitleBanner" style="display:none"><span id="RealTitle">{{#if:{{NAMESPACE}}|{{NAMESPACE}}:}}{{{func}}}</span></div>}}}}{{#if:
|func
 
|func_id
{{#vardefine:article_type|function}}
|func_sleep
 
|sort
{{#vardefine:name|{{{func|}}}}}
|func_desc
{{#if:{{{func_id|}}}|{{#vardefine:func_id|{{{func_id|}}}}}|{{#if:{{#var:func_id}}||{{#vardefine:func_id|?}}}}}}
|func_footnote
 
|return_type
{{#vardefine:mode|{{#var:mode}}{{{mode|}}}}}
|return_text
{{#vardefine:self|{{#var:self}}{{{self|}}}}}
|p1_type|p1_name|p1_desc
 
|p2_type|p2_name|p2_desc
{{{inject-1|}}}
|p3_type|p3_name|p3_desc
 
|p4_type|p4_name|p4_desc
{{{{#switch:{{#var:mode}}
|p5_type|p5_name|p5_desc
|god=LSL_Generic/god{{#var:lang}}
|p6_type|p6_name|p6_desc
|request=LSL_Generic/request{{#var:lang}}
|p7_type|p7_name|p7_desc
|pre-release=LSL_Generic/pre-release{{#var:lang}}
|p8_type|p8_name|p8_desc
|rc=LSL_Generic/RC{{#var:lang}}
|p9_type|p9_name|p9_desc
|preview=LSL_Generic/preview{{#var:lang}}
|p10_type|p10_name|p10_desc
|user=!{{#vardefine:moded|u{{#var:moded}}}}
|p11_type|p11_name|p11_desc
|!}}|text={{{mode_text|}}}}}
|p12_type|p12_name|p12_desc
{{{{#if:{{{deprecated|}}}|LSL_Generic/deprecated{{#var:lang}}|!}}|{{{deprecated|}}}|}}
|constants
 
|spec
{{{inject-2|}}}
|caveats
 
|examples
{{#vardefine:p_{{{p1_name|}}}_hover|{{#var:p_{{{p1_name|}}}_hover}}{{{p1_hover|}}}}}
|helpers
{{#vardefine:p_{{{p2_name|}}}_hover|{{#var:p_{{{p2_name|}}}_hover}}{{{p2_hover|}}}}}
|also_header
{{#vardefine:p_{{{p3_name|}}}_hover|{{#var:p_{{{p3_name|}}}_hover}}{{{p3_hover|}}}}}
|also_functions
{{#vardefine:p_{{{p4_name|}}}_hover|{{#var:p_{{{p4_name|}}}_hover}}{{{p4_hover|}}}}}
|also_tests
{{#vardefine:p_{{{p5_name|}}}_hover|{{#var:p_{{{p5_name|}}}_hover}}{{{p5_hover|}}}}}
|also_events
{{#vardefine:p_{{{p6_name|}}}_hover|{{#var:p_{{{p6_name|}}}_hover}}{{{p6_hover|}}}}}
|also_articles
{{#vardefine:p_{{{p7_name|}}}_hover|{{#var:p_{{{p7_name|}}}_hover}}{{{p7_hover|}}}}}
|also_footer
{{#vardefine:p_{{{p8_name|}}}_hover|{{#var:p_{{{p8_name|}}}_hover}}{{{p8_hover|}}}}}
|notes
{{#vardefine:p_{{{p9_name|}}}_hover|{{#var:p_{{{p9_name|}}}_hover}}{{{p9_hover|}}}}}
|mode
{{#vardefine:p_{{{p10_name|}}}_hover|{{#var:p_{{{p10_name|}}}_hover}}{{{p10_hover|}}}}}
|deprecated
{{#vardefine:p_{{{p11_name|}}}_hover|{{#var:p_{{{p11_name|}}}_hover}}{{{p11_hover|}}}}}
|location
{{#vardefine:p_{{{p12_name|}}}_hover|{{#var:p_{{{p12_name|}}}_hover}}{{{p12_hover|}}}}}
|inventory
{{#vardefine:p_{{{p1_name|}}}_desc|{{#var:p_{{{p1_name|}}}_desc}}{{{p1_desc|}}}}}
|permission
{{#vardefine:p_{{{p2_name|}}}_desc|{{#var:p_{{{p2_name|}}}_desc}}{{{p2_desc|}}}}}
|negative_index
{{#vardefine:p_{{{p3_name|}}}_desc|{{#var:p_{{{p3_name|}}}_desc}}{{{p3_desc|}}}}}
|cat1
{{#vardefine:p_{{{p4_name|}}}_desc|{{#var:p_{{{p4_name|}}}_desc}}{{{p4_desc|}}}}}
|cat2
{{#vardefine:p_{{{p5_name|}}}_desc|{{#var:p_{{{p5_name|}}}_desc}}{{{p5_desc|}}}}}
|cat3
{{#vardefine:p_{{{p6_name|}}}_desc|{{#var:p_{{{p6_name|}}}_desc}}{{{p6_desc|}}}}}
|cat4
{{#vardefine:p_{{{p7_name|}}}_desc|{{#var:p_{{{p7_name|}}}_desc}}{{{p7_desc|}}}}}
|cat5
{{#vardefine:p_{{{p8_name|}}}_desc|{{#var:p_{{{p8_name|}}}_desc}}{{{p8_desc|}}}}}
|cat6
{{#vardefine:p_{{{p9_name|}}}_desc|{{#var:p_{{{p9_name|}}}_desc}}{{{p9_desc|}}}}}
{{#vardefine:p_{{{p10_name|}}}_desc|{{#var:p_{{{p10_name|}}}_desc}}{{{p10_desc|}}}}}
{{#vardefine:p_{{{p11_name|}}}_desc|{{#var:p_{{{p11_name|}}}_desc}}{{{p11_desc|}}}}}
{{#vardefine:p_{{{p12_name|}}}_desc|{{#var:p_{{{p12_name|}}}_desc}}{{{p12_desc|}}}}}
 
{{{inject-3|}}}
 
{{#if:{{#var:header_desc}}{{{func_desc|}}}|
{{#vardefine:header_desc|{{#var:header_desc}}{{PBR}}
{{{func_desc|}}}{{PBR}}}}
}}
 
{{#vardefine:return_text|{{#var:return_text}}{{{return_text|}}}{{{Return_text|}}}{{{Returns_text|}}}{{{returns_text|}}} }}
 
{{#if:{{#var:header_footnote}}{{{func_footnote|}}}{{{func_footer|}}}|
{{#vardefine:header_footnote|{{#var:header_footnote}}{{PBR}}
{{{func_footnote|}}}{{PBR}}
{{{func_footer|}}}{{PBR}}
{{#var:header_footnote_last}}{{PBR}}}}
}}
 
{{#if:{{{other_languages|}}}|
{{#vardefine:other_languages|{{LSL_Other_Languages|{{{other_languages|}}}}}}}
}}
 
{{#if:{{#var:newbie}}||
{{#vardefine:newbie|{{#if:{{{newbie|}}}|{{{newbie|}}}|{{#var:langbase}}/Newbie Notes{{#var:lang}}}}}}
}}
 
{{#if:{{#var:spec}}{{{spec|}}}|
{{#vardefine:spec|{{#var:spec}}{{PBR}}
{{{spec|}}}{{PBR}}}}
}}
 
{{#if:{{#var:constants_nb}}{{{constants|}}}|
{{#vardefine:constants_nb|{{#var:constants_nb}}{{PBR}}
{{{constants|}}}{{PBR}}}}
}}
 
{{#vardefine:bugs|{{#var:bugs}}
{{{bugs|}}}}}
 
{{#vardefine:caveats|{{#ifexpr:{{{func_sleep|0.0}}}> 0.0|* <span id="caveats-sleep"></span> This function causes the script to sleep for {{{func_sleep|}}} seconds. {{{func_sleep_note|}}}|{{#ifexpr:{{{func_sleep_frame|0}}}> 0|* <span id="caveats-sleep"></span> This function causes the script to sleep for {{{func_sleep_frame|}}} {{#ifexpr:{{{func_sleep_frame}}}> 1|frames|frame}}. {{{func_sleep_note|}}}|{{#if:{{{func_sleep_note|}}}|* <span id="caveats-sleep"></span> {{{func_sleep_note|}}}}}}}}}{{#if:{{#var:caveats}}|
{{#var:caveats}}}}{{#if:{{{caveats|}}}|
{{{caveats|}}}}}}}
 
{{#if:{{#pos:{{#var:moded}}|u}}||{{#vardefine:caveats|{{LSL_Generic/Caveats}}}}}}
 
{{#if:{{#var:examples}}{{{examples|}}}|
{{#vardefine:examples|{{#var:examples}}{{PBR}}
{{{examples|}}}{{PBR}}}}
}}
 
{{#vardefine:simple-examples|{{#var:simple-examples}}
{{{simple_examples|}}}}}
 
{{#vardefine:complex-examples|{{#var:complex-examples}}
{{{complex_examples|}}}}}
 
{{#if:{{#var:helpers}}{{{helpers|}}}|
{{#vardefine:helpers|{{#var:helpers}}{{PBR}}
{{{helpers|}}}{{PBR}}}}
}}
 
{{#if:{{#var:also_header}}{{{also_header|}}}|
{{#vardefine:also_header|{{#var:also_header}}{{PBR}}
{{{also_header|}}}{{PBR}}}}
}}
 
{{#vardefine:also_constants|{{#var:also_constants}}
{{{also_constants|}}}}}
 
{{#vardefine:also_events|{{#var:also_events}}
{{{also_events|}}}}}
 
{{#vardefine:also_functions|{{#var:also_functions}}
{{{also_functions|}}}}}
 
{{#vardefine:also_articles|{{#var:also_articles}}
{{{also_articles|}}}}}
 
{{#vardefine:also_library|{{#var:also_library}}
{{{also_library|}}}}}
 
{{#if:{{#var:also_footer}}{{{also_footer|}}}|
{{#vardefine:also_footer|{{#var:also_footer}}{{PBR}}
{{{also_footer|}}}{{PBR}}}}
}}
}}
</pre>


The LSL_Function template is a intermediate template for LSL_Generic, which handles the formating for both functions and events (LSL_Event is also an intermediate template). The main job of this template is to change the parameter, names & setup the right-side floater. Also makes permission requirements a part of the template.
{{#if:{{#var:notes}}{{{notes|}}}|
{{#vardefine:notes|{{#var:notes}}{{PBR}}
{{{notes|}}}{{PBR}}}}
}}


{| {{Prettytable}}
{{#if:{{#var:history}}{{{history|}}}|
!parameter
{{#vardefine:history|{{#var:history}}{{PBR}}
!desc
{{{history|}}}{{PBR}}}}
!example
}}
|-
|func
|Function name
|-
|func_id
|{{LSLG|Function ID}}
|1.0
|-
|func_sleep
|{{LSLG|Delay}}
|0.0
|-
|func_energy
|{{LSLG|Energy}}
|10.0
|-
|func_desc
|Function description text.
|Gives the monkey a banana
|-
|func_footnote
|Function footnote (appears after the parameters text).
|Has the side effect of causing the avatar to run in circles shouting like on fire.
|-
|return_type
|return type
|integer
|-
|return_text
|"Returns a return_type return_text" in most cases return_text can be used instead of func_desc.
|that is a monkey
|-
|p1_type
|first parameter type
|-
|p1_name
|first parameter name
|-
|p1_desc
|first parameter desc
|-
|p2_type
|second parameter type
|-
|p2_name
|second parameter name
|-
|p2_desc
|second parameter desc
|
|-
|...
|
|
|-
|p12_type
|twelfth parameter type
|
|-
|p12_name
|twelfth parameter name
|-
|p12_desc
|twelfth parameter desc
|-
|constants
|constants area, no box, please use a table for this section.
|
|-
|spec
|spec box
|
|-
|caveats
|caveats box
|
|-
|examples
|examples box
|
|-
|helpers
|helper functions box
|
|-
|also_header
|also header
|
|-
|also_functions
|also functions indent
|
|-
|also_events
|also events indent
|
|-
|also_articles
|also articles indent
|
|-
|also_tests
|also tests indent
|
|-
|also_footer
|also footer
|
|-
|notes
|notes box
|
|-
|mode
|if mode equals 'god' then it is tagged as requiring godmode. if set to 'request' marks the page as a feature request.
|
|-
|deprecated
|Marks the function as deprecated. Set the value to the replacement functions name or 'none'. If it is not set to none and it is infact set, it will include a link to the replacement function.
|-
|permission
|Set to the PERMISSION_* flag that the function requires. It will amend the appropriate fields to show this requirement (without all the haste of doing it yourself)
|PERMISSION_CHANGE_LINKS
|-
|negative_index
|'true', 'false' or nothing. If set to true or false then it amends the appropriate fields so that the function is marked as supporting or not supporting negative indexes.
|true
|-
|self
|Special field that you only set if you don't want the function to be included in any categories.
|
|-
|cat1
|An LSL specific category and sets the proper sort. (example would add the function to the "LSL Stub" category)
|Stub
|-
|cat2
|"
|-
|cat3
|"
|-
|cat4
|"
|-
|cat5
|"
|-
|cat6
|"
|-
|sort
|not required but used to specify the sort order, if excluded the wiki will calculate this value for you.
|-
|location
|optional: location box, used to say which source file it is defined in.
|-
|inventory
|set to the name of the parameter that is an inventory item name. It makes a nice message in caveats about missing inventory items.
|}


<div id="box">
{{#if:{{#var:deepnotes}}{{{deepnotes|}}}|
{{LSL Function
{{#vardefine:deepnotes|{{#var:deepnotes}}{{PBR}}
|func=MyFunction
{{{deepnotes|}}}{{PBR}}}}
|func_id=-1
}}
|func_sleep=100.5
 
|func_energy=0.0
{{#if:{{#var:mono}}{{{mono|}}}|
|func_desc=A fictitious function
{{#vardefine:mono|{{#var:mono}}{{PBR}}
|func_footnote=func_footnote
{{{mono|}}}{{PBR}}}}
|return_type=void
|return_text=(aka nadda, nothing).
|p1_type=integer|p1_name=i|p1_desc
|p2_type=float|p2_name=f|p2_desc
|p3_type=string|p3_name=s|p3_desc
|p4_type=key|p4_name=k|p4_desc
|p5_type=list|p5_name=l|p5_desc
|p6_type=vector|p6_name=v|p6_desc
|p7_type=rotation|p7_name=r|p7_desc
|constants=constants
|spec=spec
|caveats=caveats
|examples=examples
|helpers=helpers
|also_header=also_header
|also_events=*also_events
|also_functions=*also_functions
|also_articles=*also_articles
|also_tests=*also_tests
|also_footer=also_footer
|notes=notes
|mode
|self=self
|permission=PERMISSION_FLAG
|negative_index=true
|location=location
}}
}}
</div>
 
</noinclude><includeonly>{{#if:{{{func_id|}}}{{{mode|}}}||
{{#if:{{#var:lso}}{{{lso|}}}|
<div id="box" style="background:red;">
{{#vardefine:lso|{{#var:lso}}{{PBR}}
&nbsp;&nbsp;'''Don't delete the 'func_id''''
{{{lso|}}}{{PBR}}}}
<div style="padding: 0.5em;background:#ffffff;">
''func_id is a bit of technical information that should not be removed as it is pertinent to anyone writing an LSL compiler or decompiler, so you go and revert the page or set the value properly right now :P.''</div></div>{{#if:{{{self|}}}|| {{LSLC|FixMe}} }} }}{{#if:{{{also|}}}|
<div id="box" style="background:yellow;">
&nbsp;&nbsp;''' 'also' Tag Removed'''
<div style="padding: 0.5em;background:#ffffff;">
''(Please use 'also_header','also_events','also_functions','also_articles', or 'also_footer')''</div></div>{{#if:{{{self|}}}|| {{LSLC|FixMe}} }} }}{{#if:{{{return_text|}}}{{{func_desc|}}}||
<div id="box" style="background:yellow;">
&nbsp;&nbsp;''' 'return_text' and 'func_desc' can both not be undefined'''
<div style="padding: 0.5em;background:#ffffff;">
''(Please use 'return_text' or 'func_desc' to describe the functions actions.)''</div></div>{{#if:{{{self|}}}|| {{LSLC|FixMe}} }} }} {{LSL Generic
|{{{func}}}|
|header_floater=<table>
<tr>
<td> {{HoverText|{{#ifeq:{{{mode|}}}|request|REQUEST|{{{func_id|}}}}}|The function index number.}}
<td> {{LSLG|Function ID}}
</tr>
<tr>
<td> {{HoverText|{{{func_sleep|}}}|The number of seconds this script will sleep after executing this function.}}
<td> {{LSLG|Delay}}
</tr>
<tr>
<td> {{HoverText|{{{func_energy|}}}|The quantity of energy consumed by this function.}}
<td> {{LSLG|Energy}}
</tr>
</table>
|header_text={{LSL_Generic/Text
|return_type={{{return_type|}}}
|return_text={{{return_text|}}}
|header_desc={{{func_desc|}}}
|header_footnote={{{func_footnote|}}}{{{func_footer|}}}{{#if: {{{permission|}}}| {{#if: {{{func_footnote|}}}{{{func_footer|}}}|<br/>}}Requires the {{LSLG|{{{permission}}}}} permission to run.}}{{#if: {{{negative_index|}}}| {{#if: {{{func_footnote|}}}{{{func_footer|}}}{{{permission|}}}|<br/>}}This function {{#ifeq:{{{negative_index|}}}|false| ''does not'' support | supports }} {{LSLGC|Negative Index|negative indexes}}.}}
|p1_name={{{p1_name|}}}|p1_type={{{p1_type|}}}|p1_desc={{{p1_desc|}}}
|p2_name={{{p2_name|}}}|p2_type={{{p2_type|}}}|p2_desc={{{p2_desc|}}}
|p3_name={{{p3_name|}}}|p3_type={{{p3_type|}}}|p3_desc={{{p3_desc|}}}
|p4_name={{{p4_name|}}}|p4_type={{{p4_type|}}}|p4_desc={{{p4_desc|}}}
|p5_name={{{p5_name|}}}|p5_type={{{p5_type|}}}|p5_desc={{{p5_desc|}}}
|p6_name={{{p6_name|}}}|p6_type={{{p6_type|}}}|p6_desc={{{p6_desc|}}}
|p7_name={{{p7_name|}}}|p7_type={{{p7_type|}}}|p7_desc={{{p7_desc|}}}
|p8_name={{{p8_name|}}}|p8_type={{{p8_type|}}}|p8_desc={{{p8_desc|}}}
|p9_name={{{p9_name|}}}|p9_type={{{p9_type|}}}|p9_desc={{{p9_desc|}}}
|p10_name={{{p10_name|}}}|p10_type={{{p10_type|}}}|p10_desc={{{p10_desc|}}}
|p11_name={{{p11_name|}}}|p11_type={{{p11_type|}}}|p11_desc={{{p11_desc|}}}
|p12_name={{{p12_name|}}}|p12_type={{{p12_type|}}}|p12_desc={{{p12_desc|}}}}}
|header_title=Function: {{LSL_Generic/Title
|return_type={{{return_type|}}}
|name={{{func}}}
|return_end=;
|template=LSLG
|p1_name={{#if:{{{p1_desc|}}}|{{HoverText|{{{p1_name|}}}|{{{p1_desc|}}}}}|{{{p1_name|}}}}}|p1_type={{{p1_type|}}}
|p2_name={{#if:{{{p2_desc|}}}|{{HoverText|{{{p2_name|}}}|{{{p2_desc|}}}}}|{{{p2_name|}}}}}|p2_type={{{p2_type|}}}
|p3_name={{#if:{{{p3_desc|}}}|{{HoverText|{{{p3_name|}}}|{{{p3_desc|}}}}}|{{{p3_name|}}}}}|p3_type={{{p3_type|}}}
|p4_name={{#if:{{{p4_desc|}}}|{{HoverText|{{{p4_name|}}}|{{{p4_desc|}}}}}|{{{p4_name|}}}}}|p4_type={{{p4_type|}}}
|p5_name={{#if:{{{p5_desc|}}}|{{HoverText|{{{p5_name|}}}|{{{p5_desc|}}}}}|{{{p5_name|}}}}}|p5_type={{{p5_type|}}}
|p6_name={{#if:{{{p6_desc|}}}|{{HoverText|{{{p6_name|}}}|{{{p6_desc|}}}}}|{{{p6_name|}}}}}|p6_type={{{p6_type|}}}
|p7_name={{#if:{{{p7_desc|}}}|{{HoverText|{{{p7_name|}}}|{{{p7_desc|}}}}}|{{{p7_name|}}}}}|p7_type={{{p7_type|}}}
|p8_name={{#if:{{{p8_desc|}}}|{{HoverText|{{{p8_name|}}}|{{{p8_desc|}}}}}|{{{p8_name|}}}}}|p8_type={{{p8_type|}}}
|p9_name={{#if:{{{p9_desc|}}}|{{HoverText|{{{p9_name|}}}|{{{p9_desc|}}}}}|{{{p9_name|}}}}}|p9_type={{{p9_type|}}}
|p10_name={{#if:{{{p10_desc|}}}|{{HoverText|{{{p10_name|}}}|{{{p10_desc|}}}}}|{{{p10_name|}}}}}|p10_type={{{p10_type|}}}
|p11_name={{#if:{{{p11_desc|}}}|{{HoverText|{{{p11_name|}}}|{{{p11_desc|}}}}}|{{{p11_name|}}}}}|p11_type={{{p11_type|}}}
|p12_name={{#if:{{{p12_desc|}}}|{{HoverText|{{{p12_name|}}}|{{{p12_desc|}}}}}|{{{p12_name|}}}}}|p12_type={{{p12_type|}}}
}}
}}
|deprecated={{{deprecated|}}}{{{depreciated|}}}
 
|constants_nb={{{constants|}}}
{{#vardefine:issues|{{#var:issues}}
|spec={{{spec|}}}
{{{issues|}}}}}
|caveats={{#ifexpr:{{{func_sleep|0.0}}}> 0.0|*This function causes the script to sleep for {{{func_sleep|}}} seconds.}}
 
{{{caveats|}}}{{#if: {{{permission|}}}|
{{#vardefine:also_tests|{{#var:also_tests}}
* If the script lacks the permission {{LSLG|{{{permission}}}}}, the script shout an error on {{LSLG|DEBUG_CHANNEL}} and the operation fails (but the script continues to run).}}{{#if: {{{inventory|}}}|
{{{also_tests|}}}}}
* If '''{{{inventory}}}''' is missing from the scripts inventory an error is shouted on {{LSLG|DEBUG_CHANNEL}}.}}
 
|examples={{{examples|}}}
{{#if:{{#var:location}}{{{location|}}}|
|helpers={{{helpers|}}}
{{#vardefine:location|{{#var:location}}{{PBR}}
|also_header={{{also_header|}}}
{{{location|}}}{{PBR}}}}
|also_tests={{{also_tests|}}}
|also_events={{{also_events|}}}{{#if: {{{permission|}}}|
* {{LSLG|run_time_permissions}}
}}
}}
|also_functions={{{also_functions|}}}{{#if: {{{permission|}}}|
 
* {{LSLG|llGetPermissions}}
{{#if:{{#var:messaging}}{{{messaging|}}}|
* {{LSLG|llRequestPermissions}}
{{#vardefine:messaging|{{#var:messaging}}{{PBR}}
{{{messaging|}}}{{PBR}}}}
}}
}}
|also_articles={{{also_articles|}}}{{#if: {{{permission|}}}|
 
* {{LSLG|Script permissions}}
}}{{#if:{{#var:self}}|| __NOEDITSECTION__
}}{{#ifeq: {{{negative_index|}}}|true|
}}{{#var:header}}{{#if:{{#var:func_id}}{{#var:mode}}{{#var:moded}}||
* {{LSLGC|Negative Index}}
{{#if:{{#var:self}}|| [[Category:LSL FixMe]] }} }}{{#if:{{#if:{{{return_type|}}}|{{#var:return_text}}}}{{{func_desc|}}}||<div id="box" style="background:yellow;">
&nbsp;&nbsp;'''Either 'func_desc' or 'return_type' & 'return_text' must be defined'''
<div style="padding: 0.5em;background:#ffffff;">
''(Please use 'return_text' & 'return_type' or 'func_desc' to summarize the functions actions.)''</div></div>{{#if:{{#var:self}}|| [[Category:LSL FixMe]] }} }}
{{RightToc|font-size:80%}}
<div id="box"><h2 style="display:none"> Summary </h2>{{#ifexpr:{{#var:BugCounter|0}} > 0|<div class="mw-headline" style="float:right; margin: 5px 0.5em 0 0.5em;">{{LSL_Bug_Icon}}</div>}}<span id="{{anchorencode:Description}}" style="display:none"></span><span id="{{anchorencode:Summary}}" class="mw-headline" style="display:block; padding-bottom:0.17em; padding-top:0.5em; background:transparent none repeat scroll 0% 0%; color:#546368; font-family:Arial,Helvetica,Sans-Serif; background-color:#F4F8FB; border-bottom:1px dotted #AAAAAA; font-size:120%; font-weight:bold; margin:0pt; padding:0.2em 0.5em; text-align:left;"> [[:Category:LSL_Functions{{#var:lang}}|Function]]: {{#if:{{{return_type|}}}|[[{{{return_type|}}}{{#var:lang}}|{{{return_type|}}}]]||}} '''{{{func}}}'''( {{#if:{{{p1_name|}}}{{{p1_type|}}}| [[{{{p1_type|}}}{{#var:lang}}|{{{p1_type|}}}]] {{LSL Param|{{{p1_name|}}}}}{{#if:{{{p2_name|}}}{{{p2_type|}}}|, [[{{{p2_type|}}}{{#var:lang}}|{{{p2_type|}}}]] {{LSL Param|{{{p2_name|}}}}}{{#if:{{{p3_name|}}}{{{p3_type|}}}|, [[{{{p3_type|}}}{{#var:lang}}|{{{p3_type|}}}]] {{LSL Param|{{{p3_name|}}}}}{{#if:{{{p4_name|}}}{{{p4_type|}}}|, [[{{{p4_type|}}}{{#var:lang}}|{{{p4_type|}}}]] {{LSL Param|{{{p4_name|}}}}}{{#if:{{{p5_name|}}}{{{p5_type|}}}|, [[{{{p5_type|}}}{{#var:lang}}|{{{p5_type|}}}]] {{LSL Param|{{{p5_name|}}}}}{{#if:{{{p6_name|}}}{{{p6_type|}}}|, [[{{{p6_type|}}}{{#var:lang}}|{{{p6_type|}}}]] {{LSL Param|{{{p6_name|}}}}}{{#if:{{{p7_name|}}}{{{p7_type|}}}|, [[{{{p7_type|}}}{{#var:lang}}|{{{p7_type|}}}]] {{LSL Param|{{{p7_name|}}}}}{{#if:{{{p8_name|}}}{{{p8_type|}}}|, [[{{{p8_type|}}}{{#var:lang}}|{{{p8_type|}}}]] {{LSL Param|{{{p8_name|}}}}}{{#if:{{{p9_name|}}}{{{p9_type|}}}|, [[{{{p9_type|}}}{{#var:lang}}|{{{p9_type|}}}]] {{LSL Param|{{{p9_name|}}}}}{{#if:{{{p10_name|}}}{{{p10_type|}}}|, [[{{{p10_type|}}}{{#var:lang}}|{{{p10_type|}}}]] {{LSL Param|{{{p10_name|}}}}}{{#if:{{{p11_name|}}}{{{p11_type|}}}|, [[{{{p11_type|}}}{{#var:lang}}|{{{p11_type|}}}]] {{LSL Param|{{{p11_name|}}}}}{{#if:{{{p12_name|}}}{{{p12_type|}}}|, [[{{{p12_type|}}}{{#var:lang}}|{{{p12_type|}}}]] {{LSL Param|{{{p12_name|}}}}}}}}}}}}}}}}}}}}}}}}}}}}} )<nowiki>;</nowiki></span>
<div style="padding: 0.5em; min-height: {{#if:{{{func_complexity|}}}|6em;|5em;}}">{{#if:{{#pos:{{#var:moded}}|u}}|{{#if:{{#var:floater}}|<div id="box" style="float:right;">{{#var:floater}}</div>}}|<div id="box" style="float:right; margin: 0 0.5em; font-size:90%;">
{{{!}} class="collapsible"
{{!}}- style="font-size:75%;"
{{!}}+
{{!}}-
{{!}} {{HoverText|{{#var:func_id}}|The function index number.}}
{{!}} [[LSL Function ID{{#var:lang}}|Function ID]]
{{!}}-
{{!}} {{HoverText|{{{func_sleep|}}}|The number of seconds this script will sleep after executing this function.}}{{HoverText|{{{func_sleep_frame|}}}|The number of frames this script will sleep after executing this function.}}{{#if:{{{func_sleep_note|}}}|{{HoverLink|#caveats-sleep|3=*|2={{{func_sleep_hover|{{{func_sleep_note|}}}}}}}}}}
{{!}} [[LSL Delay{{#var:lang}}|Forced Delay]]
{{!}}-
{{#if:{{{func_complexity|}}}|
{{!}} {{HoverText|{{{func_complexity|}}}|The complexity of the function based on the parameters.}}
{{!}} [[LSL Complexity{{#var:lang}}|Compl.]]
{{!}}-}}
{{!}} {{HoverText|{{{func_energy|}}}|The quantity of energy consumed by this function.}}
{{!}} [[Energy{{#var:lang}}|Energy]]
{{!}}}</div>}}
{{#if:{{#var:header_desc}}|{{#var:header_desc}}{{PBR}}{{#if:{{{return_type|}}}|<br id="bdart"/>}}}}{{#if:{{{return_type|}}}| Returns {{#if:{{{return_subtype|}}}|{{#if:{{{returns_text|}}}{{{Returns_text|}}}||{{ItBlind|{{#if:{{{return_subtype_disp|}}}|{{{return_subtype_disp|}}}|{{{return_subtype|}}}}}|{{{Return_text|}}}}}}} {{CAL|LSL {{ucfirst:{{{return_type|}}}}}/{{{return_subtype|}}}{{#var:lang}}|{{#if:{{{return_subtype_disp|}}}|{{{return_subtype_disp}}}|{{{return_subtype}}}}}}} ({{ItLink|{{{return_type|}}}}})|{{#if:{{{returns_text|}}}{{{Returns_text|}}}||{{It|{{{return_type|}}}|{{{Return_text|}}}}}}}}} {{#if:{{#var:return_text}}| {{#var:return_text}} }}{{PBR}}}}
{{#if:{{{p1_name|}}}{{{p1_type|}}}|{{{!}}
{{LSL DefineRow|1={{{p1_type|}}}|2={{#if:{{{p1_subtype|}}}|{{CAL|LSL {{ucfirst:{{{p1_type|}}}}}/{{{p1_subtype|}}}{{#var:lang}}|{{{p1_name|}}}}}|{{LSL_Parameter_Link|{{{p1_name|}}}}}}}|3={{#var:p_{{{p1_name|}}}_desc}}}}
{{#if:{{{p2_name|}}}{{{p2_type|}}}|{{LSL DefineRow|1={{{p2_type|}}}|2={{#if:{{{p2_subtype|}}}|{{CAL|LSL {{ucfirst:{{{p2_type|}}}}}/{{{p2_subtype|}}}{{#var:lang}}|{{{p2_name|}}}}}|{{LSL_Parameter_Link|{{{p2_name|}}}}}}}|3={{#var:p_{{{p2_name|}}}_desc}}}}
{{#if:{{{p3_name|}}}{{{p3_type|}}}|{{LSL DefineRow|1={{{p3_type|}}}|2={{#if:{{{p3_subtype|}}}|{{CAL|LSL {{ucfirst:{{{p3_type|}}}}}/{{{p3_subtype|}}}{{#var:lang}}|{{{p3_name|}}}}}|{{LSL_Parameter_Link|{{{p3_name|}}}}}}}|3={{#var:p_{{{p3_name|}}}_desc}}}}
{{#if:{{{p4_name|}}}{{{p4_type|}}}|{{LSL DefineRow|1={{{p4_type|}}}|2={{#if:{{{p4_subtype|}}}|{{CAL|LSL {{ucfirst:{{{p4_type|}}}}}/{{{p4_subtype|}}}{{#var:lang}}|{{{p4_name|}}}}}|{{LSL_Parameter_Link|{{{p4_name|}}}}}}}|3={{#var:p_{{{p4_name|}}}_desc}}}}
{{#if:{{{p5_name|}}}{{{p5_type|}}}|{{LSL DefineRow|1={{{p5_type|}}}|2={{#if:{{{p5_subtype|}}}|{{CAL|LSL {{ucfirst:{{{p5_type|}}}}}/{{{p5_subtype|}}}{{#var:lang}}|{{{p5_name|}}}}}|{{LSL_Parameter_Link|{{{p5_name|}}}}}}}|3={{#var:p_{{{p5_name|}}}_desc}}}}
{{#if:{{{p6_name|}}}{{{p6_type|}}}|{{LSL DefineRow|1={{{p6_type|}}}|2={{#if:{{{p6_subtype|}}}|{{CAL|LSL {{ucfirst:{{{p6_type|}}}}}/{{{p6_subtype|}}}{{#var:lang}}|{{{p6_name|}}}}}|{{LSL_Parameter_Link|{{{p6_name|}}}}}}}|3={{#var:p_{{{p6_name|}}}_desc}}}}
{{#if:{{{p7_name|}}}{{{p7_type|}}}|{{LSL DefineRow|1={{{p7_type|}}}|2={{#if:{{{p7_subtype|}}}|{{CAL|LSL {{ucfirst:{{{p7_type|}}}}}/{{{p7_subtype|}}}{{#var:lang}}|{{{p7_name|}}}}}|{{LSL_Parameter_Link|{{{p7_name|}}}}}}}|3={{#var:p_{{{p7_name|}}}_desc}}}}
{{#if:{{{p8_name|}}}{{{p8_type|}}}|{{LSL DefineRow|1={{{p8_type|}}}|2={{#if:{{{p8_subtype|}}}|{{CAL|LSL {{ucfirst:{{{p8_type|}}}}}/{{{p8_subtype|}}}{{#var:lang}}|{{{p8_name|}}}}}|{{LSL_Parameter_Link|{{{p8_name|}}}}}}}|3={{#var:p_{{{p8_name|}}}_desc}}}}
{{#if:{{{p9_name|}}}{{{p9_type|}}}|{{LSL DefineRow|1={{{p9_type|}}}|2={{#if:{{{p9_subtype|}}}|{{CAL|LSL {{ucfirst:{{{p9_type|}}}}}/{{{p9_subtype|}}}{{#var:lang}}|{{{p9_name|}}}}}|{{LSL_Parameter_Link|{{{p9_name|}}}}}}}|3={{#var:p_{{{p9_name|}}}_desc}}}}
{{#if:{{{p10_name|}}}{{{p10_type|}}}|{{LSL DefineRow|1={{{p10_type|}}}|2={{#if:{{{p10_subtype|}}}|{{CAL|LSL {{ucfirst:{{{p10_type|}}}}}/{{{p10_subtype|}}}{{#var:lang}}|{{{p10_name|}}}}}|{{LSL_Parameter_Link|{{{p10_name|}}}}}}}|3={{#var:p_{{{p10_name|}}}_desc}}}}
{{#if:{{{p11_name|}}}{{{p11_type|}}}|{{LSL DefineRow|1={{{p11_type|}}}|2={{#if:{{{p11_subtype|}}}|{{CAL|LSL {{ucfirst:{{{p11_type|}}}}}/{{{p11_subtype|}}}{{#var:lang}}|{{{p11_name|}}}}}|{{LSL_Parameter_Link|{{{p11_name|}}}}}}}|3={{#var:p_{{{p11_name|}}}_desc}}}}
{{#if:{{{p12_name|}}}{{{p12_type|}}}|{{LSL DefineRow|1={{{p12_type|}}}|2={{#if:{{{p12_subtype|}}}|{{CAL|LSL {{ucfirst:{{{p12_type|}}}}}/{{{p12_subtype|}}}{{#var:lang}}|{{{p12_name|}}}}}|{{LSL_Parameter_Link|{{{p12_name|}}}}}}}|3={{#var:p_{{{p12_name|}}}_desc}}}}
}}}}}}}}}}}}}}}}}}}}}}
{{!}}}
}}{{#if:{{#var:header_footnote}}|
<div style="margin-top:0.5em;"></div>
{{#var:header_footnote}}
}}{{#if:{{#var:other_languages}}|
<div style="margin-top:0.5em;"></div>
{{#var:other_languages}}
}}</div>
</div>{{#ifexist:{{#var:newbie}}|<div id="box">
<h2>[[{{#var:newbie}}|Newbie Notes]]</h2>
<div style="padding: 0.5em; max-height:10em; overflow-x:visible; overflow-y:auto;">
{{:{{#var:newbie}}}}
</div><div style="padding:0 0.5em;">
To continue reading see: [[{{#var:newbie}}|Newbie Notes]]
</div></div>}}{{#if:{{#var:spec}}|<div id="box">
<h2>Specification</h2>
<div style="padding: 0.5em;">
{{#var:spec}}
</div></div>}}{{#if:{{#var:constants_nb}}{{#var:constants}}|
{{#var:constants_nb}}
{{#if:{{#var:constants}}|
<div id="box">
<h2>Constants</h2>
{{#var:constants}}
</div>}}}}{{#if:{{#var:caveats}}|<div id="box">
<h2>Caveats</h2>
<div style="padding: 0.5em;">
{{#var:caveats}}
</div></div>}}{{#if:{{#if:{{#var:deprecated}}||t}}{{#var:examples}}{{#simple-examples}}{{#complex-examples}}|<div id="box">
<h2>Examples</h2>
<div style="padding: 0.5em;">
{{#var:examples}}{{#if:{{#var:simple-examples}}|
<div style="float:left; min-width:200px; width:45%;">
===Simple Examples===
{{{!}}
{{#var:simple-examples}}
{{!}}}
</div>}}{{#if:{{#var:complex-examples}}|
<div style="float:left;">
===Complex Examples===
{{{!}}
{{#var:complex-examples}}
{{!}}}
</div>}}<div style="clear:left;"></div>
</div></div>}}{{#if:{{#var:helpers}}|<div id="box">
<h2>Useful Snippets</h2>
<div style="padding: 0.5em;">
{{#var:helpers}}
</div></div>}}{{#if:{{#var:notes}}|<div id="box">
<h2>Notes</h2>
<div style="padding: 0.5em;">
{{#var:notes}}
</div></div>}}{{#if:{{#var:also_footer}}{{#var:also_functions}}{{#var:also_events}}{{#var:also_articles}}{{#var:also_header}}{{#var:also_library}}{{#var:also_constants}}|<div id="box">
<h2>See Also</h2>
<div style="padding: 0.5em;">
{{#if:{{#var:also_header}}|<div>
{{#var:also_header}}
</div>}}{{#if:{{#var:also_constants}}|
<h3>Constants</h3>
{{{!}}
{{#var:also_constants}}
{{!}}} }}{{#if:{{#var:also_events}}|
<h3>Events</h3>
{{{!}}
{{#var:also_events}}
{{!}}} }}{{#if:{{#var:also_functions}}|
<h3>Functions</h3>
{{{!}}
{{#var:also_functions}}
{{!}}} }}{{#if:{{#var:also_articles}}|
<h3>Articles</h3>
{{{!}}
{{#var:also_articles}}
{{!}}} }}{{#if:{{#var:also_library}}|
<h3>Libraries and Examples</h3>
{{{!}}
{{#var:also_library}}
{{!}}} }}{{#if:{{#var:also_footer}}|
<div style="margin-top:0.5em;">
{{#var:also_footer}}
</div>}}
</div></div>}}{{#if:{{#var:deepnotes}}{{#var:mono}}{{#var:lso}}{{#var:history}}{{#var:also_tests}}{{#var:issues{{#var:direction}}}}{{#var:location}}{{#var:messaging}}{{#var:footnotes}}{{#if:{{#pos:{{#var:moded}}|u}}||1}}{{{signature|}}}{{{haiku|}}}{{{poetry|}}}|<div id="box">
== Deep Notes ==
<div style="padding: 0.5em"><div>
{{#var:deepnotes}}
</div>{{#if:{{#var:mono}}|
<h4> Mono VM Notes </h4><div>
{{#var:mono}}
</div>}}{{#if:{{#var:lso}}|
<h4> LSO VM Notes </h4><div>
{{#var:lso}}
</div>}}{{#if:{{#var:history}}|
<h4> History </h4><div>
{{{!}}
{{#var:history}}
{{!}}}
</div>}}
{{Anchor|Issues}}{{LSL_Generic/Issues}}{{#if:{{#var:also_tests}}|
<h3>Tests</h3>
{{{!}}
{{#var:also_tests}}
{{!}}}
}}{{#if:{{#var:location}}|
<h4> Source </h4><div>
{{#var:location}}
</div>}}{{#if:{{#var:messaging}}|
<h4> Messaging </h4><div>
{{#var:messaging}}
</div>}}{{#if:{{#var:footnotes}}|
<h4 style="margin-bottom:0;"> Footnotes </h4>
{{{{#if:{{#var:footnotes}}|Footnotes|!}}|}}
}}
}}
|also_footer={{{also_footer|}}}
{{Collapsible_Table|collapsed=*|table-style=width:100%;|title-style=text-align:left;|title=<h4 style="margin-top:0;">Signature</h4>|content={{!}}
|notes={{{notes|}}}
{{#tag:pre|{{#if:{{#pos:{{#var:moded}}|u}}||{{#if:{{#pos:{{#var:moded}}|r}}|//}}function {{#if:{{{return_type|}}}|{{{return_type|}}}|void}} {{{func}}}{{#if:{{{p1_name|}}}{{{p1_type|}}}|( {{{p1_type|}}} {{{p1_name|}}}{{#if:{{{p2_name|}}}{{{p2_type|}}}|, {{{p2_type|}}} {{{p2_name|}}}{{#if:{{{p3_name|}}}{{{p3_type|}}}|, {{{p3_type|}}} {{{p3_name|}}}{{#if:{{{p4_name|}}}{{{p4_type|}}}|, {{{p4_type|}}} {{{p4_name|}}}{{#if:{{{p5_name|}}}{{{p5_type|}}}|, {{{p5_type|}}} {{{p5_name|}}}{{#if:{{{p6_name|}}}{{{p6_type|}}}|, {{{p6_type|}}} {{{p6_name|}}}{{#if:{{{p7_name|}}}{{{p7_type|}}}|, {{{p7_type|}}} {{{p7_name|}}}{{#if:{{{p8_name|}}}{{{p8_type|}}}|, {{{p8_type|}}} {{{p8_name|}}}{{#if:{{{p9_name|}}}{{{p9_type|}}}|, {{{p9_type|}}} {{{p9_name|}}}{{#if:{{{p10_name|}}}{{{p10_type|}}}|, {{{p10_type|}}} {{{p10_name|}}}{{#if:{{{p11_name|}}}{{{p11_type|}}}|, {{{p11_type|}}} {{{p11_name|}}}{{#if:{{{p12_name|}}}{{{p12_type|}}}|, {{{p12_type|}}} {{{p12_name|}}}}}}}}}}}}}}}}}}}}}}}}} )|()}}<nowiki>;</nowiki>{{#if:{{{desc|}}}|//{{{desc|}}}}}
|mode={{{mode|}}}
<nowiki></nowiki>}}{{#if:{{{signature|}}}|{{{signature|}}}
|self={{{self|}}}
}}{{#if:{{#var:signature}}|{{#var:signature}}
|type=function
}}|id="lsl-signature"}}}}
|template=LSLG
{{#if:{{{haiku|}}}{{{poetry|}}}|{{Collapsible_Table|collapsed=*|table-class=haiku|table-style=width:100%;|title-style=text-align:left;|title=<h4 style="margin-top:0;">Haiku</h4>|content={{!}}
|sort={{{sort|}}}
{{{haiku|}}}
|location={{{location|}}}
{{{poetry|}}}
|footer={{#ifeq:{{{mode|}}}|request||{{#if:{{{no_footer|}}}||:}}}}
}}}}
}}{{#if:{{{self|}}}|| {{#ifeq:{{{mode|}}}|request|| {{LSLC|Functions|{{{sort|}}}}} {{#if:{{{examples|}}}||{{LSLC|Needs Example|{{{sort|}}}}}}} {{#if: {{{permission|}}}|{{LSLC|Permissions/Asset|{{{sort|}}}}}}} {{#ifeq:{{{negative_index|}}}|true|{{LSLC|Negative Index|{{{sort|}}}}}}}}} {{#if:{{{cat1|}}}|{{LSLC|{{{cat1}}}|{{{sort|}}}}}}} {{#if:{{{cat2|}}}|{{LSLC|{{{cat2}}}|{{{sort|}}}}}}} {{#if:{{{cat3|}}}|{{LSLC|{{{cat3}}}|{{{sort|}}}}}}} {{#if:{{{cat4|}}}|{{LSLC|{{{cat4}}}|{{{sort|}}}}}}} {{#if:{{{cat5|}}}|{{LSLC|{{{cat5}}}|{{{sort|}}}}}}} {{#if:{{{cat6|}}}|{{LSLC|{{{cat6}}}|{{{sort|}}}}}}} }}</includeonly>
</div></div>}}{{#if:{{{comments|}}}|<div id="box">
<h2>Comments</h2>
<div style="padding: 0.5em;">
{{{comments|}}}
</div></div>}}
<div style="display:none" class="hidden-text" id="hidden-text">{{#var:hidden-text}}</div>
{{#var:footer}} {{#if:{{#var:self}}|| {{#if:{{#pos:{{#var:moded}}|r}}{{#pos:{{#var:moded}}|u}}|| {{#if:{{{haiku|}}}|[[Category:Articles with haiku{{#var:lang}}]]|[[Category:Articles in need of haiku{{#var:lang}}]]}}[[Category:LSL Functions{{#var:lang}}]] {{#if:{{{return_type|}}}|{{LSLC|Functions/Returns {{AAn|{{{return_type|}}}}}{{#var:lang}}}} {{#if:{{{return_subtype|}}}|{{LSLC|Functions/Returns a {{{return_type|}}}/{{{return_subtype|}}}{{#var:lang}}}}}}|{{LSLC|Functions/Returns nothing{{#var:lang}}}}}} {{#if:{{{p1_name|}}}{{{p1_type|}}}|{{LSLC|Parameters/{{{p1_name|}}}{{#var:lang}}}}{{#if:{{{p2_name|}}}{{{p2_type|}}}|{{LSLC|Parameters/{{{p2_name|}}}{{#var:lang}}}}{{#if:{{{p3_name|}}}{{{p3_type|}}}|{{LSLC|Parameters/{{{p3_name|}}}{{#var:lang}}}}{{#if:{{{p4_name|}}}{{{p4_type|}}}|{{LSLC|Parameters/{{{p4_name|}}}{{#var:lang}}}}{{#if:{{{p5_name|}}}{{{p5_type|}}}|{{LSLC|Parameters/{{{p5_name|}}}{{#var:lang}}}}{{#if:{{{p6_name|}}}{{{p6_type|}}}|{{LSLC|Parameters/{{{p6_name|}}}{{#var:lang}}}}{{#if:{{{p7_name|}}}{{{p7_type|}}}|{{LSLC|Parameters/{{{p7_name|}}}{{#var:lang}}}}{{#if:{{{p8_name|}}}{{{p8_type|}}}|{{LSLC|Parameters/{{{p8_name|}}}{{#var:lang}}}}{{#if:{{{p9_name|}}}{{{p9_type|}}}|{{LSLC|Parameters/{{{p9_name|}}}{{#var:lang}}}}{{#if:{{{p10_name|}}}{{{p10_type|}}}|{{LSLC|Parameters/{{{p10_name|}}}{{#var:lang}}}}{{#if:{{{p11_name|}}}{{{p11_type|}}}|{{LSLC|Parameters/{{{p11_name|}}}{{#var:lang}}}}{{#if:{{{p12_name|}}}{{{p12_type|}}}|{{LSLC|Parameters/{{{p12_name|}}}{{#var:lang}}}}}}}}}}}}}}}}}}}}}}}}}}}} {{#if:{{#pos:{{#var:moded}}|f}}|[[Category:LSL Keywords/Pre-release{{#var:lang}}]]|[[Category:LSL Keywords/All{{#var:lang}}]]{{#ifexpr:{{#var:BugCounter|0}} > 0|[[Category:LSL topics with bugs{{#var:lang}}]] [[Category:LSL topics with the most bugs{{#var:lang}}| {{padleft:{{#expr:100-{{#var:BugCounter|0}}}}|2|0}}{{PAGENAME}}]]}}}} {{#iferror:{{#expr:{{#var:func_id}}}}|[[Category:LSL Functions/Without IDs{{#var:lang}}]]|[[Category:LSL Functions/ID{{#var:lang}}| {{padleft:{{#var:func_id}}|5|0}}]]}} {{#if:{{#var:examples}}||[[Category:LSL Needs Example{{#var:lang}}]]}} {{LSL Unhelpful|{{{func}}}|}}}} {{#if:{{{cat1|}}}|[[Category:LSL {{{cat1}}}{{#var:lang}}]]}} {{#if:{{{cat2|}}}|[[Category:LSL {{{cat2}}}{{#var:lang}}]]}} {{#if:{{{cat3|}}}|[[Category:LSL {{{cat3}}}{{#var:lang}}]]}} {{#if:{{{cat4|}}}|[[Category:LSL {{{cat4}}}{{#var:lang}}]]}} {{#if:{{{cat5|}}}|[[Category:LSL {{{cat5}}}{{#var:lang}}]]}} {{#if:{{{cat6|}}}|[[Category:LSL {{{cat6}}}{{#var:lang}}]]}} {{#if:{{{cat7|}}}|[[Category:LSL {{{cat7}}}{{#var:lang}}]]}} {{#if:{{{cat8|}}}|[[Category:LSL {{{cat8}}}{{#var:lang}}]]}} }}</includeonly>

Latest revision as of 13:28, 6 September 2023