Ein beliebtes Feature in Inform sind graue Boxen im Spiel, die berühmte Zitate, Hinweise oder ähnliches enthalten. Der Knackpunkt bei ihnen ist, dass sie nur einmal im Spiel erscheinen, etwa wenn ein Spieler einen bestimmten Raum zum ersten Mal betritt.
!***************************************************
!Boxen
!***************************************************
Constant CeterumCenseo 0;
Constant NonMulta 1;
!ein einfacher Array mit [Anzahl der Boxen] Elemente,
!die anfangs den Wert 0 haben.
Constant MAX_BOXES 12
Global nextBox = -1;
Array box_shown -> MAX_BOXES;
!Funktion zum Aufrufen der Boxen
[ ShowBox num;
if(box_shown->num) rfalse;
nextBox = num;
];
[ DrawBox num;
box_shown->num = 1;
switch(num) {
CeterumCenseo:
box "Ceterum censeo Carthaginem"
"esse delendam!";
NonMulta:
box "Non multa, sed multum.";
default:
box "Non boxus existit..."
}
rtrue;
];
[ AfterPrompt;
if (nextBox != -1) {
DrawBox(nextBox);
nextBox = -1;
}
];
!********************* Ende Code ********************
Soll beispielsweise eine Box beim ersten Betreten eines Raums aufgerufen werden, sieht der Code so aus:
Object Raum "Karthago"
with description "Du bist in Karthago.",
each_turn [;
ShowBox(CeterumCenseo);
];
Einfach, nicht?
26.08.2001, Max Kalus
|
 |
Fünf Unterschiedliche Ideen rund um ein Thema
Auftanken Kurzentwürfe für Abenteuer
Ersatzteile Fertige Objekte, Befehle und Räume für Abenteuer
Werkstatt Mechanik und Innenleben von Textadventures
Testfahrt Die Straßenlage deutscher Adventures
Grand Prix Der Textadventure- Wettbewerb
Abbiegen Lohnende Nebenstraßen
Intern Was textfire.de will, wer es macht und wie man mitmacht
|