Ich hatte in letzter Zeit mal nebenbei nichts zu tun und habe mir mal gedacht,
dass ich noch einen Guide zum Thema Questing schreibe.
In diesem Guide möchte Ich euch die Tables und die Schleifen näher bringen.
Um Sachen zu verdeutlichen werde Ich Screens hochladen, die es verständlicher machen.
Ich arbeite mit dem Edit "Lua Edit 2010".
Tables
Tables (oder auch Array) gehören, meiner Meinung nach, zu den nützlichsten Methoden um
alle möglichen Daten zu speichern.
Tables sind relativ einfach zu deklarieren.
Code:
local table = {}
Es gibt mehrere Möglichkeiten der enstandenen Table Werte zuzuweisen.
Eine Methode:
Code:
local table = {
1,
2,
3,
4,
}
Das sieht wie folgt aus:
Code:
table[1]
In diesem Fall würde, wenn man den Inhalt ausgeben würde, 1 rauskommen.
Anders als in anderen Sprachen, zB C++, beginnt der Index nicht bei 0, sondern bei 1.
Im Gegensatz zu anderen Sprachen, wie zB C++, ist eine Table nicht an einen Datentyp gebunden.
Sprich: Man kann mehrere Datentypen (String, Number, Boolean, etc) in einer Table speichern.
Um es zu verdeutlichen:
Achtung: Die Funktion print() ist die Funktion für eine Textausgabe.
say() ist eine Metin-gebundene Funktion.
Schleifen
Wie der Name schon verrät, wiederholt der Server den Block innerhalb der Schleife.
Schleifen gehören auch zu sehr nützlichen Methoden, um Dinge zu aktivieren, Texte auszugeben, etc.
Es gibt mehrere Arten von Schleifen, aber die einfachsten sind die for-/ und die while-Schleife.
Aufbau der for-Schleife:
Code:
for <Startwert einer Variable>, <Ende>, <Schritte> do <Block> end
Beispiel:
Code:
for i = 0, 5, 1 do
chat("Hallo")
end
Code:
while <Bedingung> do <Block> end
Code:
while i < 5 do
chat("Hallo")
i = i+1
end
In diesem Fall: Die Schleife wird beendet, wenn i den Wert 5 erreicht.
Achtung: Solltet ihr die Schleife so gestalten, dass er die Schleife niemals beendet,
stürzt er Server ab.
Da spreche Ich aus Erfahrung .. :/
Schleifen sind auch sehr nützlich in Kombination mit Tables.
Ein Beispiel:
In diesem Fall wird i bei jedem Durchgang um 1 erhöht.
Dadurch wird auch bei jedem Durchgang der Index der Table erhöht, dessen Inhalt ausgegeben wird.
Ich hoffe, es war alles für euch verständlich.
Falls Fragen offen bleiben, könnt Ihr sie mir gerne mitteilen.
MfG .Remix







