Difference between revisions of "Template:Function"

From the Oblivion ConstructionSet Wiki
Jump to navigation Jump to search
imported>DragoonWraith
(I'm too tired to do this right now; reverting.)
imported>DragoonWraith
Line 107: Line 107:
<!-- syntax starts here: -->
<!-- syntax starts here: -->
'''Syntax:'''
'''Syntax:'''
<!-- return value:
<!--
--> {{ #ifeq: {{{returnType|void}}} | void | (void)&nbsp; |({{ #if: {{{returnVal|}}} | {{{returnVal}}}<nowiki>:</nowiki> |}}<!--


return type (short, float, base object, ref, something else?):
Main:
-->{{ #ifeq: {{{returnType|missing}}} | missing | '''missing return type!''' | {{{returnType}}})&nbsp; }} }}<!--
-->{{FunctionSyntax | name = {{{name|{{PAGENAME}}}}} | returnType = {{{returnType|void}}} | returnVal = {{{returnVal|}}} | referenceType = {{{referenceType|}}} | referenceOpt = {{{referenceOpt|}}} | arguments = {{{arguments|}}} }}<!--


optional reference type (actor, activator, door, etc.):
Alias:
-->{{ #if: {{{referenceType|}}} | {{ #if: {{{referenceOpt|}}} | ''{{{referenceType}}}.'' | {{{referenceType}}}. }} |<!-- no Reference Type -->}}<!--
-->{{ #if: {{{alias|}}} | <br/>{{FunctionSyntax | name = {{{alias}}} | returnType = {{{returnType|void}}} | returnVal = {{{returnVal|}}} | referenceType = {{{referenceType|}}} | referenceOpt = {{{referenceOpt|}}} | arguments = {{{arguments|}}} }} | <!--no alias--> }}<!--


the actual function:
Alternate:
-->{{{name|{{PAGENAME}}}}}<!--
-->{{ #if: {{{alt|}}} | <br/><br/>{{FunctionSyntax | name = {{{alt}}} | returnType = {{{returnType|void}}} | returnVal = {{{returnVal|}}} | referenceType = {{{referenceType|}}} | referenceOpt = {{{referenceOpt|}}} | arguments = {{{altArgs|}}} }}<!--


arguments
Alternate Alias:
-->{{ #if: {{{arguments|}}} | {{{arguments}}} |<!-- no Arguments -->}}<!--
-->{{ #if: {{{altAlias|}}} | <br/>{{FunctionSyntax | name = {{{altAlias}}} | returnType = {{{returnType|void}}} | returnVal = {{{returnVal|}}} | referenceType = {{{referenceType|}}} | referenceOpt = {{{referenceOpt|}}} | arguments = {{{alt2Args|}}} }} | <!--no alt alias--> }} | <!--no alt--> }}<!--


FOR ALIAS: return value:
Second Alternate:
-->{{ #if: {{{alias|}}} |<br/>{{ #ifeq: {{{returnType|void}}} | void | (void)&nbsp; |({{ #if: {{{returnVal|}}} | {{{returnVal}}}<nowiki>:</nowiki> |}}<!--
-->{{ #if: {{{alt2|}}} | <br/><br/>{{FunctionSyntax | name = {{{alt2}}} | returnType = {{{returnType|void}}} | returnVal = {{{returnVal|}}} | referenceType = {{{referenceType|}}} | referenceOpt = {{{referenceOpt|}}} | arguments = {{{alt2Args|}}} }}<!--


return type (short, float, base object, ref, something else?):
Second Alternate Alias:
-->{{ #ifeq: {{{returnType|missing}}} | missing | '''missing return type!''' | {{{returnType}}})&nbsp; }} }}<!--
-->{{ #if: {{{alt2Alias|}}} | <br/>{{FunctionSyntax | name = {{{altAlias}}} | returnType = {{{returnType|void}}} | returnVal = {{{returnVal|}}} | referenceType = {{{referenceType|}}} | referenceOpt = {{{referenceOpt|}}} | arguments = {{{alt2Args|}}} }} | <!--no alt alias--> }} | <!--no alt--> }}<!--
 
optional reference type (actor, activator, door, etc.):
-->{{ #if: {{{referenceType|}}} | {{ #if: {{{referenceOpt|}}} | ''{{{referenceType}}}.'' | {{{referenceType}}}. }} |<!-- no Reference Type -->}}<!--
 
alias:
-->{{{alias}}}<!--
 
arguments
-->{{ #if: {{{arguments|}}} | {{{arguments}}} |<!-- no Arguments -->}}|<!-- no Alias -->}}<!--
 
FOR ALTERNATE:
-->{{ #if: {{{altName|}}} |&nbsp;
 
{{ #ifeq: {{{returnType|void}}} | void | (void)&nbsp; |({{ #if: {{{returnVal|}}} | {{{returnVal}}}<nowiki>:</nowiki> |}}<!--
 
return type (short, float, base object, ref, something else?):
-->{{ #ifeq: {{{returnType|missing}}} | missing | '''missing return type!''' | {{{returnType}}})&nbsp; }} }}<!--
 
optional reference type (actor, activator, door, etc.):
-->{{ #if: {{{referenceType|}}} | {{ #if: {{{referenceOpt|}}} | ''{{{referenceType}}}.'' | {{{referenceType}}}. }} |<!-- no Reference Type -->}}<!--
 
the actual function:
-->{{{altName}}}<!--
 
arguments
-->{{ #if: {{{altArgs|}}} | {{{altArgs}}} |<!-- no Arguments -->}}<!--
 
FOR ALTERNATE ALIAS: return value:
-->{{ #if: {{{altAlias|}}} |<br/>{{ #ifeq: {{{returnType|void}}} | void | (void)&nbsp; |({{ #if: {{{returnVal|}}} | {{{returnVal}}}<nowiki>:</nowiki> |}}<!--
 
return type (short, float, base object, ref, something else?):
-->{{ #ifeq: {{{returnType|missing}}} | missing | '''missing return type!''' | {{{returnType}}})&nbsp; }} }}<!--
 
optional reference type (actor, activator, door, etc.):
-->{{ #if: {{{referenceType|}}} | {{ #if: {{{referenceOpt|}}} | ''{{{referenceType}}}.'' | {{{referenceType}}}. }} |<!-- no Reference Type -->}}<!--
 
alias:
-->{{{altAlias}}}<!--
 
arguments
-->{{ #if: {{{altArgs|}}} | {{{altArgs}}} |<!-- no Arguments -->}}|<!-- no Alias -->}}|<!-- no Alternate -->}}<!--
 
FOR 2nd ALTERNATE:
-->{{ #if: {{{alt2Name|}}} |&nbsp;
 
{{ #ifeq: {{{returnType|void}}} | void | (void)&nbsp; |({{ #if: {{{returnVal|}}} | {{{returnVal}}}<nowiki>:</nowiki> |}}<!--
 
return type (short, float, base object, ref, something else?):
-->{{ #ifeq: {{{returnType|missing}}} | missing | '''missing return type!''' | {{{returnType}}})&nbsp; }} }}<!--
 
optional reference type (actor, activator, door, etc.):
-->{{ #if: {{{referenceType|}}} | {{ #if: {{{referenceOpt|}}} | ''{{{referenceType}}}.'' | {{{referenceType}}}. }} |<!-- no Reference Type -->}}<!--
 
the actual function:
-->{{{alt2Name}}}<!--
 
arguments
-->{{ #if: {{{alt2Args|}}} | {{{alt2Args}}} |<!-- no Arguments -->}}<!--
 
FOR 2nd ALTERNATE ALIAS: return value:
-->{{ #if: {{{alt2Alias|}}} |<br/>{{ #ifeq: {{{returnType|void}}} | void | (void)&nbsp; |({{ #if: {{{returnVal|}}} | {{{returnVal}}}<nowiki>:</nowiki> |}}<!--
 
return type (short, float, base object, ref, something else?):
-->{{ #ifeq: {{{returnType|missing}}} | missing | '''missing return type!''' | {{{returnType}}})&nbsp; }} }}<!--
 
optional reference type (actor, activator, door, etc.):
-->{{ #if: {{{referenceType|}}} | {{ #if: {{{referenceOpt|}}} | ''{{{referenceType}}}.'' | {{{referenceType}}}. }} |<!-- no Reference Type -->}}<!--
 
alias:
-->{{{alt2Alias}}}<!--
 
arguments
-->{{ #if: {{{alt2Args|}}} | {{{alt2Args}}} |<!-- no Arguments -->}}|<!-- no Alias -->}}|<!-- no 2nd Alternate -->}}<!--


short summary of the function: -->
short summary of the function: -->

Revision as of 13:05, 13 August 2010



This is a WIP, feedback is appreciated. To retain readability a lot of HTML comments are used, they shouldn't impact the working of the template, but could add to the confusion a bit.

{{Function
 origin            = whether the function came from the CS itself or was added by OBSE.
                     valid values: CS1 (TES CS 1.0), CS1.1 (TES CS 1.1), CS1.2 (TES CS 1.2), OBSE
 summary           = description of the function
 name              = the name of the function. The page name is the default value.
 alias             = An abbreviated version of the function name that can be
                     used instead of the long name.
 altName           = the name of an alternate version of a function (e.g. the "C" Magic Effect functions)
 altAlias          = the alias of the alternate function.
 alt2Name          = the name of a second alternate version of a function
 alt2Alias         = the alias of any second alternate version of a function
 returnVal         = what the function returns.
 returnType        = the type of the returned value.
 referenceType     = if appropriate, the type of reference that the function may be called
                     on with the dot syntax
 referenceOpt      = if can take a reference, whether it must take a reference.
 arguments         = List of arguments specified using the {{FunctionArgument}} template,
                     or any other wiki syntax.
 altArgs           = List of arguments for the alternate version of the function.
 alt2Args          = List of arguments for the alternate version of the function.
 example           = optionally, the function used as part of a script to serve as an example
 CategoryList      = the list of categories to which the page belongs
}}

Example

{{Function
 |origin = OBSE
 |summary = Sets the constant effect barter factor of the magic effect.
 |name = SetMagicEffectBarterFactor
 |alias = SetMEBarterFactor
 |altName = SetMagicEffectBarterFactorC
 |altAlias = SetMEBarterFactorC
 |returnVal = nothing
 |returnType = void
 |arguments = 
  {{FunctionArgument
   |Name = newBarterFactor
   |Type = float
  }}{{FunctionArgument
   |Name = effect
   |Type = chars
  }}
 |altArgs = 
  {{FunctionArgument
   |Name = newBarterFactor
   |Type = float
  }}{{FunctionArgument
   |Name = effectCode
   |Type = long
  }}
 |example = SetMagicEffectBarterFactor 5 FIDG
 SetMEBarterFactorC 1.5 1397247044 ; code for SHLD
}}

Result

A function added by the Oblivion Script Extender.

Syntax:

(nothing) SetMagicEffectBarterFactor  
(nothing) SetMEBarterFactor  

Sets the constant effect barter factor of the magic effect.

Example

SetMagicEffectBarterFactor 5 FIDG
SetMEBarterFactorC 1.5 1397247044 ; code for SHLD