Der S-P-Konverter

Mit einer Verbeugung vor Steve Meretzky präsentiert textfire.de den S-P-Konverter für TAG, der per Knopfdruck eine Suppe in eine Puppe und ein Solo in einen Polo verwandelt.

In Leather Goddesses of Phobos konnte man einen Hasen (rabbit) in einen Rabbi verwandeln. Die »T-removing machine« schaffte solche Aufgaben. Wer sprachspielerische Rätsel mag, der könnte den S-P-Konverter einsetzen.

Der Konverter wird durch zwei Befehle bedient. Zunächst richtet ihn der Spieler auf etwas, dann drückt er den Knopf. Das Ziel, auf das der Konverter zuletzt gerichtet war, wird in einer Objektvariable Ziel abgelegt. Anschließend müssen wir die beiden Befehle definieren, richten_auf und drücken. Der Konverter selbst, obwohl das komplexeste Objekt, ist auch nicht schwerer. Bevor es nun losgeht, müssen selbstverständlich konvertierbare Objekte definiert werden. Da sie nicht mehr als Name, Subst und vielleicht Besch benötigen, füge ich nur ein Beispiel-Paar zum Ausprobieren bei.

ObjVar  Ziel

Bef     richten_auf
Name    'richten'
Verb    'richte' 'halte' 'ziele'
Syntax  dasObj (BeiMir) auf dasObj (inSicht)
        ! Das angepeilte Objekt muss schließlich nicht
        ! gehalten werden.
Ausf
    Text  'Du richtest [den aObj] auf [den aObj2]. Es
          scheint dabei beiden nichts Schlimmes zu
          passieren.'
EndeAusf

Bef     drücken
Name    'drücken'
Verb    'drücke' 'presse'
Syntax  dasObj
Ausf
    Text  'Du drückst [den aObj] leicht.'
    ! Möglichst harmlose Standard-Antwort:
    ! Drücken kann man viel.
EndeAusf

Obj     Konverter
Name    'S-P-Konverter' m
Adj     'gelb'
Vor     's' 'p' "s-p' 'fern'
Subst   'konverter' m  'knopf' m  'maschine' f
Subst   'bedienung' f
Ort     Raum1 ! Halt der im Spiel vorgesehene Raum
Erst    'Eine Art Fernbedienung mit nur einem Knopf
        liegt herum.'
Besch   'Diese seltsame Fernbedienung besitzt nur
        einen gelben Knopf. Darauf steht
        "S-P-Konverter".'
VorAusf
    (richten_auf)
        Text  'Du richtest den Konverter auf
              [den aObj2].'
        Sei Ziel aObj2
        ! Die Objektvariable Ziel erhält die Richtung
        ! des Konverters.
        Stop
    (drücken)
        Jenach Ziel
            (ich)
                Stop 'Du bekommst Pchluckauf. Sonst
                     geschieht nichts.'
            (Suppe)
                Text 'Du zielst auf die Suppe und drückst
                  den Knopf. Wie von unsichtbarem Mund
                  gegessen verschwindet die Suppe. An
                  ihrer Stelle siehst du eine aus dem
                  Nichts aufgetauchte Puppe.'
                Tausche Suppe Puppe
                Stop
            (Puppe)
                Stop 'Nichts passiert, der S-P-Konverter
                  funktioniert wohl nur in eine Richtung.
                  Außerdem: Was willst du mit einer
                  Susse?'
            (sonst)
                Stop 'Du drückst den gelben Knopf,
                  aber nichts passiert.'
        Ende
EndeAusf

Obj     Suppe
Name    'Suppe' f
Adj     'lecker' 'cremig' 'kremig' 'heiß' 'dampfend'
Vor     'broccoli' 'creme' 'rahm' 'sahne'
Subst   'suppe' f
Ort     auf Tisch
Erst    'Auf dem Tisch steht eine dampfende Suppe.
        Mmh, Broccoli-Creme!'
Besch   'Es handelt sich um einen vollen Teller mit
        einer leckeren Broccoli-Creme-Suppe.'

Obj     Puppe
Name    'Puppe' f
Adj     'schlank' 'klein' 'nackt'
Vor     'barbie'
Subst   'ken' m 'puppe' f
Ort     Nirgendwo
Erst    'Im Raum liegt eine unbeachtete Puppe.'
Besch   'Es ist Ken, der Lover von Barbie.'

Ob das in der Objektvariablen Ziel gespeicherte Objekt noch gegenwärtig ist, überprüft dieser Code allerdings nicht. Wenn der S-P-Konverter in einem Abenteuer mit mehr als einem Raum eingesetzt werden soll, muss diese Variable entweder bei Verlassen eines Raumes oder, noch besser, zeitabhängig gelöscht werden.