Guten Tag,
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.
Mit diesem einfachen Code würden wir die Variable schon zu einer Table machen.
Es gibt mehrere Möglichkeiten der enstandenen Table Werte zuzuweisen.
Eine Methode:
Code:
local table = {
1,
2,
3,
4,
}
Die Werte haben jetzt in der Table einen eigenen Index.
Das sieht wie folgt aus:
Mit diesem Code würden wir den Index 1 der Table ansprechen bzw. den Inhalt des Index.
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
Achtung: Es muss eine Variable für den Startwert deklariert werden.
Beispiel:
Code:
for i = 0, 5, 1 do
chat("Hallo")
end
Aufbau der while-Schleife:
Code:
while <Bedingung> do
<Block>
end
Beispiel:
Code:
while i < 5 do
chat("Hallo")
i = i+1
end
Der Server bleibt solange in der Schleife, bis die Bedingung nicht mehr erfüllt wird.
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