Dokumentation zu: SetFlexedAdjectives(L)

HR Image


FUNKTION:
     void SetFlexedAdjectives(mixed adj);

DEFINIERT IN:
     /std/thing/description.c

ARGUMENTE:
     adj  String oder Array aus Strings mit den Adjektiven oder Null

BESCHREIBUNG:
     Durch die Verwendung von Adjektiven lassen sich interessantere,
     individuellere Objekte schaffen. Ein 'dicker Gnom' neben einem
     'duerren ausgemergelten Gnom' machen das Spiel interessanter
     als zwei identischen Gnome nebeneinander.

     Mit dieser Funktion weist man dem Objekt ein oder mehrere Adjektive
     zu. Das Objekt liefert dann bei name() eine entsprechende Beschreibung
     und ist auch vom Spieler (also als id()) so ansprechbar.
     Intern werden dazu die Eigenschaften P_ADJECTIVES und P_NAME_ADJ
     gesetzt.

     Das oder die Adjektive muessen in der Grundform angegeben werden.
     Wenn ein unveraenderliches Adjektiv gesetzt werden soll, so ist dies
     durch ein '*' zu kennzeichnen. Ansonsten werden die regelmaessigen
     Beugeregeln verwendet (siehe Beispiel).

     Die gebeugt gesetzten P_ADJECTIVES werden fuer alle Geschlechter
     und sowohl fuer Singular als auch Plural gesetzt. Dies ermoeglicht es,
     das Geschlecht (oder die Anzahl) spaeter zu veraendern, sei es durch
     eine Spieleraktion oder einfach dadurch, dass es spaeter im create()
     erfolgt.

     Die Reihenfolge der Adjektive bei der Ausgabe von name() entspricht
     derjenigen, mit der sie hier angegeben werden.

     Achtung, die Funktion setzt die Adjektive auf die angegebenen; es werden
     also alle vorher spezifizierten geloescht.

BEISPIELE:

       AddId( ({ "zettel", "blatt" }) );
       SetFlexedAdjectives( "klein" );

     Das Objekt reagiert jetzt auf "zettel", "kleinen zettel", "blatt",
     "kleines blatt" sowie auf die (sprachlich nicht ganz so korrekten)
     Konstruktionen "kleines zettel", "kleinen blatt", "kleines kleinen
     zettel", ...

       SetFlexedAdjectives( ({ "*prima", "eitel" }) );

     Das Adjektiv 'prima' wird niemals gebeugt, muss also mit einem '*'
     versehen werden. Das Adjektiv 'eitel' wird beim Beugen leicht
     veraendert. Heraus kommt: "Ein prima eitles Ding."

       SetFlexedAdjectives( 0 );

     Dieser Aufruf loescht alle Adjektive aus P_ADJECTIVES und P_NAME_ADJ.

SIEHE AUCH:
     AddId(L), AddAdjective(L), id(L), present(E), present_plural(S)


Start » Magierhandbuch » Docu » Lfun » SetFlexedAdjectives Letzte Generierung: 25.04.2021, 01:58
Email an: mud@wl.mud.de
Valid HTML 4.01!