Difference between revisions of "Manual:Lua API"

From Mudlet
Jump to navigation Jump to search
m (moved Manual:Lua API to Mudlet:Lua API: Moving temporarily until the manual namespace is created.)
m (moved Mudlet:Lua API to Manual:Lua API: Moving to namespace Manual which no exists.)
(No difference)

Revision as of 01:08, 16 January 2012

Lua API


Mudlet defines several global Lua variables that are accessible from anywhere.

Built-in Lua Variables
Variable Name Description
comand This variable holds the current user command. This is typically used in alias scripts.
line This variable holds the content of the current line as being processed by the trigger engine. The engine runs all triggers on each line as it arrives from the MUD.
matches[n] This Lua table is being used by Mudlet in the context of triggers that use Perl regular expressions.

matches[1] holds the entire match, matches[2] holds the first capture group, matches[n] holds the nth-1 capture group. If the trigger uses the Perl style /g switch to evaluate all possible matches of the given regex within the current line, matches[n+1] will hold the second entire match, matches[n+2] the first capture group of the second match and matches[n+m] the m-th capture group of the second match.

multimatches[n][m] This table is being used by Mudlet in the context of multiline triggers that use Perl regular expression. It holds the table matches[n] as described above for each Perl regular expression based condition of the multiline trigger. multimatches[5][4] may hold the 3rd capture group of the 5th regex in the multiline trigger. This way you can examine and process all relevant data within a single script. Have a look at this example.


Useful Lua resources on the Web