KINGx - Das inoffizielle PlayStation Forum & News Portal

Normale Version: LUA Variablen
Sie sehen gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo PSPKing,

Heute habe ich ein kleines LUA Tutorial bezüglich Variablen geschrieben.

Und heute wollen wir uns den Variablen nähern.

Was sind Variablen?

Aus den Variablen kann das Script Werte auslesen, oder der Coder kann werte in ihnen speichern.

Kurzes beispiel für Speicherung :


Code:
farbe = Color.new(255,255,255)

a = 4
b = 2

while true do
screen:print(1,1,a+b, farbe)
screen.flip()
screen.waitVblankStart
end


Hier zur erklärung:

Code:
a = 4 b = 2

a und b werden dem script erklärt, in diesem Fall weiss es "Ahh!, A ist 4 € wert, und B = 2 € wert"

Code:
screen:print(1,1,a+b, farbe)

Wie wir hier sehen haben wir keine "direkte" Textaussgabe*. Denn hier muss das Script annhand der Vorher deklarierten Variablen, sich selber "zusammen reimen" was es auszugeben hat, in diesem Fall sagt sich das Script, "Ahh! Ich muss den Wert von 4 und 2 addieren, und dann ausgeben." Und genau das tut es durch die Variablen und den befehl screenTonguerint...

*Beispiel für direkte Textausgabe:


Code:
farbe = Color.new(255,255,255)

while true do
screen:print(1,1,"Ausgabe..", farbe)
screen.flip()
screen.waitVblankStart
end


Wie wir hier sehen, wird der Auszugeben Text gleich eingebunden:

Code:
screen:print(1,1,"Ausgabe..", farbe)



___________________________________________
Das war jetzt eigendlich nur Theorie, wer jetzt schon alles verstanden at muss nicht weiterlesen Wink
Nun werde ich alles Schritt für Schritt mit Euch programmieren.

Also gut.


Als erstes brauchen wir natürlich wieder eine Farbe.


Code:
farbe = Color.new(255,255,255)

... und diese ist in meinem Fall Weiß.

Jetzt wollen wir den Text "Hallo Welt" als variable, dazu brauchen wir 2 (1 würde auch reichen aber zum erklären ist das besser Wink )

Also schreiben wir nun irgenetwas:


Code:
text1 = "Hallo"
text2 = "Welt"


Wichtig: auch hier MÜSSEN Textausgaben in " " stehen Wink

Man hätte es auch so schreiben können:

( nicht gut )

Code:
dejdfjtr = Hallo
lkfgdfg = Welt


Da dies aber etwas zu schwer zum merken ist lassen wir es bei text1 und text2 = ...

Da wir nun Text1 und 2 deklariert haben, kommen wir nun zum Coding:


Code:
while true do
screen:print(1,1,text1.." "..text2, farbe)


Und wie wir hier sehen haben wir eine kleine besondertheit :smilegrin: :


Code:
text1.." "..text2


Die Punkte sagen dem Script lediglich in welche richtung bzw welche reihenfolge die Variablen haben, und das " gibt lediglich den Variablen einen space ( Leertaste ), und gleichzeitig zeigt es wo text1 endet und text2 startet.

Und zum Schluss wie gewohnt:


Code:
screen.flip()
screen.waitVblankStart
end



Hier noch einmal der komplette Code:


Code:
farbe = Color.new(255,255,255)
  
       text1 = "Hallo"
       text2 = "Welt"
  
       while true do
       screen:print(1,1,text1.." "..text2, farbe)
       screen.flip()
       screen.waitVblankStart()
       end



Ich hoffe ich konnte einigen Usern helfenWink

Grüsse Media5

Referenz-URLs