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