Lua Code in externe Datei auslagern

Aus Das Wherigo-Handbuch
Wechseln zu: Navigation, Suche

Wer lua code in externe Dateien auslagern möchte (um sie mit einem speziellen Editor zu editieren) muss lediglich diese Dateien mit zwei Schritten einbinden.

Schritt 1: Im Hauptfenster "Inline Lua 'require'" auswählen und den Pfad setzen wo die externen Datei abgesetzt werden. (Relativ zum Urwigo-Projektpfad)

Externe Lua Dateien aktivieren

Im Beispiel werden alle Dateien im Unterordner lua, die auf .lua enden erfasst.

Schritt 2: In "Lua user directives" die Datei einbinden

Lua Datei einbinden

Name hinter require muss identisch mit Dateiname ohne .lua Endung sein.

In hello.lua kann nun Code und Funktionen definiert werden, der wie "normaler" lokaler lua Code aufgerufen werden kann

ACHTUNG, wenn in der LUA-Datei Variablen stehen, die persistiert werden sollen beim Speichern/Wiederladen (mittels einer Urwigo-Variable-->ZVariables), dann muss das require-Statement nicht in User-Directives, sondern in User-Functions stehen - der Unterschied besteht darin, dass bei User-Directives der LUA-Code vor dem Urwigo-Code eingefügt wird und bei User-Functions nach dem Urwigo-Code. Im angegebenen Beispiel verwendet man z.b. eine Urwigo-String-Veriable mit der Kennung einer LUA-Table - diese soll dann mit der LUA-Table überschrieben werden und nicht anders rum - ansonsten gibts Abstürze

Meine Werkzeuge
Namensräume
Varianten
Aktionen
Navigation
Werkzeuge