id() ==== FUNKTION -------- :: varargs int id(string str, int lvl); DEFINIERT IN ------------ :: /std/thing/description.c /std/player/base.c ARGUMENTE --------- :: string str String, auf den getestet werden soll. int lvl In /std/player/base.c benutzt. Wenn der Spieler unsichtbar ist und lvl kleiner ist als sein Level, wird 0 zurueckgegeben. BESCHREIBUNG ------------ :: Es wird geprueft, ob sich das Objekt mit str ansprechen laesst. Dazu wird str mit dem Inhalt der Property P_IDS verglichen. Falls P_ADJECTIVES gesetzt ist, werden auch alle Adjektivkombinationen mit den Bezeichnern geprueft. Besondere Bedeutung hat diese Funktion bei Mengenobjekten: Anhand von str wird vermerkt, welche Menge des Objektes angesprochen wird. Es werden dabei mehrere Faelle unterschieden: o str ist einer der mit AddId() angegebener Bezeichner. In diesem Fall ist die angesprochene Menge die Gesamtmenge. o str ist einer der mit AddSingularId() angegebenen Bezeichner. Die angesprochene Menge ist in diesem Fall 1. o str ist einer der mit AddPluralId() angegebenen Bezeichner. Die angesprochene Menge ist in diesem Fall . die Gesamtmenge. o Hat str die Form " ", wobei =1 und eine SingularId oder 1 < <= der Gesamtmenge und eine PluralId, so ist die angesprochene Menge = . Wie gesagt, gilt dies einzig und allein bei Mengenobjekten! RUeCKGABEWERT ------------- :: 1, wenn sich das Objekt von str angesprochen fuehlt, ansonsten 0. BEISPIELE --------- :: Angenommen, ein Objekt habe folgende Bezeichner: AddId( "murmel" ); AddAdjective( "runde" ); Dann liefern die angegebenen id()-Aufrufe folgende Ergebnisse: id( "murmel" ); => 1 id( "runde murmel" ); => 1 id( "kleine murmel" ); => 0 id( "runder ball" ); => 0 id( "runde murmel 2" ); => 1, wenn dies die zweite Murmel in der gleichen Umgebung ist, ansonsten 0 Bei einem Haufen von 100 Muenzen haette man zB.: AddId( "geld" ); AddSingularId( "muenze" ); AddPluralId( "muenzen" ); Nach fuehlen sich nach den folgenden id()-Aufrufen folgende Anzahlen angesprochen: id( "geld" ); => 100 Muenzen id( "muenze" ); => 1 Muenze id( "muenzen" ); => 100 Muenzen id( "1 muenze" ); => 1 Muenze id( "42 muenzen" ); => 42 Muenzen id() liefert in all diesen Faellen 1 zurueck. SIEHE AUCH ---------- :: AddId(), AddAdjective(), AddSingularId(), AddPluralId(), present(), match_ids(), /std/thing/description.c, /std/unit.c 6. Sep 2012 Gloinson