Autor |
Nachricht |
< Bill die Handpuppe |
|
Verfasst am:
Mo, 30 Jan 2006 - 21:11
|
|
|
Neuling
Anmeldungsdatum: 06.10.2005
Beiträge: 14
Wohnort: Berlin
|
|
Hallo, endlich komme ich mal dazu ein Textadventure anzufangen.
Dabei bin ich nun allerdings auf ein kleines Problem gestoßen dessen Lösung ich bis jetzt nicht ermitteln konnte. Nun, es geht um das Folgende:
Ich habe ein Objekt das soll heißen ’Bill die Handpuppe’
wenn ich aber Bill küsse:
Code: | > küsse Bill
Du gibst Bill die Handpuppe einen feuchten Kuss
|
Eigentliche sollte das ‘die’ durch ein ‘der’ ersetzt werden.
Gibt es eine Möglichkeit das automatisch zu korrigieren? Wenn nicht muss das alles in einer VorAusf abfangen, für alle vordefinierten Verben bei denen es Grammatikalisch falsch wird...
Hat irgendwer schon mal das Problem gelöst? Etwa als er mit dem ‘Stein der Weisen’ oder mit ‘Chrusty der Clown’ gearbeitet hat?
Maik gab mir schon den Tipp Martin persöhnlich zu fragen... *vorsichtig 'rüberschiel* |
|
|
|
|
|
Verfasst am:
Di, 31 Jan 2006 - 9:36
|
|
|
Experte
Anmeldungsdatum: 25.08.2002
Beiträge: 677
Wohnort: München
|
|
Xeres hat folgendes geschrieben: | Gibt es eine Möglichkeit das automatisch zu korrigieren? Wenn nicht muss das alles in einer VorAusf abfangen, für alle vordefinierten Verben bei denen es Grammatikalisch falsch wird... |
Die Handpuppe würde man wohl mit einem Ausführungsblock beim Namen definieren, etwa so:
Code: |
Obj Bill
Name Ausf
! Genus von Hand setzen
ObjGenus selbst f %Eigenname
! passendes
Text 'Bill,'
jenach (#Fall)
(0) Text 'die' ! Nominativ
(1) Text 'die' ! Akk. (in TAG 2. Fall)
(2) Text 'der' ! Dat. (in TAG 3. Fall)
Ende
! Substantiv ausgeben
Text 'Handpuppe/' ! '/' unterdrückt Leerzeichen
EndeAusf
|
Der einzige (aber entscheidende) Knackpunkt ist hier, dass es die Variable #Fall nicht gibt und so dem Spieler keine Information darüber, ob der Name in [der], [den], [dem], [einem] usw. ausgegeben werden soll, zur Verfügung steht. Was du möchtest, geht also leider nicht.
Workaround: Die Puppe "Bill", "Handpuppe" oder "Handpuppe Bill" nennen, und die Formulierung "Bill, die Handpuppe" in den nicht automatisch erzeugten Texten, etwa der Erst-Beschreibung, verwenden.
Xeres hat folgendes geschrieben: | Etwa als er mit dem 'Stein der Weisen' oder mit 'Chrusty der Clown' gearbeitet hat? |
Bei Chrusty dem Clown (schreibt man den so?) ist es genau so wie bei der Handpuppe Bill. Beim Stein der Weisen allerdings nicht: "der Weisen" ist lediglich ein angehängtes Genitiv-Attribut, das sich nicht ändert: der Stein der Weisen, des Steins der Weisen, dem Stein der Weisen, den Stein der Weisen, ein Stein der Weisen.
Dieser Fall ist analog zu den Beispielen im Handbuch - sonst wäre es mir gewiss schon aufgefallen. :-) _________________ Every silver lining has a cloud. |
|
|
|
|
|
Verfasst am:
Di, 31 Jan 2006 - 15:10
|
|
|
Neuling
Anmeldungsdatum: 06.10.2005
Beiträge: 14
Wohnort: Berlin
|
|
Vielen Dank für die schnelle Antwort. Vorerst werde ich Bill mit einer VorAusf versehen, das ist zwar arbeitsintensiv, aber eigentlich sinnvoller. Welche böse, cholerische Handpuppe lässt sich schon küssen? |
|
|
|
|
|
Verfasst am:
Mi, 1 Feb 2006 - 0:41
|
|
|
Experte
Anmeldungsdatum: 05.05.2004
Beiträge: 633
Wohnort: Hamburg
|
|
Hallo Xeres,
wenn du lediglich ein Femininum-Objekt im Singular benutzt, könntest du die nicht implementierte #Fall-Variable mit ein klein wenig Aufwand umgehen, weil dann nur der Dativ für die Ausgabe des Objektnamens relevant wäre.
Hier ein Vorschlag:
Code: |
#DAT 'normal.adv' ! zum Rumprobieren habe ich Martins Standard-Datei benutzt
#STD 'tag.std'
Flagge Dativ
Raum Spielwiese
Name 'Spielwiese'
Besch 'Dies ist eine fiese Wiese zum Ausprobieren von T.A.G.-Besonderheiten.'
Aktion Vorher ! Nur zur Sicherheit
Ausf
Sei Dativ 0
EndeAusf
Obj Chucky
Ort Spielwiese
Name Ausf
ObjGenus selbst f %Eigenname
Text 'Chucky,'
Wenn (Dativ) dann
Text 'der'
Lösche Dativ
sonst
Text 'die'
Ende
Text 'Mörderpuppe/'
EndeAusf
Subst 'chucky' m 'mörderpuppe' f 'puppe' f
VorAusf
(küssen ziehen schieben drehen schneiden spielen_mit eingeben)
! Liste der relevanten Verben hier fortführen, die jeweilige Lib durchsuchen
! nach "[dem"
Setze Dativ
EndeAusf
ENDE
|
Transscript:
Code: |
Dies ist eine fiese Wiese zum Ausprobieren von T.A.G.-Besonderheiten.
Du siehst hier Chucky, die Mörderpuppe.
> küsse chucky
Du gibst Chucky, der Mörderpuppe einen feuchten Kuss.
> nimm chucky
Du hast nun Chucky, die Mörderpuppe.
> küsse chucky
Du gibst Chucky, der Mörderpuppe einen feuchten Kuss.
> leg sie hin
Du hast Chucky, die Mörderpuppe hingelegt.
|
Grüße, CB |
|
|
|
|
|
Verfasst am:
Mi, 1 Feb 2006 - 14:15
|
|
|
Neuling
Anmeldungsdatum: 06.10.2005
Beiträge: 14
Wohnort: Berlin
|
|
Wow, das ist echt eine super Lösung! Damit kann ich sowohl die Standartantworten nutzen, aber auch bestimmte Wörter speziell abfangen.
Code: | > küsse Bill
Du spitzt die Lippen, aber als Bill dich anschaut, als würde er dich bei dem Versuch zerstückeln, lässt du es lieber. |
Wirklich gut, danke dafür! |
|
|
|
|
|
|
Alle Zeiten sind GMT + 1 Stunde (MEZ) |
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|