B9
Aus Romwiki
Herzstück der B9-Suite.
Der Name "b9" kommt von "benign", was soviel heißt wie "gutartig".
Contents |
Download
http://rom.elrac.de/addons/b9.zip
Features
Slash-Befehle
- /reloadui
- Die GUI neu laden; macht einfach
ReloadUI()
- /eval <beliebiger Ausdruck>
- Wertet den Ausdruck in lua aus; also ähnlich wie /script, aber mit Ausgabe der Rückgabewerte von Funktionen im Chat-Fenster.
Besonderheiten:- falls der Aufruf einen Fehler verursacht, bekommt man im Chat-Fenster in rot die lua-Fehlermeldung angezeigt! Auch Syntaxfehler werden so erkannt und diagnostiziert.
- es können multiple Ergebniswerte angezeigt werden, wenn eine aufgerufene Funktion mehrere zurückgibt
- Diese Funktion ist beim Testen Gold wert.
- /syntax <modul>/<filename>
- Liest ein lua-File ein und gibt eine Syntax-Fehlermeldung aus, wenn im File ein Fehler ist.
- Bei <modul> kommt nur der Teil des Pfades unter "Interface/Addons"; <filename> wird ohne ".lua" angegeben, also z.B. für "Interface/Addons/b9/b9.lua" gibt man nur ein "/syntax b9/b9"
- Falls Verzeichnis-Name gleich Modul-Name, reicht es den Namen nur einmal anzugeben. Für "b9/b9" also einfach "
/syntax b9".
- /b9help
- Informiert über die Slash-Befehle und Funktionen in b9.
Funktionen
- b9.p(text), b9.pr(text), b9.perr(text)
- geben <text> im Chat-Fenster aus, mit unterschiedlicher Färbung. perr() ist für Fehlermeldungen in rot.
- b9.dbg(text)
- gibt <text> in grün aus, aber nur wenn im b9-Verzeichnis ein File "debug" vorhanden ist.
- b9.addSlashCommands(function, "/command")
- meldet eine Funktion als Slash-Befehl an, auch mit mehreren Aliasen.
- b9.unitBuffs(unit)
- ein Iterator (ähnlich z.B.
pairs()), der die Buffs der benannten Unit zurückgibt. Wird in b9mount verwendet. - b9.printArgs(eventName)
- Gibt alle arg1..arg9 aus (zum Testen/Debuggen von Events).
Neu in Version 1.1:
- b9.inlist(item, list)
- gibt
truezurück, wennitemals Wert in Tablelistvorkommt.
Sonderfall: Funktioniert auch mititem == listbei beliebigem Datentyp vonlist.
- b9.StartModule
- Markiert den (logischen) Anfang eines Addon-Moduls.
- Aufruf:
local mod = b9.StartModule(name)- Gibt per
b9.dbg()aus: "<name> loading..." - Baut eine Tabelle mit
{ name=<name> }auf, - merkt sich diese in
b9.modules, und - gibt diese auch zurück.
- Gibt per
- Gedacht für die Verwendung am Anfang eines Addons-Moduls. Das Addon-Modul kann die zurückgegebene Tabelle (also
mod) dann zur Speicherung von Funktionen und anderen Daten nutzen. Auch nützlich mit den folgenden b9-Funktionen:
- b9.ModuleLoaded
- Markiert das (logische) Ende eines Addon-Moduls.
- Aufruf:
b9.ModuleLoaded(mod) - wobei
modeine Tabelle mit mindestens einem string-Wert namens "name" sein sollte.- Gibt per
b9.pr()aus: "<name> loaded."
- Gibt per
- b9.RegisterForEvent
- Verknüpft eine Funktion für ein Event aus dem Frame von b9.
- Aufruf:
b9.RegisterForEvent(event, mod, func)- event
- (string) name des Events
- mod
- (table) s.o.
- func
- (function) die aufzurufende Funktion, vorzugsweise in mod.
- b9.RegisterForUpdate
- Verknüpft eine Funktion für den Screen Refresh Update aus dem Frame von b9.
- Aufruf:
b9.RegisterForUpdate(mod, func)- mod
- (table) s.o.
- func
- (function) die aufzurufende Funktion, vorzugsweise in mod.
Letztlich kann man beliebige Variablen in b9.b9Vars speichern, diese werden dann per SaveVariables gespeichert und können beim nächsten Programmstart auch wieder ausgelesen werden.
