Template:LSL Function: Difference between revisions

From Second Life Wiki
Jump to navigation Jump to search
Strife Onizuka (talk | contribs)
mNo edit summary
Gwyneth Llewelyn (talk | contribs)
Adding "standard" WIkipedia-like documentation, WiP since the 'old' template format is quite incompatible.
 
(133 intermediate revisions by 10 users not shown)
Line 1: Line 1:
{{LSL Header}} __NOTOC__ <noinclude>
{{Multi-lang|category=LSL|2=}}{{LSL Header{{#var:lang}}}} __NOTOC__ <noinclude>
See [[{{FULLPAGENAME}}/docs]] for additional documentation.
Looking for a better-formatted version? This template uses an earlier-style documentation format. You can try [[{{#var:langbase}}/docs{{#var:lang}}]] for documentation instead.
<pre>
 
{{LSL_Function
{{Documentation}}
|func
</noinclude>
|func_id
<includeonly>{{DISPLAYTITLE:{{#if:{{NAMESPACE}}|{{NAMESPACE}}:}}{{lcfirst:{{PAGENAME}}}}}}<!--
|func_sleep
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_energy
 
|func_desc
{{#vardefine:article_type|function}}
|func_footnote
 
|return_type
{{#vardefine:name|{{{func|}}}}}
|return_text
{{#if:{{{func_id|}}}|{{#vardefine:func_id|{{{func_id|}}}}}|{{#if:{{#var:func_id}}||{{#vardefine:func_id|?}}}}}}
|p1_type|p1_name|p1_desc|p1_hover
 
|p2_type|p2_name|p2_desc|p2_hover
{{#vardefine:mode|{{#var:mode}}{{{mode|}}}}}
|p3_type|p3_name|p3_desc|p3_hover
{{#vardefine:self|{{#var:self}}{{{self|}}}}}
|p4_type|p4_name|p4_desc|p4_hover
 
|p5_type|p5_name|p5_desc|p5_hover
{{{inject-1|}}}
|p6_type|p6_name|p6_desc|p6_hover
|p7_type|p7_name|p7_desc|p7_hover
|p8_type|p8_name|p8_desc|p8_hover
|p9_type|p9_name|p9_desc|p9_hover
|p10_type|p10_name|p10_desc|p10_hover
|p11_type|p11_name|p11_desc|p11_hover
|p12_type|p12_name|p12_desc|p12_hover
|constants
|spec
|caveats
|examples
|helpers
|also_header
|also_functions
|also_tests
|also_events
|also_articles
|also_footer
|notes
|mode
|deprecated
|location
|cat1
|cat2
|cat3
|cat4
|cat5
|cat6
}}
</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.
{{{{#switch:{{#var:mode}}
|god=LSL_Generic/god{{#var:lang}}
|request=LSL_Generic/request{{#var:lang}}
|pre-release=LSL_Generic/pre-release{{#var:lang}}
|rc=LSL_Generic/RC{{#var:lang}}
|preview=LSL_Generic/preview{{#var:lang}}
|user=!{{#vardefine:moded|u{{#var:moded}}}}
|!}}|text={{{mode_text|}}}}}
{{{{#if:{{{deprecated|}}}|LSL_Generic/deprecated{{#var:lang}}|!}}|{{{deprecated|}}}|}}


{| {{Prettytable}}
{{{inject-2|}}}
|-{{Hl2}}
!parameter
!desc
!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
|-
|p1_hover
|first parameter hover, if not included it defaults to p1_desc
|-
|p2_type
|second parameter type
|-
|p2_name
|second parameter name
|-
|p2_desc
|second parameter desc
|-
|p2_hover
|second parameter hover, if not included it defaults to p2_desc
|-
|...
|
|
|-
|p12_type
|twelfth parameter type
|
|-
|p12_name
|twelfth parameter name
|-
|p12_desc
|twelfth parameter desc
|-
|p12_hover
|twelfth parameter hover, if not included it defaults to p12_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.
|-
|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.
|-
|history
|a box for function history
|}


<div id="box">
{{#vardefine:p_{{{p1_name|}}}_hover|{{#var:p_{{{p1_name|}}}_hover}}{{{p1_hover|}}}}}
{{{{FULLPAGENAME}}
{{#vardefine:p_{{{p2_name|}}}_hover|{{#var:p_{{{p2_name|}}}_hover}}{{{p2_hover|}}}}}
|func=MyFunction
{{#vardefine:p_{{{p3_name|}}}_hover|{{#var:p_{{{p3_name|}}}_hover}}{{{p3_hover|}}}}}
|func_id=-1
{{#vardefine:p_{{{p4_name|}}}_hover|{{#var:p_{{{p4_name|}}}_hover}}{{{p4_hover|}}}}}
|func_sleep=100.5
{{#vardefine:p_{{{p5_name|}}}_hover|{{#var:p_{{{p5_name|}}}_hover}}{{{p5_hover|}}}}}
|func_energy=0.0
{{#vardefine:p_{{{p6_name|}}}_hover|{{#var:p_{{{p6_name|}}}_hover}}{{{p6_hover|}}}}}
|func_desc=A fictitious function
{{#vardefine:p_{{{p7_name|}}}_hover|{{#var:p_{{{p7_name|}}}_hover}}{{{p7_hover|}}}}}
|func_footnote=func_footnote
{{#vardefine:p_{{{p8_name|}}}_hover|{{#var:p_{{{p8_name|}}}_hover}}{{{p8_hover|}}}}}
|return_type=void
{{#vardefine:p_{{{p9_name|}}}_hover|{{#var:p_{{{p9_name|}}}_hover}}{{{p9_hover|}}}}}
|return_text=(aka nadda, nothing).
{{#vardefine:p_{{{p10_name|}}}_hover|{{#var:p_{{{p10_name|}}}_hover}}{{{p10_hover|}}}}}
|p1_type=integer|p1_name=i|p1_desc
{{#vardefine:p_{{{p11_name|}}}_hover|{{#var:p_{{{p11_name|}}}_hover}}{{{p11_hover|}}}}}
|p2_type=float|p2_name=f|p2_desc
{{#vardefine:p_{{{p12_name|}}}_hover|{{#var:p_{{{p12_name|}}}_hover}}{{{p12_hover|}}}}}
|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
|location=location
|history=history
}}
</div>
</noinclude><includeonly>{{#if:{{#vardefine:sort|{{#if:{{#var:sort}}|{{#var:sort}}|{{{sort|}}}}}}}{{{{#if:{{#var:sort}}|!|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:
{{#vardefine:history|{{{history|}}}}}
{{#vardefine:func_id|{{{func_id|}}}}}
{{#vardefine:p_{{{p1_name|}}}_desc|{{#var:p_{{{p1_name|}}}_desc}}{{{p1_desc|}}}}}
{{#vardefine:p_{{{p1_name|}}}_desc|{{#var:p_{{{p1_name|}}}_desc}}{{{p1_desc|}}}}}
{{#vardefine:p_{{{p1_name|}}}_hover|{{#var:p_{{{p1_name|}}}_hover}}{{{p1_hover|}}}}}
{{#vardefine:p_{{{p2_name|}}}_desc|{{#var:p_{{{p2_name|}}}_desc}}{{{p2_desc|}}}}}
{{#vardefine:p_{{{p2_name|}}}_desc|{{#var:p_{{{p2_name|}}}_desc}}{{{p2_desc|}}}}}
{{#vardefine:p_{{{p2_name|}}}_hover|{{#var:p_{{{p2_name|}}}_hover}}{{{p2_hover|}}}}}
{{#vardefine:p_{{{p3_name|}}}_desc|{{#var:p_{{{p3_name|}}}_desc}}{{{p3_desc|}}}}}
{{#vardefine:p_{{{p3_name|}}}_desc|{{#var:p_{{{p3_name|}}}_desc}}{{{p3_desc|}}}}}
{{#vardefine:p_{{{p3_name|}}}_hover|{{#var:p_{{{p3_name|}}}_hover}}{{{p3_hover|}}}}}
{{#vardefine:p_{{{p4_name|}}}_desc|{{#var:p_{{{p4_name|}}}_desc}}{{{p4_desc|}}}}}
{{#vardefine:p_{{{p4_name|}}}_desc|{{#var:p_{{{p4_name|}}}_desc}}{{{p4_desc|}}}}}
{{#vardefine:p_{{{p4_name|}}}_hover|{{#var:p_{{{p4_name|}}}_hover}}{{{p4_hover|}}}}}
{{#vardefine:p_{{{p5_name|}}}_desc|{{#var:p_{{{p5_name|}}}_desc}}{{{p5_desc|}}}}}
{{#vardefine:p_{{{p5_name|}}}_desc|{{#var:p_{{{p5_name|}}}_desc}}{{{p5_desc|}}}}}
{{#vardefine:p_{{{p5_name|}}}_hover|{{#var:p_{{{p5_name|}}}_hover}}{{{p5_hover|}}}}}
{{#vardefine:p_{{{p6_name|}}}_desc|{{#var:p_{{{p6_name|}}}_desc}}{{{p6_desc|}}}}}
{{#vardefine:p_{{{p6_name|}}}_desc|{{#var:p_{{{p6_name|}}}_desc}}{{{p6_desc|}}}}}
{{#vardefine:p_{{{p6_name|}}}_hover|{{#var:p_{{{p6_name|}}}_hover}}{{{p6_hover|}}}}}
{{#vardefine:p_{{{p7_name|}}}_desc|{{#var:p_{{{p7_name|}}}_desc}}{{{p7_desc|}}}}}
{{#vardefine:p_{{{p7_name|}}}_desc|{{#var:p_{{{p7_name|}}}_desc}}{{{p7_desc|}}}}}
{{#vardefine:p_{{{p7_name|}}}_hover|{{#var:p_{{{p7_name|}}}_hover}}{{{p7_hover|}}}}}
{{#vardefine:p_{{{p8_name|}}}_desc|{{#var:p_{{{p8_name|}}}_desc}}{{{p8_desc|}}}}}
{{#vardefine:p_{{{p8_name|}}}_desc|{{#var:p_{{{p8_name|}}}_desc}}{{{p8_desc|}}}}}
{{#vardefine:p_{{{p8_name|}}}_hover|{{#var:p_{{{p8_name|}}}_hover}}{{{p8_hover|}}}}}
{{#vardefine:p_{{{p9_name|}}}_desc|{{#var:p_{{{p9_name|}}}_desc}}{{{p9_desc|}}}}}
{{#vardefine:p_{{{p9_name|}}}_desc|{{#var:p_{{{p9_name|}}}_desc}}{{{p9_desc|}}}}}
{{#vardefine:p_{{{p9_name|}}}_hover|{{#var:p_{{{p9_name|}}}_hover}}{{{p9_hover|}}}}}
{{#vardefine:p_{{{p10_name|}}}_desc|{{#var:p_{{{p10_name|}}}_desc}}{{{p10_desc|}}}}}
{{#vardefine:p_{{{p10_name|}}}_desc|{{#var:p_{{{p10_name|}}}_desc}}{{{p10_desc|}}}}}
{{#vardefine:p_{{{p10_name|}}}_hover|{{#var:p_{{{p10_name|}}}_hover}}{{{p10_hover|}}}}}
{{#vardefine:p_{{{p11_name|}}}_desc|{{#var:p_{{{p11_name|}}}_desc}}{{{p11_desc|}}}}}
{{#vardefine:p_{{{p11_name|}}}_desc|{{#var:p_{{{p11_name|}}}_desc}}{{{p11_desc|}}}}}
{{#vardefine:p_{{{p11_name|}}}_hover|{{#var:p_{{{p11_name|}}}_hover}}{{{p11_hover|}}}}}
{{#vardefine:p_{{{p12_name|}}}_desc|{{#var:p_{{{p12_name|}}}_desc}}{{{p12_desc|}}}}}
{{#vardefine:p_{{{p12_name|}}}_desc|{{#var:p_{{{p12_name|}}}_desc}}{{{p12_desc|}}}}}
{{#vardefine:p_{{{p12_name|}}}_hover|{{#var:p_{{{p12_name|}}}_hover}}{{{p12_hover|}}}}}
 
{{#vardefine:return_text|{{#var:return_text}}{{{return_text|}}} }}
{{{inject-3|}}}
{{#vardefine:spec|{{#if:{{#var:spec}}|{{#var:spec}}<br/>}}{{{spec|}}}}}
 
{{#vardefine:examples|{{#var:examples}}{{{examples|}}}}}
{{#if:{{#var:header_desc}}{{{func_desc|}}}|
{{#vardefine:helpers|{{#var:helpers}}{{{helpers|}}}}}
{{#vardefine:header_desc|{{#var:header_desc}}{{PBR}}
{{#vardefine:also_header|{{#var:also_header}}{{{also_header|}}}}}
{{{func_desc|}}}{{PBR}}}}
{{#vardefine:also_tests|{{#var:also_tests}}
}}
{{{also_tests|}}}}}
 
{{#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}}
{{#vardefine:also_events|{{#var:also_events}}
{{{also_events|}}}}}
{{{also_events|}}}}}
{{#vardefine:also_functions|{{#var:also_functions}}
{{#vardefine:also_functions|{{#var:also_functions}}
{{{also_functions|}}}}}
{{{also_functions|}}}}}
{{#vardefine:also_articles|{{#var:also_articles}}
{{#vardefine:also_articles|{{#var:also_articles}}
{{{also_articles|}}}}}
{{{also_articles|}}}}}
{{#vardefine:also_footer|{{#var:also_footer}}{{{also_footer|}}}}}
 
{{#vardefine:notes|{{#var:notes}}{{{notes|}}}}}
{{#vardefine:also_library|{{#var:also_library}}
{{#vardefine:mode|{{#var:mode}}{{{mode|}}}}}
{{{also_library|}}}}}
{{#vardefine:self|{{#var:self}}{{{self|}}}}}
 
{{#vardefine:type|function}}
{{#if:{{#var:also_footer}}{{{also_footer|}}}|
{{#vardefine:caveats|{{#ifexpr:{{{func_sleep|0.0}}}> 0.0|*This function causes the script to sleep for {{{func_sleep|}}} seconds.}}{{#if:{{#var:caveats}}|
{{#vardefine:also_footer|{{#var:also_footer}}{{PBR}}
{{#var:caveats}}}}
{{{also_footer|}}}{{PBR}}}}
{{{caveats|}}}}}
}}
{{#vardefine:location|{{#var:location}}{{{location|}}}}}
 
{{#vardefine:header_footnote|{{#if:{{#var:header_footnote}}|{{#var:header_footnote}}<br/>}}{{{func_footnote|}}}{{{func_footer|}}}}}
{{#if:{{#var:notes}}{{{notes|}}}|
{{#vardefine:header_desc|{{#if:{{#var:header_desc}}|{{#var:header_desc}}<br/>}}{{#var:header_desc}}{{{func_desc|}}}}}
{{#vardefine:notes|{{#var:notes}}{{PBR}}
{{{{#ifeq:{{#var:mode}}|god|LSL_Generic/god|!}}|}}
{{{notes|}}}{{PBR}}}}
{{{{#ifeq:{{#var:mode}}|request|LSL_Generic/request|!}}|}}
}}
{{{{#if:{{{deprecated|}}}|LSL_Generic/deprecated|!}}|{{{deprecated|}}}|}}
 
{{#if:{{#var:history}}{{{history|}}}|
{{#vardefine:history|{{#var:history}}{{PBR}}
{{{history|}}}{{PBR}}}}
}}
 
{{#if:{{#var:deepnotes}}{{{deepnotes|}}}|
{{#vardefine:deepnotes|{{#var:deepnotes}}{{PBR}}
{{{deepnotes|}}}{{PBR}}}}
}}
 
{{#if:{{#var:mono}}{{{mono|}}}|
{{#vardefine:mono|{{#var:mono}}{{PBR}}
{{{mono|}}}{{PBR}}}}
}}
 
{{#if:{{#var:lso}}{{{lso|}}}|
{{#vardefine:lso|{{#var:lso}}{{PBR}}
{{{lso|}}}{{PBR}}}}
}}
 
{{#vardefine:also_tests|{{#var:also_tests}}
{{{also_tests|}}}}}
 
{{#if:{{#var:location}}{{{location|}}}|
{{#vardefine:location|{{#var:location}}{{PBR}}
{{{location|}}}{{PBR}}}}
}}
 
{{#if:{{#var:messaging}}{{{messaging|}}}|
{{#vardefine:messaging|{{#var:messaging}}{{PBR}}
{{{messaging|}}}{{PBR}}}}
}}
 
}}{{#if:{{#var:self}}|| __NOEDITSECTION__
}}{{#if:{{#var:self}}|| __NOEDITSECTION__
}}{{#var:header}}{{#if:{{#var:func_id}}{{#var:mode}}||
}}{{#var:header}}{{#if:{{#var:func_id}}{{#var:mode}}{{#var:moded}}||
<div id="box" style="background:red;">
{{#if:{{#var:self}}|| [[Category:LSL FixMe]] }} }}{{#if:{{#if:{{{return_type|}}}|{{#var:return_text}}}}{{{func_desc|}}}||<div id="box" style="background:yellow;">
&nbsp;&nbsp;'''Don't delete the 'func_id''''
&nbsp;&nbsp;'''Either 'func_desc' or 'return_type' & 'return_text' must be defined'''
<div style="padding: 0.5em;background:#ffffff;">
<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:{{#var:self}}|| [[Category:LSL FixMe]] }} }}{{#if:{{{also|}}}|<div id="box" style="background:yellow;">
''(Please use 'return_text' & 'return_type' or 'func_desc' to summarize the functions actions.)''</div></div>{{#if:{{#var:self}}|| [[Category:LSL FixMe]] }} }}
&nbsp;&nbsp;''' 'also' Tag Removed'''
{{RightToc|font-size:80%}}
<div style="padding: 0.5em;background:#ffffff;">
<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>
''(Please use 'also_header','also_events','also_functions','also_articles', or 'also_footer')''</div></div>{{#if:{{#var:self}}|| [[Category:LSL FixMe]] }} }}{{#if:{{#if:{{{return_type|}}}|{{#var:return_text}}}}{{{func_desc|}}}||<div id="box" style="background:yellow;">
<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%;">
&nbsp;&nbsp;''' 'return_text' and 'func_desc' can both not be undefined'''
{{{!}} class="collapsible"
<div style="padding: 0.5em;background:#ffffff;">
{{!}}- style="font-size:75%;"
''(Please use 'return_text' or 'func_desc' to describe the functions actions.)''</div></div>{{#if:{{#var:self}}|| [[Category:LSL FixMe]] }} }}
{{!}}+
{{{!}} width="100%"
{{!}}-
{{!}} {{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]]
{{!}}-
{{!}}-
{{!}} valign="top" {{!}} <div id="box">
{{#if:{{{func_complexity|}}}|
<h2>Function: {{#if:{{{return_type|}}}|[[{{{return_type|}}}]]||}} [[{{{func}}}]]( {{#if:{{{p1_name|}}}{{{p1_type|}}}| [[{{{p1_type|}}}]] {{LSL Param|{{{p1_name|}}}}}{{#if:{{{p2_name|}}}{{{p2_type|}}}|, [[{{{p2_type|}}}]] {{LSL Param|{{{p2_name|}}}}}{{#if:{{{p3_name|}}}{{{p3_type|}}}|, [[{{{p3_type|}}}]] {{LSL Param|{{{p3_name|}}}}}{{#if:{{{p4_name|}}}{{{p4_type|}}}|, [[{{{p4_type|}}}]] {{LSL Param|{{{p4_name|}}}}}{{#if:{{{p5_name|}}}{{{p5_type|}}}|, [[{{{p5_type|}}}]] {{LSL Param|{{{p5_name|}}}}}{{#if:{{{p6_name|}}}{{{p6_type|}}}|, [[{{{p6_type|}}}]] {{LSL Param|{{{p6_name|}}}}}{{#if:{{{p7_name|}}}{{{p7_type|}}}|, [[{{{p7_type|}}}]] {{LSL Param|{{{p7_name|}}}}}{{#if:{{{p8_name|}}}{{{p8_type|}}}|, [[{{{p8_type|}}}]] {{LSL Param|{{{p8_name|}}}}}{{#if:{{{p9_name|}}}{{{p9_type|}}}|, [[{{{p9_type|}}}]] {{LSL Param|{{{p9_name|}}}}}{{#if:{{{p10_name|}}}{{{p10_type|}}}|, [[{{{p10_type|}}}]] {{LSL Param|{{{p10_name|}}}}}{{#if:{{{p11_name|}}}{{{p11_type|}}}|, [[{{{p11_type|}}}]] {{LSL Param|{{{p11_name|}}}}}{{#if:{{{p12_name|}}}{{{p12_type|}}}|, [[{{{p12_type|}}}]] {{LSL Param|{{{p12_name|}}}}}}}}}}}}}}}}}}}}}}}}}}}}} )<nowiki>;</nowiki></h2>
{{!}} {{HoverText|{{{func_complexity|}}}|The complexity of the function based on the parameters.}}
<div style="padding: 0.5em"><div id="box" style="float:right;"><table class="collapsible"><tr style="font-size:75%;"><th colspan="2"></tr><tr>
{{!}} [[LSL Complexity{{#var:lang}}|Compl.]]
<td> {{HoverText|{{#var:func_id}}|The function index number.}}
{{!}}-}}
<td> [[LSL Function ID|Function ID]]
{{!}} {{HoverText|{{{func_energy|}}}|The quantity of energy consumed by this function.}}
</tr><tr>
{{!}} [[Energy{{#var:lang}}|Energy]]
<td> {{HoverText|{{{func_sleep|}}}|The number of seconds this script will sleep after executing this function.}}
{{!}}}</div>}}
<td> [[LSL Delay|Delay]]
{{#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}}}}
</tr>{{#if:{{{func_complexity|}}}|<tr>
<td> {{HoverText|{{{func_complexity|}}}|The complexity of the function based on the parameters.}}
<td> [[LSL Complexity|Compl.]]
</tr>}}<tr>
<td> {{HoverText|{{{func_energy|}}}|The quantity of energy consumed by this function.}}
<td> [[Energy|Energy]]
</tr></table></div>
{{#if:{{#var:header_desc}}|{{#var:header_desc}}<br/>{{#if:{{{return_type|}}}|<br/>}}}}{{#if:{{{return_type|}}}| Returns {{AAn|{{{return_type|}}}}} {{#if:{{#var:return_text}}| {{#var:return_text}} }}<br/>}}
{{#if:{{{p1_name|}}}{{{p1_type|}}}|{{{!}}
{{#if:{{{p1_name|}}}{{{p1_type|}}}|{{{!}}
{{LSL DefineRow|1={{{p1_type|}}}|2={{{p1_name|}}}|3={{#var:p_{{{p1_name|}}}_desc}}}}
{{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={{{p2_name|}}}|3={{#var:p_{{{p2_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={{{p3_name|}}}|3={{#var:p_{{{p3_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={{{p4_name|}}}|3={{#var:p_{{{p4_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={{{p5_name|}}}|3={{#var:p_{{{p5_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={{{p6_name|}}}|3={{#var:p_{{{p6_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={{{p7_name|}}}|3={{#var:p_{{{p7_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={{{p8_name|}}}|3={{#var:p_{{{p8_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={{{p9_name|}}}|3={{#var:p_{{{p9_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={{{p10_name|}}}|3={{#var:p_{{{p10_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={{{p11_name|}}}|3={{#var:p_{{{p11_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={{{p12_name|}}}|3={{#var:p_{{{p12_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}}|<br/>
}}{{#if:{{#var:header_footnote}}|
{{#var:header_footnote}}}}
<div style="margin-top:0.5em;"></div>
<div style="clear:right;" ></div>
{{#var:header_footnote}}
</div></div>
}}{{#if:{{#var:other_languages}}|
{{#if:{{#var:spec}}|{{!}}-
<div style="margin-top:0.5em;"></div>
{{!}}<div id="box">
{{#var:other_languages}}
<h2>{{#if:{{#var:T_Specification}}|{{#var:T_Specification}}|Specification}}</h2>
}}</div>
<div style="padding: 0.5em">
</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}}
{{#var:spec}}
</div></div>}}
</div></div>}}{{#if:{{#var:constants_nb}}{{#var:constants}}|
{{!}}-
{{#var:constants_nb}}
{{#if:{{#var:constants_nb}}{{#var:constants}}{{{constants|}}}|
{{#if:{{#var:constants}}|  
{{!}}{{#var:constants_nb}}
<div id="box">
{{{constants|}}}{{#if:{{#var:constants}}|  
<h2>Constants</h2>
<div id="box"><h2>{{#if:{{#var:T_Constants}}|{{#var:T_Constants}}|Constants}}</h2>
{{#var:constants}}
{{#var:constants}}
</div>}}}}
</div>}}}}{{#if:{{#var:caveats}}|<div id="box">
{{!}}-
<h2>Caveats</h2>
{{#if:{{#var:caveats}}|
<div style="padding: 0.5em;">
{{!}}<div id="box"><h2>{{#if:{{#var:T_Caveats}}|{{#var:T_Caveats}}|Caveats}}</h2>
<div style="padding: 0.5em">
{{#var:caveats}}
{{#var:caveats}}
</div></div>}}
</div></div>}}{{#if:{{#if:{{#var:deprecated}}||t}}{{#var:examples}}{{#simple-examples}}{{#complex-examples}}|<div id="box">
{{!}}-
<h2>Examples</h2>
{{#if:{{#if:{{#var:deprecated}}||t}}{{#var:examples}}|
<div style="padding: 0.5em;">
{{!}}<div id="box"><h2>{{#if:{{#var:T_Examples}}|{{#var:T_Examples}}|Examples}}</h2>
{{#var:examples}}{{#if:{{#var:simple-examples}}|
<div style="padding: 0.5em">
<div style="float:left; min-width:200px; width:45%;">
{{#var:examples}}
===Simple Examples===
</div></div>}}
{{{!}}
{{!}}-
{{#var:simple-examples}}
{{#if:{{#var:helpers}}|
{{!}}}
{{!}}<div id="box"><h2>{{#if:{{#var:T_Useful_Snippets}}|{{#var:T_Useful_Snippets}}|Useful Snippets}}</h2>
</div>}}{{#if:{{#var:complex-examples}}|
<div style="padding: 0.5em">
<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}}
{{#var:helpers}}
</div></div>}}
</div></div>}}{{#if:{{#var:notes}}|<div id="box">
{{!}}-
<h2>Notes</h2>
{{#if:{{#var:notes}}|
<div style="padding: 0.5em;">
{{!}}<div id="box"><h2>{{#if:{{#var:T_Notes}}|{{#var:T_Notes}}|Notes}}</h2>
<div style="padding: 0.5em">
{{#var:notes}}
{{#var:notes}}
</div></div>}}
</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>
{{#if:{{#var:also_footer}}{{#var:also_functions}}{{#var:also_events}}{{#var:also_articles}}{{#var:also_tests}}{{#var:also_header}}|
<div style="padding: 0.5em;">
{{!}}<div id="box"><h2>{{#if:{{#var:T_See_Also}}|{{#var:T_See Also}}|See Also}}</h2>
{{#if:{{#var:also_header}}|<div>
<div style="padding: 0.5em">
{{#var:also_header}}
{{#if:{{#var:also_header}}|
</div>}}{{#if:{{#var:also_constants}}|
{{#var:also_header}}}}{{#if:{{#var:also_events}}|
<h3>Constants</h3>
<h3>{{#if:{{#var:T_Also_Events}}|{{#var:T_Also_Events}}|Events}}</h3>
{{{!}}
{{#var:also_constants}}
{{!}}} }}{{#if:{{#var:also_events}}|
<h3>Events</h3>
{{{!}}
{{{!}}
{{#var:also_events}}
{{#var:also_events}}
{{!}}} }}{{#if:{{#var:also_functions}}|
{{!}}} }}{{#if:{{#var:also_functions}}|
<h3>{{#if:{{#var:T_Also_Functions}}|{{#var:T_Also_Functions}}|Functions}}</h3>
<h3>Functions</h3>
{{{!}}
{{{!}}
{{#var:also_functions}}
{{#var:also_functions}}
{{!}}} }}{{#if:{{#var:also_tests}}|
<h3>{{#if:{{#var:T_Also_Tests}}|{{#var:T_Also_Tests}}|Tests}}</h3>
{{{!}}
{{#var:also_tests}}
{{!}}} }}{{#if:{{#var:also_articles}}|
{{!}}} }}{{#if:{{#var:also_articles}}|
<h3>{{#if:{{#var:T_Also_Articles}}|{{#var:T_Also_Articles}}|Articles}}</h3>
<h3>Articles</h3>
{{{!}}
{{{!}}
{{#var:also_articles}}
{{#var:also_articles}}
{{!}}} }}
{{!}}} }}{{#if:{{#var:also_library}}|
{{#if:{{#var:also_footer}}|<br/>{{#var:also_footer}}}}
<h3>Libraries and Examples</h3>
</div></div>}}
{{{!}}
{{!}}-
{{#var:also_library}}
{{#if:{{#var:location}}|
{{!}}} }}{{#if:{{#var:also_footer}}|
{{!}}
<div style="margin-top:0.5em;">
<div id="box">
{{#var:also_footer}}
<h2>{{#if:{{#var:T_Source_Location}}|{{#var:T_Source_Location}}|Source Location}}</h2>
</div>}}
<div style="padding: 0.5em">
</div></div>}}{{#if:{{#var:deepnotes}}{{#var:mono}}{{#var:lso}}{{#var:history}}{{#var:also_tests}}{{#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>}}
{{#if:{{#var:also_tests}}|
<h3>Tests</h3>
{{{!}}
{{#var:also_tests}}
{{!}}}
}}{{#if:{{#var:location}}|
<h4> Source </h4><div>
{{#var:location}}
{{#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|!}}|}}
}}
{{Collapsible_Table|collapsed=*|table-style=width:100%;|title-style=text-align:left;|title=<h4 style="margin-top:0;">Signature</h4>|content={{!}}
{{#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|}}}}}
<nowiki></nowiki>}}{{#if:{{{signature|}}}|{{{signature|}}}
}}{{#if:{{#var:signature}}|{{#var:signature}}
}}|id="lsl-signature"}}}}
{{#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={{!}}
{{{haiku|}}}
{{{poetry|}}}
}}}}
</div></div>}}{{#if:{{{comments|}}}|<div id="box">
<h2>Comments</h2>
<div style="padding: 0.5em;">
{{{comments|}}}
</div></div>}}
</div></div>}}
{{!}}-
<div style="display:none" class="hidden-text" id="hidden-text">{{#var:hidden-text}}</div>
{{#if:{{#var:history}}|
{{#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>
{{!}}
<div id="box">
<h2>{{#if:{{#var:T_History}}|{{#var:T_History}}|History}}</h2>
<div style="padding: 0.5em">
{{#var:history}}
</div></div>}}
{{!}}}
{{#var:footer}} {{#if:{{#var:self}}|| {{#ifeq:{{#var:mode}}|request|| [[Category:LSL Functions]] {{#if:{{#var:examples}}||[[Category:LSL Needs Example]]}}}} {{#if:{{{cat1|}}}|[[Category:LSL {{{cat1}}}]]}} {{#if:{{{cat2|}}}|[[Category:LSL {{{cat2}}}]]}} {{#if:{{{cat3|}}}|[[Category:LSL {{{cat3}}}]]}} {{#if:{{{cat4|}}}|[[Category:LSL {{{cat4}}}]]}} {{#if:{{{cat5|}}}|[[Category:LSL {{{cat5}}}]]}} {{#if:{{{cat6|}}}|[[Category:LSL {{{cat6}}}]]}} {{#if:{{{cat7|}}}|[[Category:LSL {{{cat7}}}]]}} {{#if:{{{cat8|}}}|[[Category:LSL {{{cat8}}}]]}} }}</includeonly>

Latest revision as of 07:35, 20 June 2025

Looking for a better-formatted version? This template uses an earlier-style documentation format. You can try Template:LSL Function/docs for documentation instead.

[Edit] [🔄Purge] Template documentation
{{LSL_Function
|func
|func_id
|func_sleep
|func_energy
|func_desc
|func_footnote
|return_type
|return_text
|p1_type|p1_name|p1_desc|p1_hover
|p2_type|p2_name|p2_desc|p2_hover
|p3_type|p3_name|p3_desc|p3_hover
|p4_type|p4_name|p4_desc|p4_hover
|p5_type|p5_name|p5_desc|p5_hover
|p6_type|p6_name|p6_desc|p6_hover
|p7_type|p7_name|p7_desc|p7_hover
|p8_type|p8_name|p8_desc|p8_hover
|p9_type|p9_name|p9_desc|p9_hover
|p10_type|p10_name|p10_desc|p10_hover
|p11_type|p11_name|p11_desc|p11_hover
|p12_type|p12_name|p12_desc|p12_hover
|constants
|spec
|caveats
|examples
|helpers
|also_header
|also_functions
|also_tests
|also_events
|also_articles
|also_footer
|notes
|mode
|deprecated
|location
|cat1
|cat2
|cat3
|cat4
|cat5
|cat6
}}

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.

parameter desc example
func Function name
func_id Function ID 1.0
func_sleep Delay 0.0
func_energy 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
p1_hover first parameter hover, if not included it defaults to p1_desc
p2_type second parameter type
p2_name second parameter name
p2_desc second parameter desc
p2_hover second parameter hover, if not included it defaults to p2_desc
...
p12_type twelfth parameter type
p12_name twelfth parameter name
p12_desc twelfth parameter desc
p12_hover twelfth parameter hover, if not included it defaults to p12_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. If set to 'user' avoids function being added to LSL Function Index, thus enabling usage of this template for documentation of User Functions.
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.
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.
history a box for function history

Summary

Function: void MyFunction( integer i, float f, string s, key k, list l, vector v, rotation r );
100.5 Forced Delay
0.0 Energy

A fictitious function[1]
Returns a void (aka nadda, nothing).

• integer i
• float f
• string s
• key k
• list l
• vector v
• rotation r

func_footnote

Specification

spec

constants

Caveats

  • This function causes the script to sleep for 100.5 seconds.caveats

Examples

examples

Useful Snippets

helpers

Notes

notes

See Also

also_header

Events

  • also_events

Functions

  • also_functions

Articles

  • also_articles

also_footer

Deep Notes

History

history

Tests

  • also_tests

Source

location

Footnotes

  1. ^ Footnote test

Signature

function void MyFunction( integer i, float f, string s, key k, list l, vector v, rotation r );