NPCs

Damit in einem Adventure auch was los ist brauchst andere Charaktere genannt NPCs (Nicht-Spieler-Charakter). Einzelne Figuren irgendwo hinplazieren erfordert keine großen Vorkehrungen. Interresant wird es aber wenn es mehrere gibt die nicht nur mit dem Spieler sondern auch miteinander agieren sollen können.

Damit solche Unterhaltungen aber nicht den Spieler bei seinen Aktionen stören gibt es den on (loop2) Skriptteil in einem Raumskript. Dieses Skript wird unterbrochen sobald eine Cutscene oder eine Textscene gestartet wird oder der Spieler einen anderen Charakter anvisiert. Ein Beispiel für sich unterhaltende NPCs :

on (loop2)
{
if_num (gespraech ; 1)
{
speech (npc1 ; Hallo wie gehts?)
speech (npc2 ; Joa muss nee.)
setnum (gespraech ; 2)
wait (30)
}
if_num (gespraech ; 2)
{
speech (npc1 ; Schönes Wetter heute.)
speech (npc2 ; Ich hätte ja lieber Regen.)
setnum (gespraech ; 3)
wait (30)
}
if_num (gespraech ; 3)
{
speech (npc1 ; Grüß deine Frau und meine Kinder.)
speech (npc2 ; OK, aber sag du deiner Mama bescheid die hat
ihre Schuhe vergessen.)
setnum (gespraech ; 1)
wait (300)
}
}

Hier passiert folgendes. Es gibt 3 Gesprächsabschnitte, damit aber bei einer Unterbrechung das Gespräch nicht immer wieder beim ersten Teil anfängt wird mit der Zahl "Gespräch" die Position festgehalten. Der letzte Wait Befehl sorgt dafür das etwas Zeit vergeht bevor das ganze wieder von vorne anfängt. Man kann auch "Gespraech" auf 4 setzen wenn man nicht möchte das die Gespräche sich wiederholen.

Ein Partner :

In Spielen wie Sam & Max gibt es Partner die mit einem durchs Spiel laufen. Auch hier kann man diesem Partner mehr Leben einhauchen in dem man ihn mit dem Loop2 Dinge erledigen läßt. Er läuft herum, untersucht Gegenstände oder macht Faxen. Beim Raumwechsel muss dafür gesorgt werden das der Partner mit den Raum wechselt. Generell gilt es dabei aufzupassen das der Partner nicht im Weg steht.