7.3 Präprozessor-Anweisungen

Eine Präprozessor-Anweisung ist eine Anweisung, welche Hollywood vor dem Ablauf Ihres Skripts ausführt. In Hollywood werden sie hauptsächlich zum Vorladen von Dateien benutzt. Zum Beispiel wenn Ihr Skript irgendwann die Dateien mainmenu.png, gamescreen.png und music.mod verlangt, könnten Sie sie mit folgendem Code einfach vorladen:

 
@BGPIC 1, "mainmenu.png"
@BGPIC 2, "gamescreen.png"
@MUSIC 1, "music.mod"

Hollywood lädt dann alle diese Dateien, bevor Ihr Skript ausgeführt wird. Somit sind alle über Präprozessor-Anweisungen geladenen Dateien sofort zur Benutzung bereit, wenn Ihr Skript beginnt. Die meisten LoadXXX()-Befehle haben eine Präprozessor-Anweisungen. Zum Beispiel der Präprozessor von LoadBrush() ist @BRUSH, von LoadBGPic() ist @BGPIC und so weiter.

Präprozessor-Anweisungen fangen immer mit dem Textzeichen(@) an. Sie sollten diese auch in Großbuchstaben schreiben, damit sie besser von den normalen Befehlen unterschieden werden können. Die Präprozessor-Anweisungen können irgendwo im Skript plaziert werden. Es wird aber wegen der besseren Lesbarkeit empfohlen, sie an den Anfang des Skriptes zu schreiben.

Eine elementare Präprozessor-Anweisung ist @VERSION. Sie sollten diese als erstes in Ihrem Skript benutzen! @VERSION überprüft, ob die Hollywood-Version geeignet ist, um das Skript auszuführen. Ansonsten wird Hollywood abbrechen.

Die meisten Präprozessor-Anweisungen haben mehrere Argumente, die wie bei den normalen Befehlen durch Kommas getrennt werden. Sie können auch Ausdrücke darin benutzen. Zum Beispiel wäre die folgende Deklaration ungewöhnlich, aber vollkommen gültig:

 
@BRUSH 5+5, "MyBrush.png"

Dies würde MyBrush.png als Pinsel Nr. 10 laden. Sie können aber keine Variablen in Ihren Ausdrücken benutzen. Wenn Hollywood Ihr Skript auf Präprozessor-Anweisungen analysiert, weiß es noch nichts über die Inhalte der Variablen, da Ihr Skript noch nicht ausgeführt wird. Das heißt, dass alle Ausdrücke, die Sie benutzen, konstant sein müssen.

Ein weiterer Vorteil der Präprozessor-Anweisungen ist, dass alle angegebenen/vorgeladenen Dateien automatisch mit dem ausführbaren Programm oder Applet verbunden/gelinkt werden. Dieses Verhalten kann mit dem Tag Link gewechselt werden und ist bei allen Präprozessor-Anweisungen vorhanden, welche mit Dateien arbeiten. Voreingestellt ist TRUE (Wahr) und somit werden die Dateien verlinkt. Wenn Sie keine bestimmten Dateien verlinken wollen, weil sie z.B. zu groß sind, müssen Sie das ausdrücklich mit der Präprozessor-Anweisung angeben.

Die folgenden Präprozessor-Anweisungen sind verfügbar:

 
@ANIM            Lädt eine Animation vor
@APPAUTHOR       Deklariert den Programmautor
@APPCOPYRIGHT    Deklariert das Copyright des Programms
@APPDESCRIPTION  Deklariert die Beschreibung des Programms
@APPENTRY        Deklariert das Projekteingangsskript
@APPICON         Deklariert das Piktogramm für Ihr Programm
@APPIDENTIFIER   Deklariert den Programmidentifikator
@APPTITLE        Deklariert den Programmtitel
@APPVERSION      Deklariert die Programmversion
@BACKFILL        Konfiguriert die Hintergrundfüllung des Skripts
@BGPIC           Lädt ein Hintergrundbild vor
@BRUSH           Lädt ein Pinsel vor
@CATALOG         Lädt einen Sprachkatalog vor
@DIRECTORY       Bindet ein gesamtes Verzeichnis im Applet/Programm ein
@DISPLAY         Erstellt ein neues Display
@ELSE            Wird betreten, wenn alle Bedingungen fehlschlugen
@ELSEIF          Testet eine andere Bedingung
@ENDIF           Definiert das Ende des bedingten Blocks
@ERROR           Kompilation mit einer Fehlermeldung abbrechen
@FILE            Öffnet eine Datei
@FONT            Lädt eine Schriftart vor
@ICON            Lädt ein Piktogramm vor
@IF              Prüft die Bedingung
@INCLUDE         Fügt Code von einer anderen Datei ein
@LINKER          übergiebt Optionen an den Linker
@MENU            Erstellt eine Menüleiste
@MUSIC           Lädt eine Musikdatei vor
@OPTIONS         Konfiguriert verschiedene Optionen
@PALETTE         Lädt eine Palette vor
@REQUIRE         Deklariert ein Plugin
@SAMPLE          Lädt ein Sample vor
@SCREEN          Konfiguriert den Bildschirmmodus für ihr Skript
@SPRITE          Lädt ein Sprite vor
@VERSION         Definiert, welche Hollywoodversion Ihr Skript benötigt
@VIDEO           Lädt ein Video vor
@WARNING         Sendet eine Warnmeldung an das Debug-Gerät


Navigation zeigen