Grundlegende Befehle: Unterschied zwischen den Versionen

Aus X-Lexikon
Zur Navigation springenZur Suche springen
(erstellt)
 
KKeine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
{{TutorialBar2|[[Vorbereitungen für das Scripten]]|[[X3:Terran Conflict Scripting-Tutorial]]|[[[[Globale und lokale Variablen]]]]}}
{{TutorialBar2|[[Vorbereitungen für das Scripten]]|[[X3:Terran Conflict Scripting-Tutorial]]|[[Globale und lokale Variablen]]}}


<br>
<br>

Version vom 5. Februar 2011, 15:32 Uhr



So, hier kommen wir nun zu den Grundlagen. Im Spiel haben wir den Scripteditor geöffnet und ein neues Script erstellt. Dies werden wir nun spielerisch mit Code füllen.
Eine Neue Zeile erstellt man mit "New Line", das ganz am Ende des Codes zu finden ist. Dann öffnet sich die Befehlsliste, und wir suchen uns dort den entsprechenden Befehl heraus.

Geld

Zunächst kommen wir zur wohl einfachsten Sache, das ändern des Spielerkontos. Dies wird mit folgendem Befehl gemacht (zu finden in den Trade Commands):

Hier haben wir einmal den festen Code, und zwar den Block "add money to player:". Daran können wir nichts ändern.
Trotzdem, hier treffen wir nun auf unser erster Argument, nämlich "<Var/Number>". Dieses können und müssen wir verändern.
Über "New Line" fügen wir also nun diesen Befehl unserem Code hinzu. Dann öffnet sich sofort ein Fenster namens "Script input". Dort wird alles aufgelistet, was wir anstelle von "<Var/Number>" einsetzen können.

Bei dieser Gelegenheit kommen wir direkt einmal zu einer Variablen. In der Liste scrollen wir dazu nun nach ganz unten, und wählen den Punkt "<Variable>" aus. Nun öffnet sich ein Fenster, in dem wir den Namen der Variable eingeben müssen. Nennen wir sie einfach mal "Betrag".

Daraufhin seht ihr euren Script Code, in dem nun euer Befehl eingetragen wurde. So sieht der gesamte Code bis jetzt aus:


Damit kommen wir dann zum nächsten Punkt, und zwar den

Variablen

Variablen sind mit das wichtigste beim Scripten. Eine Variable kann alles sein, ein Schiff, ein Sektor, ein Planet, eine Zahl, ein String, sogar ganze Gruppen von Objekten, sog. Arrays, und so weiter und so weiter.
Wichtig ist aber, dass eine Variable ganz zum Anfang auf den Wert 'null' gesetzt wird. Sprich also, sie beinhaltet erst einmal ganz genau gar nichts.
Daher müssen wir ihr einen Wert zuweisen. Dies machen wir mit folgendem Befehl, der unter den "General Commands" zu finden ist:

Den fügen wir nun mittels "New line" unserem Code hinzu. Wieder öffnet sich das Fenster "Script Input".
Und hier offenbart sich einer der größten Vorteile des internen Scripteditors: Ganz oben, unter "Available Variables", finden wir eine Liste mit den bisher in diesem Script genutzten Variablen.
Wir haben bisher genau eine genutzt, nämlich "Betrag", und die finden wir auch in der Liste wieder. Also wählen wir sie aus. Der Befehl nimmt danach schon eine konkrete Form an, er sieht dann folgendermaßen aus:

Die Punkte ("...") stehen hier dafür, dass man den Code noch erweitern kann, man könnte theoretisch noch viel mehr Sachen in dieser Zeile erledigen.
Uns interessiert aber viel mehr das "<?>", denn dort können wir jetzt der Variable einen Wert zuweisen. Also markieren wir es und drücken "Enter".

Erneut öffnet sich nun das Fenster "Script input". Wie ihr seht, ist die Liste nun weitaus länger, denn es können hier weitaus mehr Dinge eingesetzt werden. Wir wollen hier jetzt eine Nummer haben, also klicken wir auf <Number>.
Es öffnet sich nun ein Fenster, wo wir die Nummer eingeben müssen. Diese Nummer gibt ja den Geldbetrag an, den der Spieler kriegen soll, daher müssen wir den auch hier angeben. Als Test geben wir mal 1.000.000 ein. Versucht nicht, Punkte einzugeben - das klappt sowieso nicht - sondern nur die Zahl, also 1000000. Achtet darauf, dass ihr wirklich alle Nullen habt - X3 lässt doppelte Buchstaben und Zahlen gerne mal aus. Mit Enter bestätigen wir das ganze.

Unser Code schaut jetzt so aus:

Der Code sieht schön aus, aber er ist leider Falsch...
Wir schauen uns einmal den Ablauf an: Zuerst wird dem Spielerkonto ein Creditwert in Höhe von "$Betrag" hinzugefügt, und erst danach wird festgelegt, wie hoch der Betrag werden soll. Das geht ja nicht, denn wir müssen erst die Größe des Betrages kennen, um ihn dann dem Spielerkonto hinzuzufügen. Dazu macht ihr jetzt folgendes: Ihr markiert die zweite Zeile, also die, wo wir der Variable "$Betrag" den Wert 1000000 zuweisen, und drückt die Taste x. Damit schneidet ihr die Zeile aus. Nun markiert ihr die Zeile, vor der ihr es einfügen wollt, also hier die erste Zeile. Nun drückt ihr die Taste v, um den Code davor einzufügen.

Nun sollte das ganze so aussehen:


Das wärs

Fertig ist euer erstes Script! Geht nun auf ESC, und klickt bei der Meldung "Save Script..." auf "Ja". Nun seid ihr in der Scriptliste, wo ihr jetzt euer Script sucht und markiert, dann auf r und schließlich 2 Mal auf Enter drückt.
Nun habt ihr 1.000.000 Credits mehr auf dem Konto.

Probieren, Probieren, Probieren

Probiert die einzelnen Scriptbefehle aus! Die meisten sind von sich aus selbsterklärend, und ansonsten schaut in die EGSOSOFT MSCI-Befehlsreferenz, denn dort sind die Befehle alle noch einmal erklärt.