Difference between revisions of "Basic lua: Functions"
From The Official Visionaire Studio: Adventure Game Engine Wiki
(4 intermediate revisions by the same user not shown) | |||
Line 3: | Line 3: | ||
| class="i_arrow clickablecell" | [[basic_lua:_Tables|<]] | | class="i_arrow clickablecell" | [[basic_lua:_Tables|<]] | ||
| class="i_norm clickablecell" | '''[[basic_lua:_Index|Index]]''' | | class="i_norm clickablecell" | '''[[basic_lua:_Index|Index]]''' | ||
− | | class="i_arrow clickablecell" | [[basic_lua: | + | | class="i_arrow clickablecell" | [[basic_lua:_Iteration_and_Loops|>]] |
|} | |} | ||
− | + | <hr> | |
− | + | Functions can be really useful as they let us process/calculate huge amounts of data & return it, also if you include input arguments then they can potentially be reused multiple times over, which can reduce overall workload & increase workflow. | |
== Creating Functions == | == Creating Functions == | ||
Line 14: | Line 14: | ||
{| class="ts" | {| class="ts" | ||
|- | |- | ||
− | ! | + | ! print hello world! !! |
|- | |- | ||
| style="max-width:680px;" | <syntaxhighlight lang="lua"> | | style="max-width:680px;" | <syntaxhighlight lang="lua"> | ||
Line 28: | Line 28: | ||
{| class="ts" | {| class="ts" | ||
|- | |- | ||
− | ! | + | ! print hello world! !! |
|- | |- | ||
| style="max-width:680px;" | <syntaxhighlight lang="lua"> | | style="max-width:680px;" | <syntaxhighlight lang="lua"> | ||
Line 42: | Line 42: | ||
{| class="ts" | {| class="ts" | ||
|- | |- | ||
− | ! | + | ! print 6 !! |
|- | |- | ||
| style="max-width:680px;" | <syntaxhighlight lang="lua"> | | style="max-width:680px;" | <syntaxhighlight lang="lua"> | ||
Line 53: | Line 53: | ||
|} | |} | ||
− | == | + | === Input Arguments and Fallback === |
+ | {| class="ts" | ||
+ | |- | ||
+ | ! print 0.5, 5 !! | ||
+ | |- | ||
+ | | style="max-width:680px;" | <syntaxhighlight lang="lua"> | ||
+ | function divideAndConquer(a, b, c) | ||
+ | c = c or 1 -- if c equals nil then c equals 1 | ||
+ | return (a / b) * c | ||
+ | end | ||
+ | print( divideAndConquer(2, 4) ) -- 2 ÷ 4 x 1 = 0.5 | ||
+ | print( divideAndConquer(2, 4, 10) ) -- 2 ÷ 4 x 10 = 5 | ||
+ | </syntaxhighlight> || width="180px" style="vertical-align:middle;" | [[File:Basic_lua_(functions)_4.png|frameless|center|180px]] | ||
+ | |} | ||
+ | <hr> | ||
{| class="in" | {| class="in" | ||
|- | |- | ||
| class="i_arrow clickablecell" | [[basic_lua:_Tables|<]] | | class="i_arrow clickablecell" | [[basic_lua:_Tables|<]] | ||
| class="i_norm clickablecell" | '''[[basic_lua:_Index|Index]]''' | | class="i_norm clickablecell" | '''[[basic_lua:_Index|Index]]''' | ||
− | | class="i_arrow clickablecell" | [[basic_lua: | + | | class="i_arrow clickablecell" | [[basic_lua:_Iteration_and_Loops|>]] |
|}{{toc}} | |}{{toc}} |
Latest revision as of 15:45, 10 September 2022
< | Index | > |
Functions can be really useful as they let us process/calculate huge amounts of data & return it, also if you include input arguments then they can potentially be reused multiple times over, which can reduce overall workload & increase workflow.
Creating Functions
Below I am going to show you how to create your own custom functions.
Classic Function
print hello world! | |
---|---|
function hello()
print("hello world!")
end
hello()
|
Variable as Function
print hello world! | |
---|---|
hello = function()
print("hello world!")
end
hello()
|
Function with Input Arguments
print 6 | |
---|---|
function plus(a, b)
return a + b
end
print( plus(2, 4) )
|
Input Arguments and Fallback
print 0.5, 5 | |
---|---|
function divideAndConquer(a, b, c)
c = c or 1 -- if c equals nil then c equals 1
return (a / b) * c
end
print( divideAndConquer(2, 4) ) -- 2 ÷ 4 x 1 = 0.5
print( divideAndConquer(2, 4, 10) ) -- 2 ÷ 4 x 10 = 5
|
< | Index | > |