Alle alten Links sind Down. Hier ein Alternativer mit den wichtigsten Funktionen:
Thread: (gespoilert, da outdated)
#20.09.2012: Einführung des QEGs (Questliberweiterungsgenerator)
Ich biete euch nun die Möglichkeit, euch eure Questlib Erweiterung selbst zusammenzustellen. Ihr könnt per Drag'n'Drop die Funktionen auswählen.
Schaut doch mal vorbei!
Unwichtige Funktionen habe ich nicht in die Datenbank eingetragen. Ich werde die Sammlung erweitern :)
In der generierten Datei wird auch ein Link für eure Auswahl gegeben, nützlich für Automatische Updates via Lua.
Information für Lua-Coder
Da der Generator auch ein Autor-Feld besitzt und einfügt, könnt ihr mich auch per PN anschreiben, falls ihr eine Funktion von euch anbieten wollt, und ich trage euch als Autor ein.
Updates
Inhalt des Threads:
HowTo Einfügen
Ihr ladet euch die Datei questing.lua in euren Quest-Ordner.
Dann öffnet ihr die dortige "questlib.lua" und fügt oben folgende Zeile an:
Viel Spaß :)
Ich biete euch nun die Möglichkeit, euch eure Questlib Erweiterung selbst zusammenzustellen. Ihr könnt per Drag'n'Drop die Funktionen auswählen.
Schaut doch mal vorbei!
Unwichtige Funktionen habe ich nicht in die Datenbank eingetragen. Ich werde die Sammlung erweitern :)
In der generierten Datei wird auch ein Link für eure Auswahl gegeben, nützlich für Automatische Updates via Lua.
Information für Lua-Coder
Da der Generator auch ein Autor-Feld besitzt und einfügt, könnt ihr mich auch per PN anschreiben, falls ihr eine Funktion von euch anbieten wollt, und ich trage euch als Autor ein.
Updates
22.09.2012
- Kleiner Bug mit den Zeitfunktionen behoben ("zt = zt or {}" eingefügt)
- Kleiner Bug mit den Apache- & TS Funktionen behoben ("proc = proc or {}" eingefügt)
21.09.2012
- Möglichkeit für Autoupdater
- Button: Alle hinzufügen
- Button: Alle entfernen
- Kleiner Bug mit den Zeitfunktionen behoben ("zt = zt or {}" eingefügt)
- Kleiner Bug mit den Apache- & TS Funktionen behoben ("proc = proc or {}" eingefügt)
21.09.2012
- Möglichkeit für Autoupdater
- Button: Alle hinzufügen
- Button: Alle entfernen
Inhalt des Threads:
Die Datei, die ich euch hier zur Verfügung stelle, ermöglicht es euch, einfach und (meist) unkompliziert eure Quests zu erweitern oder zu verkürzen.
In ihr stehen einige Funktionen, viele Nützlich, manche werdet ihr nie brauchen :D
Funktionen
Eine Liste der derzeitigen Funktionen:
Parameter in [] müssen nicht zwangsweise angegeben werden.
Questoperationen:
Dateioperationen:
Stringoperationen:
Nummernoperationen:
Tabellenoperationen:
Allgemeine Variablenoperationen:
Zeitumrechnungen:
Sonstige Funktionen:
Ich werde noch Videotutorials einfügen.
Download
************************ Siehe oben
In ihr stehen einige Funktionen, viele Nützlich, manche werdet ihr nie brauchen :D
Funktionen
Eine Liste der derzeitigen Funktionen:
Parameter in [] müssen nicht zwangsweise angegeben werden.
Name | Parameter | Funktion | Tutorial |
---|---|---|---|
mysql_escape | (str) | Äquivalent zur PHP-Funktion mysql_escape_real_string() | |
mysql_query | (query[,user,pw,db,ip]) | Führt einen MySQL-Query aus und gibt die Werte Zurück. | |
mysql:connect | (ip,user,passwd,db) | Erstellt auf einer Variable eine MySQL-Konfiguration. In dieser Variable werden nun alle Abfragen gespeichert. | |
> VAR:query | (query) | Führt in der Variable (die mit mysql:connect erstellt wurde) einen MySQL-Query aus. Info siehe Tutorial | |
> VAR:setcfg | (ip,user,pass,db) | Hier kann man die Einstellungen nochmals ändern. |
Questoperationen:
Name | Parameter | Funktion | Tutorial |
---|---|---|---|
select2 | (...) | Eine nützliche Funktion. Sie arbeitet wie select(), doch verteilt die Einträge auf Seiten, wenn zB mehr als 9 Werte eingetragen werden. Es gibt einige verschiedene Aufrufmöglichkeiten | |
arraytoselect | (array,abbr) | Wie select_table, nur dass abbr (String) als letzter Wert genutzt wird. | |
delay_s | (n) | Lässt das Script n Sekunden warten | |
note | (text) | Wie notice_all | |
account.set_pw | (pw[,acc]) | Ändert das Passwort. Wird acc nicht angegeben, so wird das Passwort des aktuellen Users geändert. acc kann ein Username oder die Account-ID sein. | |
wartungsmodus | (numbool) | Setzt Wartungsmodus (Sperrt alle Accounts außer GM-Accounts). (1 = an, 0 = aus) | |
local_pc_warp | (name, x, y,mid) | Warpt den Spieler name. mid = Mapindex | |
local_pc_setqf | (name, qf,wert) | Setzt für name eine Questflag (nur für die aktuelle Quest) | |
do_for_other | (name,string) | Führt string für den User mit dem Namen name aus. | |
pc.check_inventory_place | (size) | Size ist eine Zahl von 1 bis 3. Prüft, ob der User Platz für ein Item dieser Größe hat. |
Dateioperationen:
Name | Parameter | Funktion | Tutorial |
---|---|---|---|
writelog | (text[,var[,file]]) | Schreibt den Text in die syserr. (var = 1 > syserr, var = 2 > syslog, var=3 > "file") | |
backup_files | Data und Locale Ordner werden gesichert | ||
backup_main | Die wichtigsten Datenbanken werden gesichert | ||
backup | Alle Datenbanken werden gesichert | ||
ini:new | () | Erstellt auf einer Variable einen Ini-Parser. | |
VAR:open | (path) | Gibt die Ini-Datei an, die geparst werden soll (benötigt vorher VAR = ini.new()) | |
> VAR:read_str | (sub,nm,norm) | Gibt einen String aus. Sektion sub, Key nm. norm wird zurückgegeben, wenn sub[nm] == nil | |
> VAR:read_int | (sub,nm,norm) | Gibt eine Zahl aus. Sektion sub, Key nm. norm wird zurückgegeben, wenn sub[nm] == nil | |
> VAR:read_bool | (sub,nm,norm) | Gibt einen Boolean (true/false) aus. Sektion sub, Key nm. norm wird zurückgegeben, wenn sub[nm] == nil | |
> VAR:write_str | (sub,nm,wert) | Schreibt einen String mit "wert" in Sektion sub, Key nm. | |
> VAR:write_int | (sub,nm,wert) | Schreibt eine Zahl mit "wert" in Sektion sub, Key nm. | |
> VAR:write_bool | (sub,nm,wert) | Schreibt einen Boolean mit "wert" in Sektion sub, Key nm. | |
> VAR:delete_key | (sub,nm) | Löscht den Key nm aus der Sektion sub. | |
> VAR:delete_section | (sub) | Löscht die Section sub mit allen beinhalteten Keys | |
> VAR:clear | () | Leert die gesamte Variable |
Stringoperationen:
Name | Parameter | Funktion | Tutorial |
---|---|---|---|
split | (str, delim[, maxNum]) | Teilt einen String str nach delim auf. | |
dostr | (string) | Führt den String als Lua-Befehl aus | |
machweg | (str,weg) | Entfernt weg aus str. Folgender Befehl bewirkt das gleiche: string.gsub(str,weg,'') | |
string.reverse | (str) | Kehrt den String um. (zB abc -> cba) | |
num_format | (num) | Gibt einen formatierten Zahlstring zurück. (zB 1234567 = 1.234.567) | |
rm_nlc | (s) | alles außer Buchstaben entfernen | |
rm_ndc | (s) | alles außer Zahlen entfernen | |
rm_lc(s) | alle Buchstaben entfernen | ||
rm_dc | (s) | alle Zahlen aus s entfernen | |
rm_ucc | (s) | alle großgeschriebenen Buchstaben entfernen | |
rm_lcc | (s) | alle kleingeschriebenen Buchstaben entfernen | |
rm_nanc | (s) | alle nicht-alphanumerischen Zeichen entfernen | |
dot | (str) | Führt die Funktionen zwischen $FUNC$ in str aus und gibt die Rückgabe aus. Für Normalsterbliche Questwriter uninteressant. |
Nummernoperationen:
Name | Parameter | Funktion | Tutorial |
---|---|---|---|
numlen | (Zahl) | Gibt die Anzahl der Ziffern in einer Zahl zurück. | |
distance | (x1,y1,x2,y2) | Berechnet die Distanz zwischen 2 Punkten (zB Kooridinaten) |
Tabellenoperationen:
Name | Parameter | Funktion | Tutorial |
---|---|---|---|
join | (delimiter, tabelle) | Fügt eine Tabelle zu einem String zusammen | |
getn | (tabelle) | Rewrite von table.getn | |
watch_table | (tabelle) | Alle Änderungen an der Tabelle tab werden ab sofort in der Datei tables geloggt. (Bis Restart des Cores) |
Allgemeine Variablenoperationen:
Name | Parameter | Funktion | Tutorial |
---|---|---|---|
in_text | (str,te) | Ist str im string te? | |
in_table | (e,t) | Ist e in der Tabelle t? | |
is_string | (var) | Ist Var ein String? | |
is_number | (var) | Ist Var eine Zahl? | |
is_table | (var) | Ist Var eine Tabelle? |
Zeitumrechnungen:
ms = Millisekunde
hs = Hunderstelsekunde
s = Sekunde
m = Minute
h = Stunde
d = Tag
mo = Monat
j = Jahr
s_m = Sekunde ZU Minute.
hs = Hunderstelsekunde
s = Sekunde
m = Minute
h = Stunde
d = Tag
mo = Monat
j = Jahr
s_m = Sekunde ZU Minute.
Name | Parameter |
---|---|
zt.d_j | (d) |
zt.d_mo | (d) |
zt.d_h | (d) |
zt.d_m | (d) |
zt.d_s | (d) |
zt.d_hs | (d) |
zt.d_ms | (d) |
zt.h_j | (h) |
zt.h_mo | (h) |
zt.h_d | (h) |
zt.h_m | (h) |
zt.h_s | (h) |
zt.h_hs | (h) |
zt.h_ms | (h) |
zt.m_j | (m) |
zt.m_mo | (m) |
zt.m_d | (m) |
zt.m_h | (m) |
zt.m_s | (m) |
zt.m_hs | (m) |
zt.m_ms | (m) |
zt.s_j | (s) |
zt.s_mo | (s) |
zt.s_d | (s) |
zt.s_h | (s) |
zt.s_m | (s) |
zt.s_hs | (s) |
zt.s_ms | (s) |
Sonstige Funktionen:
Name | Parameter | Funktion |
---|---|---|
proc.apache_start | () | Startet Apache |
proc.apache_restart | () | Startet Apache neu |
proc.apache_graceful | () | Startet Apache neu,ohne besetehende Verbindungen zu Kappen |
proc.apache_stop | () | Stoppt Apache |
download | (url) | Lädt die Datei url in den data-Ordner. |
Ich werde noch Videotutorials einfügen.
Download
************************ Siehe oben
HowTo Einfügen
Ihr ladet euch die Datei questing.lua in euren Quest-Ordner.
Dann öffnet ihr die dortige "questlib.lua" und fügt oben folgende Zeile an:
Code:
dofile("locale/germany/quest/questing.lua")
Viel Spaß :)
Mijago