IF-Forum

» IF-Forum - Autorencafé - Schreiben! - Nummern wählen funktioniert nicht
AntwortenNeues ThemaNeue Umfrage

Nummern wählen funktioniert nicht

Geschrieben um 22:20 am 12.07.2004 | Zitat | Editieren | Löschen
Gast
Gast

Hi!

Ich hab das Tutorial durchgearbeitet und bin grad dabei ein eigenes Adventure zu schreiben. Jedoch habe ich im Moment ein Problemchen:

Ich habe in einem Raum das Objekt Telefon stehen und hab nun dazu einen neuen Befehl erzeugt:


Bef    wählen

Name   'wählen'

Verb   'wähle'

Syntax   dasObj auf demObj

Ausf

   Bed (aObj2 = Telefon)

      'Auf [dem aObj2] kann ich nichts wählen.'

   Bed (aObj2 normal)

      'Du wählst [Nummer] auf [dem aObj2] jedoch bleibt [es] Stumm.'

   Bed (aObj = Zahl)

      'Ich kann auf dem Telefon nur Nummern wählen.'

   Bed (Nummer > 999)

      'Es muss eine vierstellige Nummer sein.'

   Bed (Nummer = Nr_X)

      'Aus dem Hörer kommen die Worte:[x]Kein Anschluss unter dieser Nummer.'

   Text   'WEITERER TEXT'

EndeAusf

"Nr_X" ist eine Integer Variable, der in der Anfangs-Aktion eine zufällige vierstellige Zahl zugewiesen wird.

Wenn ich jetzt jedoch im Spiel eingebe:

"wähle 1234 auf dem telefon"

dann erhalte ich die Antwort:

"Du siehst die Nummer 1234 hier nicht."

Habe ich irgendetwas vergessen? Bräuchte dringend Rat :)

THX schonmal

Geschrieben um 22:36 am 12.07.2004 | Zitat | Editieren | Löschen
Martin
Avatar
Mitglied
Prof Gumby
Beiträge: 634

Zahlen, d.h. das Objekt Zahl, sind in der Regel nicht sichtbar, damit man nicht "nimm 2" oder so sagen kann. (Dass dann die etwas blöde Antwort "Ich sehe die Nummer 2 hier nicht" kommt, ist allerdings etwas unschön.)

Also musst du in deine Syntax-Angabe eine Bedingung für die Gültigkeit von aObj2 einbauen:


Bef    wählen

Name   'wählen'

Verb   'wähle'

Syntax   dasObj (allg) auf demObj

(allg) bedeutet, dass jedes beliebige Objekt gültig ist, es wird bei Gesprächsthemen benutzt, hier passt es auch. Wenn keine Bedingung angegeben wird, muss das Objekt erreichbar sein, was für das Telefon ja auch zutreffen muss.

Du könntest für das zweite Objekt aber noch einen Kniff einbauen: Definiere ein Attribut wählbar, das nur das Telefon besitzt. Dann erweiterst du die Syntax:


Syntax   dasObj (allg) auf demObj (wählbar)

Dann wird das Telefon automatisch vom Parser erraten, wenn es gerade erreichbar ist:


> wähle 112

(auf deinem Mobiltelefon)

Lange Sekunden wartest du, bis am anderen Ende der

Diensthabende sich bequemt ...
Geschrieben um 22:49 am 12.07.2004 | Zitat | Editieren | Löschen
Gast
Gast

Na das funktioniert doch mal alles wunderbar, hatte auch schon das mit dem (allg) ausprobiert, jedoch an falscher Stelle ;)

THX nochmal für die schnelle Antwort!!

AntwortenNeues ThemaNeue Umfrage
Powered by Spam Board SVN © 2007 - 2021
Impressum / Datenschutz