The pages in this section present a reference for the Lua API exposed by TAMods core.
Lua is dynamically typed, so there are no static checks for the type correctness of scripts. Generally, scripts with type errors will produce a console error message at runtime. Additionally, Lua does not check that functions receive the right number of arguments: extra arguments are ignored, and missing arguments are replaced with
Function signatures in the reference denote the intended types of the function via the following (non-Lua) syntax:
someFunction(arg1: Arg1Type, arg2: Arg2Type): ReturnType
Note that where functions do not return a value, the
ReturnType is omitted.
For clarity, the types
float are used to distinguish numerical arguments where appropriate, even though Lua's type system only supports a single
Lua does not support 'arrays' or 'tuples' in the traditional sense: most data structures in Lua are Tables. In the reference,
List<T> is used to refer to a "list" of items of type
T, where the "list" is actually a Table with sequentially numbered one-indexed keys (as Lua indexing normally starts at one).
Tuples in Lua are essentially the same; in the reference they will be denoted like
(T1, T2) where
T1 is the type of the first element,
T2 the second and so on. This corresponds again to a Lua Table with sequentially numbered one-indexed keys.