blob: 1fdc261960631a6cbf34fbb0e33398a5f4a491d1 [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001
2P_NAME
3******
4
5
6NAME
7====
8
9 P_NAME "name"
10
11
12DEFINIERT IN
13============
14
15 <thing/description.h>
16
17
18BESCHREIBUNG
19============
20
21 In dieser Property wird der Name eines Objektes vermerkt. Wenn der Name
22 regelmaessig dekliniert wird, reicht ein einfacher String. Wird der
23 Name unregelmaessig dekliniert, so kann man ein Array von vier Strings
24 mit dem Namen im Nominativ, Genitiv, Dativ und Akkusativ (in dieser
25 Reihenfolge) angeben.
26
27 Die Funktion name() behandelt recht viele Sonderfaelle; man sollte den
28 Namen also erst einmal in der Form eines einzelnen Strings pruefen.
29
30 Eine Sonderrolle nehmen Unit-Objekte ein: Hier kann man einen Namen
31 fuer den Singular und einen Namen fuer den Plural vergeben.
32
33 Setzt man P_NAME eines Unit-Objekts auf einen einfachen String, so wird
34 dieser als Name sowohl im Singular als auch im Plural verwendet.
35
36 Uebergibt man ein Array von Strings, so wird der erste Eintrag fuer den
37 Singular und der zweite Eintrag fuer den Plural benutzt.
38
39 Bei Unit-Objekten ist es nicht moeglich, auch noch zwischen den
40 verschiedenen Faellen zu unterscheiden.
41
42
43BEMERKUNGEN
44===========
45
46 Diese Property sollte nur den reinen Namen enthalten; will man dem
47 Namen noch Adjektive voranstellen, so sollte man dies mit P_NAME_ADJ
48 bewerkstelligen, also statt
49
50 SetProp(P_NAME, ({ "alter Hut", "alten Huts",
51 "alten Hut", "alten Hut" }) );
52
53 besser
54
55 SetProp(P_NAME, "Hut");
56 SetProp(P_NAME_ADJ, "alt");
57
58 Bei Lebewesen wird lower_case(P_NAME) (bei Arrays das erste Element
59 daraus) automatisch als LivingName gesetzt.
60
61
62BEISPIELE
63=========
64
65 Ein regelmaessig deklinierbarer Name:
66
67 SetProp(P_NAME, "Arkshat");
68
69 Hier ein Beispiel fuer einen unregelmaessig deklinierbaren Namen:
70
71 SetProp(P_NAME, ({ "Drache", "Drachen", "Drachen", "Drachen" }));
72
73 Und schliesslich der Name eines allseits bekannten Unit-Objektes:
74
75 SetProp(P_NAME, ({ "Muenze", "Muenzen" }));
76
77
78SIEHE AUCH
79==========
80
81 /std/thing/description.c, name(), P_NAME_ADJ, set_living_name(),
82 find_living(), find_livings()
83
84Last modified: 19. Okt. 2015, Arathorn.