Lua Logo
Blöcke



Zur weiteren Betrachtung brauchen wir etwas mehr Wissen um die Blöcke.
Wie oben schon erwähnt bewegt sich in LUA alles in Blöcken. Dies muss man sich in etwa vorstellen wie eine russische Matrjoschka

Matrjoschka
Alle haben wir sie schon mal gesehen.

Eins steckt im anderen.
Aber da ist schon der Unterschied bei LUA kann nicht nur eins im anderen stecken sondern viele. Und in den vielen können jeweils auch wieder viele stecken.



Die größte Puppe ist meines Erachtens das Project/Script. In Ihr liegen einzelne Anweisungen und weitere Blöcke.

Keine Angst vor dem Bild, das jetzt kommt. Die Blöcke beschäftigen uns noch so oft, dass wir das schon verstehen werden.

BlockBild
Blöcke haben eine Hülle z. B. function() oben und end unten. Dazwischen spielt sich etwas ab. Was muss man zuerst nicht wissen. Wir werden alle Hüllen kennen lernen.

In etwa geht das so vonstatten.



Der große Block ist das Script.

Der Übersetzer liest nun der Reihe nach alles ein.
Anweisungen und Blöcke werden sofort ausgeführt.
Müsste er etwas wissen, das später erst geschrieben steht, dann gibt es ERROR. Er kennt es ja noch nicht.
Funktionen werden nicht ausgeführt, diese werden zunächst gespeichert und erst dann ausgeführt wenn sie aufgerufen werden.

In jedem Block der rechts steht können ja wieder Blöcke sein.
Das hört sich komplizierter an als es ist. Man sollte sich aber merken:
Alle Blöcke fangen mit einem Schlüsselwort an und enden

(mit Ausnahme von einem) mit dem Wort end.

Da wir nun schon mal die Funktionen als Block erwähnt haben zählen wir die anderen auf und gehen sie der Reihe nach durch.



Verzweigungen



1. if Bedingung then
Block
end

2. if Bedingung then
Block1
else
Block2
end

3. if Bedingung1 then
Block1
elseif Bedingung2 then
Block2
elseif Bedingung3 then
Block3
else
Block4
end



Funktionen



1. function Name()
Block
end

2. Name = function()
Block
end



Schleifen



1. for variable = anfang, ende, sprungWeite do
Block
end

2. for variable, name in table do
Block
end

3. while Bedingung do
Block
end

4. repeat
Block
until Bedingung




Da haben wir auch schon den Block der nicht mit end endet: repeat. Das können wir noch gut gebrauchen.


Die Vervielfältigung der auf diesen Seiten enthaltenen Informationen und Grafiken ist untersagt, ausgenommen davon ist sämtlicher auf diesen Seiten angezeigter Quellcode.
Siehe auch: Haftungsausschluss
Copyright © Robert Schmitz 2006