Questions about this topic? Sign up to ask in the talk tab.

Difference between revisions of "LUA"

From NetSec
Jump to: navigation, search
(Tables)
Line 58: Line 58:
 
A Table, is an array of Keys, and those Keys have values.
 
A Table, is an array of Keys, and those Keys have values.
  
{{Protip|Unlike what you would expect, the index for a table starts at 1, instead of 0.}}
+
 
 
Declaring a Table:
 
Declaring a Table:
 
{{code|text=
 
{{code|text=
 
<source lang="lua">
 
<source lang="lua">
 
MyTable = {} --declares an empty table.
 
MyTable = {} --declares an empty table.
 +
</source>
 +
}}
 +
 +
 +
{{code|text=
 +
<source lang="lua">
 +
Numbers = {"one","Two","Three","Four","Five"}
 +
</source>
 +
}}
 +
The above declaration is exact to the one below
 +
{{code|text=
 +
<source lang="lua">
 +
Numbers = {}
 +
Numbers[1] = "one"
 +
Numbers[1] = "Two"
 +
Numbers[1] = "Three"
 +
Numbers[1] = "Four"
 +
Numbers[1] = "Five"
 +
</source>
 +
}}
 +
 +
{{Protip|Unlike what you would expect, the index for a table starts at 1, instead of 0.}}
 +
{{code|text=
 +
<source lang="lua">
 +
Numbers = {"one","Two","Three","Four","Five"}
 +
print(Numbers[0]) -- prints nil, as index starts at 1.
 +
print(Numbers[1]) -- prints "one"
 
</source>
 
</source>
 
}}
 
}}

Revision as of 20:48, 4 May 2012

Lua is a portable interpreted language. It is mainly used in Games, however it is also used by NMAP's Scripting Engine

Comments

 
-- This is a single line comment
 
 
--[[
  This
  is
  a
  multi-line
  comment
  ]]
 


Variables

In Lua, variables are very simple, you don't even have to declare a datatype, all you need to do is assign a value.

 
Var = 1
Var2 = "Im a var!"
Var3 = 2
Var4 = Var * Var3
 
 

Global Variables vs Local Variables

When you declare a variable in Lua, it is globally accessible unless otherwise specified with local.

 
GlobalVar = 0
local LocalVar = 1337
 

Functions

Functions in lua are quite easy as well.

 
function SimpleAddition(x,y,z)
   local Sum = x + y + z --only accessible from within this context.
   SumTimesTwo = Sum * 2 -- can be referenced from anywhere in the current file, or wherever file is loaded.
   return Sum
end
 


Tables

Lua tables are a bit like arrays, except that an array is.. well an array of values. A Table, is an array of Keys, and those Keys have values.


Declaring a Table:

 
MyTable = {} --declares an empty table.
 


 
Numbers = {"one","Two","Three","Four","Five"} 
 
The above declaration is exact to the one below
 
Numbers = {} 
Numbers[1] = "one"
Numbers[1] = "Two"
Numbers[1] = "Three"
Numbers[1] = "Four"
Numbers[1] = "Five"
 


Protip: Unlike what you would expect, the index for a table starts at 1, instead of 0.
 
Numbers = {"one","Two","Three","Four","Five"} 
print(Numbers[0]) -- prints nil, as index starts at 1.
print(Numbers[1]) -- prints "one"
 
LUA is part of a series on programming.
<center>
</center>