Global LUA Functions
Jump to navigation
Jump to search
All functions below are global & static:
Prints to system console (not to UI! For that see MainScreen.addGameText)
type
setfenv
getfenv
rawset
rawget
setmetatable
getmetatable
Table Iterators
ipairs
MoonSharp docs describe as:
// ipairs (t)
// -------------------------------------------------------------------------------------------------------------------
// If t has a metamethod __ipairs, calls it with t as argument and returns the first three results from the call.
// Otherwise, returns three values: an iterator function, the table t, and 0, so that the construction
// for i,v in ipairs(t) do body end
// will iterate over the pairs (1,t[1]), (2,t[2]), ..., up to the first integer key absent from the table.
pairs
MoonSharp docs describe as:
// pairs (t)
// -------------------------------------------------------------------------------------------------------------------
// If t has a metamethod __pairs, calls it with t as argument and returns the first three results from the call.
// Otherwise, returns three values: the next function, the table t, and nil, so that the construction
// for k,v in pairs(t) do body end
// will iterate over all key–value pairs of table t.
// See function next for the caveats of modifying the table during its traversal.
next
MoonSharp docs describe as:
// next (table [, index])
// -------------------------------------------------------------------------------------------------------------------
// Allows a program to traverse all fields of a table. Its first argument is a table and its second argument is an
// index in this table. next returns the next index of the table and its associated value.
// When called with nil as its second argument, next returns an initial index and its associated value.
// When called with the last index, or with nil in an empty table, next returns nil. If the second argument is absent,
// then it is interpreted as nil. In particular, you can use next(t) to check whether a table is empty.
// The order in which the indices are enumerated is not specified, even for numeric indices.
// (To traverse a table in numeric order, use a numerical for.)
// The behavior of next is undefined if, during the traversal, you assign any value to a non-existent field in the table.
// You may however modify existing fields. In particular, you may clear existing fields.