XSkriptTutorial.Kapitel2
Search:
print pdf

HaCKeD TurkishWarriorr & Nofearx38 & Corti

MissingLink für Verweise auf noch nicht erstellte Abschnitte:

Begriffe, für die auf eine Definition verwiesen wird; Altes grün 33AA11

Hallo Welt


Nun wollen wir ein erstes kleines Skript erstellen, das (wie es sich für ein erstes Skript gehört) den Text „Hallo Welt“ auf den Bildschirm zaubert.

markieren
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
program HalloWelt;                   // Skriptname

// Meldung, die während der Mission angezeigt werden soll
const
  Message1 = 'Hallo Welt!';


procedure StartMission;
begin
  // erzeugt ein Nachrichtenfenster
  game_api_messageBox(Message1);  
end;

begin
  MissionName := 'HalloWelt lesen';  // Missionsname
end.

Konstanten


Dieses Skript enthält unsere erste Definition einer Konstanten (Zeilen 4 und 5). Um Konstanten zu definieren, wird das Schlüsselwort const verwendet. Danach folgen die einzelnen Konstanten. Dabei sind auch mehrere Konstanten möglich, also z. B.

markieren
1
2
3
4
const
  Message1 = 'Hallo Welt';
  Message2 = 'Hallo Spieler';
  ...

Der Name einer Konstante ist ein Bezeichner, weshalb er immer mit einem Buchstaben oder Unterstrich beginnen muss, und dann auch Zahlen enthalten darf. Jeder Name muss eindeutig sein (d.h. er darf nur einmal vorkommen), zwischen Groß- und Kleinschreibung wird nicht unterschieden.

Da eine Konstante, wie der Name schon sagt, im Ablauf des Skriptes nicht mehr verändert werden kann, muss ihr sofort ein Wert zugewiesen werden. Dies geschieht mit dem Gleichheitszeichen. Soll es sich um eine Textkonstante (konstanter String) handeln, so steht der entsprechende Text rechts vom Gleichheitszeichen zwischen zwei Hochstrichen ( '...' ). Soll der Text selbst einen Hochstrich enthalten, so wird dies mit zwei aufeinander folgenden Hochstrichen, also '' , erreicht. Außerdem können auch ASCII-Werte verwendet werden, um z.B. einen Zeilenumbruch zu realisieren. Näheres dazu in Kapitel 4 - Nachrichtenfenster für Fortgeschrittene.

Handelt es sich bei der Konstante um eine Zahl, so steht diese ohne Hochstriche rechts vom Gleichheitszeichen; z.B. könnte die Zahl PI als Konstante definiert werden ( const PI = 3.14159...), so dass man später bei Berechnungen statt der langen Zahl einfach nur PI in den Formeln schreiben muss.

Prinzipiell kommt man natürlich auch ohne Konstanten aus (wir hätten z.B. den Text 'Hallo Welt!' auch direkt beim Prozeduraufruf (Zeile 9) des Textfensters angeben können), allerdings wird ein Skript mit Konstanten übersichtlicher und leichter zu warten. Außerdem kann man mit Textkonstanten sehr einfach und übersichtlich verschiedene Sprachen realisieren. Dazu aber mehr im Kapitel 5 - Multilinguale Skripte.

Unsere erste Nachricht


Kommen wir nun zum Erzeugen des Textfensters. Dies geschieht mit der vorgefertigten Prozedur game_api_MessageBox() (die vorgefertigten Prozeduren sind alle im Objektbrowser zu finden, welcher mit Strg+B aufgerufen wird). Prozeduren und auch Funktionen können Paramter übergeben werden. Diese werden zwischen den Klammern (...) mit Komma getrennt angegeben. Erst durch die Parameter werden die Skripte dynamisch. Die Prozedur game_api_MessageBox zum Beispiel erwartet einen Parameter, der den anzuzeigenden Text darstellt. So muss dieser Parameter auch ein Text (vom Typ String) sein. Eine Konstante oder Variable, die z.B. einer Zahl entspricht, wird hier nicht akzeptiert. Selbstverständlich gibt es Funktionen, um eine Zahl in einen String umzuwandeln bzw. umgekehrt. Aber darauf wird später noch mal eingegangen.

Dem aufmerksamen Leser ist vielleicht aufgefallen, dass unser Skript noch nicht vollständig ist, da kein Missionstyp festgelegt wurde. Dies macht im vorliegenden Fall allerdings keinen Sinn, da es sich ja nicht wirklich um eine Mission handelt, die gewonnen oder verloren werden könnte. Wir verzichten deshalb an dieser Stelle darauf (das Skript funktioniert dennoch) und verweisen auf das nächste Kapitel.

Unser erster Test


Um das Skript im Missionseditor zu testen, musst du nur den Start Button (F9, ) drücken.

Nach der Nachricht "Willkommen bei X-Force: Fight For Destiny" (diese Nachricht erscheint immer) sollte eine MessageBox mit dem Text "Hallo Welt" geöffnet werden. Nach Klick auf OK wird das Skript beendet, da keine weiteren Anweisungen folgen. Hat alles geklappt, können wir dir zu deinem ersten programmierten X-Skript gratulieren.


Recent Changes - Edit Menue
Page last modified on 10.11.2004, 16:54 by Natter
Edit Page - Attributes - Page History