Difference between revisions of "Basic lua: Functions"

From The Official Visionaire Studio: Adventure Game Engine Wiki
 
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:_Functions|>]]
+
| class="i_arrow clickablecell" | [[basic_lua:_Iteration_and_Loops|>]]
 
|}
 
|}
 
<hr>
 
<hr>
Line 73: Line 73:
 
| 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:_Functions|>]]
+
| class="i_arrow clickablecell" | [[basic_lua:_Iteration_and_Loops|>]]
 
|}{{toc}}
 
|}{{toc}}

Latest revision as of 16: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()
Basic lua (functions) 1.png

Variable as Function

print hello world!
hello = function()
 print("hello world!")
end

hello()
Basic lua (functions) 2.png

Function with Input Arguments

print 6
function plus(a, b)
 return a + b
end

print( plus(2, 4) )
Basic lua (functions) 3.png

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
Basic lua (functions) 4.png

< Index >