Geschrieben um 23:38 am 26.01.2005 | Zitat | Editieren | Löschen | |
Mitglied Pupil Gumby Beiträge: 15 | Folgendes kleines Beispiel verursacht mir erhebliches Kopfzerbrechen. Ich verwende die ginform-lib in der Version 20. Folgendes funktioniert nicht so, wie ich es erwarte:
Mit dem Mann hingegen klappt das:
Auch: Wenn ich den Mann ganz rausnehme, klappt auch die "gib ihr ..." Variante.
CU und Danke für Eure Hilfe, Olav |
Geschrieben um 10:11 am 27.01.2005 | Zitat | Editieren | Löschen | |
Mitglied Prof Gumby Beiträge: 634 | olav.mueller:
Der Spieler muss eingeben "gib sie das Geschenk", dann klappt's... :-) Okay, hab mir die Lib mal angeschaut: Das Wort 'ihr' ist nur als Possessivpronomen definiert, so dass man sagen kann "untersuche ihr Halskettchen". Wenn also "ihr" gegen ein [creature]-Token geparst wird, wird der descriptor 'ihr' gefunden, sonst nichts. Das reicht offensichtlich schon, um als Objekt durchzugehen. Da es zwei Objekte gibt, die animate sind, fragt der Parser nach. Das erklärt auch, warum es funktioniert, wenn der Mann nicht da ist - die Frau ist als einzig animiertes Wesen eindeutig gefunden. Mit zwei Änderungen in german.h habe ich es zum Laufen gebracht: Im Array LanguagePronouns, das ab Zeile 176 zu finden ist, habe ich die Zeile für 'ihr' eingefügt:
Dann wird 'ihr' allerdings immer noch als Possessivpronomen verstanden, daher habe ich das Wort aus dem Feld LanguageDescriptors (Zeile 204) herausgenommen:
Das ist nicht ganz schön, da man jetzt zwar sagen kann "nimm ihre Hand", aber nicht "nimm ihr Handtäschchen", aber gut, Possessivpronomina werden wohl eh nicht so oft verwendet. (Und meist nicht so, wie man es will. Wenn "ihr" Handtäschchen und "mein" Handtäschchen auf einem Tisch stehen, nützt das Fürwort beim Disambiguisieren nichts, da es in meinem Besitz, also "in player" sein muss, um "meins" und in ihrem Besitz, um "ihres" zu sein.) Was mich stutzig macht, ist, dass die Descriptors Vorrang vor Pronomina haben. Es müsste beim Parsen doch so sein: Wenn ein Pronomen gefunden wird, ist der Käs gegessen und ein Objekt gefunden (oder nicht, wenn sich das Pronomen auf nichts bezieht). Wenn kein Pronomen gefunden wird, kann man sich daran begeben, das komplette Objekt zu parsen. Das sollte auch kein Problem der deutschen Lib sein, denn Englisch hat hier mit 'her'/'her' genau dasselbe Problem. |