Difference between revisions of "Basic lua: Tables"

From The Official Visionaire Studio: Adventure Game Engine Wiki
Line 22: Line 22:
 
print("table data: " .. str) -- print the table data
 
print("table data: " .. str) -- print the table data
 
print( "table entry total: " .. #(t) ) -- print total of table entries
 
print( "table entry total: " .. #(t) ) -- print total of table entries
</syntaxhighlight> || width="200px" | [[File:lb_tables_001.png|thumb|right|180px|click to enlarge]]
+
</syntaxhighlight> || width="180px" style="vertical-align:middle;" | [[File:Basic_lua_(tables)_1.png|frameless|center|180px]]
 
|}
 
|}
  
Line 49: Line 49:
 
print("table data: " .. str) -- print the table data
 
print("table data: " .. str) -- print the table data
 
print( "table entry total: " .. #(t) ) -- print total of table entries
 
print( "table entry total: " .. #(t) ) -- print total of table entries
</syntaxhighlight> || width="200px" | [[File:lb_tables_002.png|thumb|right|180px|click to enlarge]]
+
</syntaxhighlight> || width="180px" style="vertical-align:middle;" | [[File:Basic_lua_(tables)_2.png|frameless|center|180px]]
 
|}{{toc}}
 
|}{{toc}}

Revision as of 17:59, 2 September 2022

Tables are one of the features of Lua script, that make the scripting language so dynamic & easy to use, as they allow us to easily create tables, insert, remove & sort data. Tables are often comprised of arrays that usually involve keywords - or an index number - & a value. Tables can be accessed using multiple different methods.

< Index >

Creating a table

method 1: automatically generated index values
local t = {1, 2, 3, 4, 5, "six", 7, "ate", 9} -- automatically assigns an index number to each value starting from 1
local str = "" -- empty string

for i = 1, #t do -- for 1 to table total, print value of index number
 str = str .. t[i] -- add current table index value to existing text data in the str variable
 if i < #t then str = str .. ", " end -- if i is less than table entry total then insert ", " into the str variable
end

print("table data: " .. str) -- print the table data
print( "table entry total: " .. #(t) ) -- print total of table entries
Basic lua (tables) 1.png
method 2: manually created index values
local t = {

[1] = 1,
[2] = "two",
[3] = 3,
[4] = 2 * 2,
[5] = "five",

}

local str = "" -- empty string

for i = 1, #t do -- for 1 to table total, print value of index number
 str = str .. t[i] -- add current table index value to existing text data in the str variable
 if i < #t then str = str .. ", " end -- if i is less than table entry total then insert ", " into the str variable
end

print("table data: " .. str) -- print the table data
print( "table entry total: " .. #(t) ) -- print total of table entries
Basic lua (tables) 2.png