FUNKTION:
varargs void AddId(mixed sing, mixed plur);
DEFINIERT IN:
/std/thing/description.c
ARGUMENTE:
sing: String oder Array aus Strings, der/die 'Id' fuer ein
Objekt darstellt, unter der man es 'ansprechen' kann
Wichtig vor allem bei put&get.
plur: String oder Array aus Strings fuer mehrere Objekte
dieser Art (fuer put&get) - Pluralform von 'sing'.
'plur' ist optional.
BESCHREIBUNG:
Objekte brauchen, um damit interagieren zu koennen Identifi-
kationen. Ist die ID "apfel" ist 'nimm apfel' und dergleichen
erst moeglich. Die Pluralform dient dazu, mehrere Aepfel
nehmen zu koennen. Pluralform waere daher "aepfel". Die
Pluralform ist optional. Die IDs werden in P_IDS gespeichert
und sind mittels if(objekt->id( foo )) zu testen. Bitte NIE
direkt auf P_IDS zugreifen.
Die ID kann auch zum Test des Vorhandenseins eines Objektes
in einem Container benutzt werden mit present() oder
deep_present().
BEACHTE:
Objekte koennen auch 'geheime' IDs haben, die nicht benutzbar
sind, aber mittels derer man ein Objekt eineindeutig erkennen
kann. Unsichtbare Objekte sollen zum Beispiel erkannt werden,
die ID aber nicht fuer put&get benutzbar sein. Dann ist ein
'\n' voranzustellen. Beispiel: '\nmein_gift'. In einem solche
Fall sollte ausnahmsweise SetProp(P_IDS, "\nmein_gift"); benutzt
werden, da "std/thing" sonst immer noch die Id 'ding' haben.
Spezial-Id | Wirkung
---------------------------+-----------------------------------------------
"\n_stink_" | Erkennung fuer alle Gerueche
"\nduft" | Erkennung fuer gute Gerueche (Ein Geruchs-
| objekt einer wohlriechenden Blume, sollte also
| ausser einer ihr eigenen Id auch noch
| "\n_stink_" und "\nduft" gesetzt haben.
"\nsperrmonster" | NPC, die nicht vereist werden koennen sollen
"\nmagiekundigen_kleidung" | Ruestung auch fuer Mkler
"\nmagiekundigen_waffe" | Waffe auch fuer Mkler
"\nsm_armour" | Ruestung auch fuer Schwarzmagier
"\nsm_weapon" | Waffe auch fuer Schwarzmagier
"\nfeuerholz" | Feuerholzobjekt
"\nopen_fire" | Feuerspender
"\ntrader" | Haendler in Pub oder Laden
"\nkeine_brille" | NPC, die in der Smaggi keine Brille brauchen
"\nsmaggi_pass" | NPC der ohne Pass in die Smaggistadt rein darf
"\nkein_muell" | Gegenstand wird nicht von Muellschluckern weg-
| geraeumt. Nur wenn unbedingt noetig setzen!
BEISPIEL:
void create() {
...
SetProp(P_NAME, "Apfel");
SetProp(P_PLURAL, "Aepfel");
SetProp(P_LONG, "Ein gelber Apfel");
AddId("apfel","aepfel");
...
}
SIEHE AUCH:
RemoveId(L), P_IDS, id(L), present(E), deep_present(S)
SetFlexedAdjectives(L)
|