Benutzer-Werkzeuge

Webseiten-Werkzeuge


Daedalus

Nach dem bekannt ist, was Skripte sind, wird sich nun mit der Skriptsprache auseinander gesetzt.

Die Skriptsprache Daedalus gibt es exklusiv für die Entwicklung von Modifikationen für Gothic. Sie ist von der Syntax her an JavaScript angelehnt, aber das nutzt Neulingen nichts, da sie das Schreiben von Code erst noch lernen müssen.
Ein Skript besteht aus Anweisungen und Kommentaren, die gemäß der Regeln der Skriptsprache aufgeschrieben werden müssen. Die Regeln bestimmen den Satzbau aus Symbolen, Schlüsselworten, Werten und Ausdrücken, wie in deutsch. Allerdings gibt es bei Skriptsprachen keine laxe Handhabung der Rechschreibregeln oder der Stellung der Wörter im Satz und Satzzeichen!
Wenn ihr in Daedalus ein Skript verfasst sind zunächst einmal nur Kommentare und Deklarationen zulässig.

Kommentare

Kommentare sind dazu da, zu beschreiben, was das Skript - in einem kleineren Abschnitt, der Code - bewirken soll. Dies ist wichtig, da nicht immer direkt aus dem Skript hervorgeht, was im Spiel gerade passiert.
Falls etwas nicht so läuft wie erwartet fällt die Fehlersuche ohne Kommentare noch schwerer. Außerdem kann man Kommentare dazu benutzen, sich mit anderen Programmierern (die auch auf die Dateien zugreifen) abzusprechen.
Kommentare gibt es einzeilig und mehrzeilig. Einzeilige Kommentare beginnen mit dem Doppelslash-Symbol //. Code oder Text der in der selben Zeile danach steht, wird nicht mehr vom Parser ausgewertet. Mehrzeilige Kommentare beginnen mit dem Slashstern-Symbol /* und enden unabhängig von einem oder mehreren Zeilenwechseln mit einem Sternslash-Symbol */. Was zwischen diesen beiden Symbolen steht wird vom Parser nicht interpretiert. Eine Verschachtelung wie bei Klammern ist daher nicht möglich. Dafür ist es möglich in deutsch (oder englisch, polnisch, russisch, französisch, …) zu schreiben, statt in Daedalus, ohne Fehler bei der Auswertung zu provozieren.

Deklarationen

Deklarationen ordnen Bezeichnern eine Bedeutung zu. Deklariert werden müssen Klassen, Funktionen, Instanzen, Variablen und Konstanten. Mit der Deklaration eines Bezeichners bzw. Namens wird sein Werttyp festgelegt, bei Funktionen der Antwortwerttyp.
Anschließend kann der Name nur noch als Referenz und nicht mehr in einer Deklaration benutzt werden.

Werttypen

Werttypen sind zu unterscheiden in einfache und nicht-einfache, höhere, komplexe oder strukturierte Typen.
Werte von einfachen Typen lassen sich im Allgemeinen im Satz, innerhalb einer Anweisung aufschreiben.

Einfache Typen

Zu den einfachen Typen gehören

  • Ganze Zahlen const int Beispiel_int = 10;
  • Dezimalzahlen const float Beispiel_float = 0.201e-5;
  • Zeichenketten const string Beispiel_string = „Hallo Welt!“;

Zahlen

Ganze Zahlen und Dezimalzahlen sind nicht zuweisungskompatibel, können aber über Externe Funktionen in den jeweils anderen Typ umgewandelt werden.
In Daedalus lässt es sich nur mit ganzen Zahlen rechnen.

Zeichenketten

In Daedalus lassen sich Zeichenketten (engl. Strings) miteinander verknüpfen. Dabei wird der zweite String an den Ersten angehängt. Man nutzt dazu die ConcatStrings.

Nicht-einfache Typen

Werte von nicht-einfachen Typen sind Funktionen func und Instanzen. Für eine Instanz muss dazu der Klassentyp also der Name der Klasse angegeben werden.
Beispiel:

var func Beispiel_func; Beispiel_func = Eine_Funktion;
instance NpcInstanz (C_NPC) {};
var C_NPC Beispiel_Instanz_C_NPC; Beispiel_Instanz_C_NPC = Hlp_GetNpc(NpcInstanz);

Siehe dazu auch Funktionstypen

Schlüsselworte

Siehe auch

skript/daedalus.txt · Zuletzt geändert: 2017/01/09 15:08 von milky-way