Difference between revisions of "Lua Language"

From Cheat Engine
Jump to navigation Jump to search
m (Comments are --)
Line 26: Line 26:
  
 
==Variables==
 
==Variables==
 +
 +
In Lua variables are polymorphic (can change the type during theirs lifes). By default a variable is global unless the declaration begins with <code><nowiki>local</nowiki></code> modifier.
 +
 +
Any variable can host:
 +
* nothing (not defined, equal to '''nil''')
 +
* a numerical value (no difference between integer or float values, nor between different precisions)
 +
* a boolean value (true/false)
 +
* a string
 +
* a table
 +
* a function
 +
 +
<pre>
 +
MyVar1 = nil          -- global variable MyVar1 having nothing inside (no type neither)
 +
MyVar2 = UnknownVar    -- another global variable equal to nil (because UnknowVar is not yet defined)
 +
local MyVar3 = 2      -- local variable MyVar3 equal to 2
 +
MyVar4 = 'Hello'      -- global string variable MyVar4
 +
local MyVar5 = "Hello" -- local string variable MyVar5 having the same string as MyVar3
 +
MyVar6 = [[First Line
 +
Second Line.]]        -- global multi-line string variable MyVar6 beginning with 'First' and ending with 'Line.'
 +
MyVar7 = (10 > 7.55)  -- global boolean variable MyVar7 equal to true
 +
</pre>
 +
  
 
==Flow control==
 
==Flow control==

Revision as of 09:01, 25 April 2022

Introduction

Lua is a lightweight, scripting programming language based on an interpreter generating compiled bytecodes.

It was designed in Brasil by Roberto Ierusalimschy, Waldemar Celes and Luiz Henrique de Figueiredo in 1993.

CE Lua is a specific version of Lua interpreter adapted by Dark Byte for Cheat Engine.

Syntax

CE Lua interpreter respects traditional LUA syntax and provides some extra features. The Lua Script Editor provide a real-time colored syntax and a Syntax Check feature (Ctrl+Alt+C).

Comments

In Lua simple comments begin with -- and end at the end of line. Multi-line comments begin with --[[ and end with ]] .

-- This is a simple comment just to the end of this line
This is not a comment but a future syntax error -- This is a new simple comment
--[[ First line of a multi-line comment
Second line of a multi-line comment
Last line of a multi-line comment]]

Variables

In Lua variables are polymorphic (can change the type during theirs lifes). By default a variable is global unless the declaration begins with local modifier.

Any variable can host:

  • nothing (not defined, equal to nil)
  • a numerical value (no difference between integer or float values, nor between different precisions)
  • a boolean value (true/false)
  • a string
  • a table
  • a function
MyVar1 = nil           -- global variable MyVar1 having nothing inside (no type neither)
MyVar2 = UnknownVar    -- another global variable equal to nil (because UnknowVar is not yet defined)
local MyVar3 = 2       -- local variable MyVar3 equal to 2
MyVar4 = 'Hello'       -- global string variable MyVar4
local MyVar5 = "Hello" -- local string variable MyVar5 having the same string as MyVar3
MyVar6 = [[First Line
Second Line.]]         -- global multi-line string variable MyVar6 beginning with 'First' and ending with 'Line.'
MyVar7 = (10 > 7.55)   -- global boolean variable MyVar7 equal to true


Flow control

Functions

Tables

External links