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