CAOS-Programmierung: Syntax
<< | Inhaltsverzeichnis | Variablen >>
Syntax
Bin noch am formulieren
Kommentare werden mit einem " * " eingeleitet und gelten bis zum nächsten Enter
CAOS ist eine registerbasierte Sprache, mit einem festgelegten Befehlssatz, welcher nicht erweitert werden kann. Lokalesierung von Variablen wird nicht unterstützt.(d.h. in einem Script-Unterprogramm können auch nur die gültigen Variablen VA00 bis VA99 angesprochen werden )
Jede Script-Datei kann Subroutinen enthalten.Doch diese sind nur in dieser Datei und für die angegebene Scriptnummer gültig, können also nicht von "Außen" aufgerufen werden.
Der CAOS-Code kann als einzelner Befehl, in ein laufendes Programm (Spiel) eingegeben werden. Dies geschieht entweder durch die CAOS-Befehlszeile in DS (muß als Script schon laufen) oder von einem Terminal. Jedoch wird CAOS meistens als Script verwendet. Ein typisches Beispiel
Code .... attr 192 accg 0 perm 0 aero 0 fric 0 elas 0 .....
Dies ist nur die Darstellung lesbar für den Programmierer, intern verarbeitet DS dies so:
Code .... attr 192 accg 0 perm 0 aero 0 fric 0 elas 0 .....
Die Befehle des Codes, immer vier Buchstaben, sind Abkürzungen des Englischen.
z.B. fric : friction (Reibung) , new: : new (Neu bitte den Doppelpunkt beachten, ist Teil des Befehls!)
Es gibt nur zwei Ausnahmen der "Vier-Buchstaben-Regel":
1. Parameter, sie tragen namen wie _IT_, _P1_ oder _P2_ (auch hier vier Buchstaben, allerdings ein _ statt einem richtigen Buchstaben) 2. Operatoren, beispielsweise eq (equals), ge (greater or equal), lt (less than) etc. besitzen nur zwei Buchstaben.
Die Zahlen vor oder nach dem Befehl haben immer spezielle Bedeutungen, z.B Reibung(wert) 0. Die Bedeutung und welche Angaben benötigt werden ist in den einzelnen Befehlsgruppen erläutert.
Hauptaufgabe von CAOS ist das Beschreiben von Objekten(Agents), deren Eigenschaften und die Interaktion untereinander, mit Norns und mit dem User(per Mouse(Hand) oder Tastatur) Kursiv weil es nicht objektorientiert verstanden werden soll, nur in etwas so ähnlich. Vieles ist zugeschnitten auf das Spiel, einige Sachen fehlen (für OOP) und einiges wird anders ausgeführt.
Die Code der Agenten setzen sich aus verschiedenen Dingen zusammen.
1. Installation Script dort wird definiert * Eigenschaften , z.B. attr 192 * Name des Bildes z.B "hoverdoc.c16" * Position des Agenten 2. Script-Ereignissen, sie definieren das Verhalten bei einem eintreffenden Ereignis, z.B. Karotte (Agent) wird von Hand fallen gelassen scrp 2 32 23 9 3. Deinstallations-Scripts (z.B. scrx 2 32 23 9)
Es gibt eine Reihe von vordefinierten Ereignissen : Script Numbers
Zur Steuerung de Programmablaufs gibt es unter Flow die entsprechenden Befehle.
Speziell für das Entwickeln von CAOS-Programmen gibt es die Debug Befehle, mit der Ausgabe über einen Terminal.
Weiterhin sind Befehle für das Zugreifen auf "Files" , den "Sound" und das "Net".Einige Befehlsgruppen sind nur für Norn- Brain oder -History zuständig.
<< | Inhaltsverzeichnis | Variablen >>