Lua/de
= Die Lua Konsole = </h2>
Du öffnest die Konsole mit dieser Taste.
BEVOR DU DIR SORGEN MACHST: DU KANNST AUCH DIE ALTEN KOMMANDOS BENUTZEN. PACK NUR EIN '!' OHNE ANFÜHRUNGSZEICHEN DAVOR
!set type dust metl
Dieses Kommando schreibt man in Lua so:
tpt.set_property("type", "metl", "dust")
(siehe hier)
Aber lerne die Lua-Sprache. Es wird nützlicher sein, als du denkst. (Hier lernst du nicht die Lua-Sprache allgemein. Hier lernst du nur ein API. Aber du kannst hier mehr darüber herausfinden.)//
Die neue Lua-Konsole bietet die Möglichkeit, die Kommandos zusammenzufassen, was in Script geschieht. Lua ist eine sehr einfache Scriptsprache.
Mit dieser Möglichkeit können User das Spiel modifizieren, ohne programmieren zu können.
<h1> = Schnelle Einführung in Scripts = </h2>
Wie man ein Script ausführt </h3>
Um ein Script auszuführen, speicher die .lua-Datei in den Speicherordner von Powder Toy(dort wo powdertoy.exe ist). Öffne die Konsole (siehe oben) und tippe ein:
dofile("filename.lua")
, wobei du filename.lua durch deinen Dateinamen ersetzt.
<h2> Variablentypen </h3>
Die verschiedenen Variablentype sind:
- 'string'
Steht für ein Wort, einen Buchstaben oder einen Satz. 'string'variablen müssen mit doppelten Anführungszeichen beginnen und enden.(")
Beispiel: local str = "Das ist eine Stringvariable."
- 'number'
Steht für eine Zahl. Es gibt Fließpunktzahlen und Fixed-Punkt-Zahlen (was bedeutet, dass sie Nachkommastellen haben [Fließpunkt] oder das sie Zahlen ohne Bruchteil sind [Fixed-Punkt].)
Beispiel: local num = 1234
- 'boolean'
Es ist eine Art Schalter, der entweder An (true) oder Aus (false) ist.
Beispiel: local bool = true
- 'function'
Steht für eine Methode oder Funktion in Lua.
Beispiel: function func(Argument)
Merke: Funktionen, die eine 'function' als Argument haben, brauchen kein () am Ende. Nur der Name muss angegeben werden.
- 'table'
Tables, also Tabellen, sind mehrere Variablen zusammen. Tables können auch ein Array sein, was in jeder Programmiersprache für eine Abfolge von Variablen steht. Sie können alle Variablen beinhalten, außerdem verschiedene Typen auf einmal.
Beispiel: local tbl = {}
Dies erzeugt eine leere Tabelle.
Beispiel: local tbl = {1, 2, 3, "string"}
Erzeugt eine Tabelle mit den Elemente 1,2,3 und "string".
Man kann diese Werte so abrufen:
tbl[1] --gibt 1 zurück
tbl[2] --gibt 2 zurück
tbl[3] --gibt 3 zurück
tbl[4] --gibt "string" zurück
Beispiel:
local tbl = {}
tbl.x = 7
tbl.y = 5
tbl.str = "dies ist ein String"
tbl.sqr = function(v) return v * v end
Erzeugt eine Tabelle mit den Variablen x, y, str und der Funktion sqr.
Du kannst diese Variablen so aufrufen:
tbl.x --gibt 7 zurück
tbl.y --gibt 5 zurück
tbl.str --gibt "dies ist ein String" zurück
tbl.sqr(2) --gibt 4 zurück (dies ist also eine Funktion, die v nimmt und es quadriert. )
- 'object'
Verhält sich wie eine Wildcard.Acts as a wildcard. Es kann für jede der oben genannten benutzt werden, was nicht bedeutet, dass es von jedem Typ sein kann. Es hängt von der Funktion ab.
<h2> Generelle Argumente </h3>
The arguments given here are general, here are some examples:
'string Eigenschaft
Hiermit lässt sich festlegen, welche Eigenschaft eines Teilchens zu verändern ist. Nicht vergessen: Das ist eine 'string'variable, sodass ein Wort dahinter mit doppelten Anführungszeichen geschrieben werden muss.(")
Die möglichen Eigenschaften sind:
"type"
"life"
"ctype"
"temp"
"tmp"
"vx"
"vy"
"x"
"y"
Alle anderen gegebenen Wörter rufen einen "invalid property error" hervor.
'object Wert
In was du die Eigenschaft ändern willst. Weil das eine objectvariable ist, hängt der Typ von der Funktion ab.
'string Type
Ein 'String', der der Code von einem Element ist, wie "dust" "watr" "spng".
'number index
Ein bestimmtes Teilchen, das von dem Index angegeben wird.
'number Status
0 oder 1, 0 für aus, 1 für an.
'number Breite und 'number Höhe
Steht für ein Rechteck.
'number x und 'number y
Eine 2-Dimensionale Koordinate.
<h1> Lua API
- 'string'
- 'number'
'string Eigenschaft
Powder toy hat die folgenden Funktionen als API: