blob: fa7db3fbafef6180c60f55ec286e1486266032a8 [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001
2P_TIMED_ATTR_MOD
3****************
4
5
6NAME
7====
8
9 P_TIMED_ATTR_MOD "timed_attr_mod"
10
11
12DEFINIERT IN
13============
14
15 /sys/living/attributes.h
16
17
18BESCHREIBUNG
19============
20
21 In dieser Property werden Attribut-Modifikatoren gespeichert, die
22 nicht ueber laengere Zeit wirksam sein sollen.
23 Die Wirksamkeit der Modifikatoren kann an Zeit und Objekte
24 gebunden werden.
25
26 Intern werden die Modifikatoren in einer Datenstruktur der Form
27
28 ({
29 ({ Ablaufzeiten }),
30 ([ Key : Ablaufobjekt ]),
31 ([ Key : ([ Mapping mit den Modifikatoren ]);
32 Ablaufzeit ; Ablaufobjekt ; Nachrichtenempfaenger
33 ])
34 })
35
36 gespeichert mit:
37 * Ablaufzeiten: Zeit in Sekunden seit 1. Jan 1970, 0.0:0 GMT
38 * Ablaufobjekte: Objekte, an deren Existenz die Attribut-
39 veraenderungen gebunden sind
40 * Nachrichtenempfaenger:
41 Objekte/Klassen, welche ueber abgelaufene Attributveraenderung
42 durch den Aufruf von "NotifyTimedAttrModExpired" (mit key als
43 Argument) benachrichtigt werden.
44
45 Das Setzen der Werte erfolgt NUR ueber die Methoden SetTimedAttrModifier
46 und DeleteTimedAttrModifier.
47
48 Die Daten zu einem Key koennen ueber QueryTimedAttrModifier abgefragt
49 werden. Die Abfrage mittels QueryProp liefert eine Kopie der gueltigen
50 Datenstruktur, die per Query nicht (siehe Bemerkungen).
51
52 Die Bedingungen fuer die ueber P_TIMED_ATTR_MOD gesetzten
53 Attributveraenderungen werden im Heartbeat in der Funktion
54 attribute_hb ueberprueft. Eine verminderte Funktionalitaet im
55 Falle von Magiern ist somit kein Fehlerfall.
56
57
58BEMERKUNGEN
59===========
60
61 Keine echte Property. Die Methode _query_timed_attr_mod() in
62 /std/living/attributes.c stellt die Daten zusammen.
63
64 ACHTUNG: Bitte nur die bereitgestellten Methoden zur Manipulation
65 benutzen! Setzen als Property hat keinen Effekt.
66
67
68SIEHE AUCH
69==========
70
71 QueryAttribute(), QueryRealAttribute(), QueryAttributeOffset(),
72 SetAttribute(), SetRealAttribute(), UpdateAttributes(),
73 SetTimedAttrModifier(), QueryTimedAttrModifier(),
74 DeleteTimedAttrModifier(),
75 P_ATTRIBUTES, P_ATTRIBUTES_OFFSETS, P_ATTRIBUTES_MODIFIER,
76 P_X_ATTR_MOD, P_M_ATTR_MOD, /std/living/attributes.c
77
78Last modified: Tue Jul 27 20:00:20 2004 by Muadib