QueryPossPronoun()

FUNKTION:
     varargs string QueryPossPronoun(mixed what, int casus, int anzahl);

DEFINIERT IN:
     /std/thing/language.c

ARGUMENTE:
     what
          Geschlecht des Objektes, das besessen wird, oder das Objekt
          selbst.

     casus
          Der Fall, in dem das Objekt besessen wird.

     anzahl
          Handelt es sich um nur ein Objekt oder um mehrere?

BESCHREIBUNG:
     Diese Funktion gibt ein Possessivpronomen zurueck, das das
     Besitzverhaeltnis eines Objektes zu diesem Objekt anzeigt.

RUeCKGABEWERT:
     Das Possessivpronomen im entsprechenden Fall.

BEMERKUNGEN:
     what und casus beziehen sich auf das Objekt, welches besessen wird, und
     nicht auf den Besitzer!!!

BEISPIELE:
     Um eine korrekte Ausgabe beim Haendeklatschen zu erreichen, koennte man
     zB. folgende Zeile verwenden:

      printf("%s klatscht in %s Haende.\n",this_player()->name(WER),
           this_player()->QueryPossPronoun(FEMALE, WEN, PLURAL));

     FEMALE, da "die Hand" weiblich ist, WEN, da man im Akkusativ klatscht,
     und PLURAL, da man dazu beide Haende braucht.

     Ein beliebter Fehler ist es, als Fall WESSEN zu verwenden (in WESSEN
     Haende klatscht man? => in seine).
     Die richtige Frage waere aber: WEN klatscht man? (in die Haende)

SIEHE AUCH:
     QueryOwn(), QueryPronoun(), /std/thing/language.c
----------------------------------------------------------------------------
Last modified: Wed Jan 11 13:13:35 CET 2006 by Rumata
