blob: da7cad46c2e8f7024ed399fc78369a864f5454b7 [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001P_M_ATTR_MOD
2************
MG Mud User88f12472016-06-24 23:31:02 +02003
MG Mud User88f12472016-06-24 23:31:02 +02004
Zesstra953f9972017-02-18 15:37:36 +01005NAME
6====
MG Mud User88f12472016-06-24 23:31:02 +02007
Zesstra953f9972017-02-18 15:37:36 +01008 P_M_ATTR_MOD "magic_attributes_modifier"
MG Mud User88f12472016-06-24 23:31:02 +02009
MG Mud User88f12472016-06-24 23:31:02 +020010
Zesstra953f9972017-02-18 15:37:36 +010011DEFINIERT IN
12============
MG Mud User88f12472016-06-24 23:31:02 +020013
Zesstra953f9972017-02-18 15:37:36 +010014 /sys/living/attributes.h
MG Mud User88f12472016-06-24 23:31:02 +020015
Zesstra953f9972017-02-18 15:37:36 +010016
17BESCHREIBUNG
18============
19
20 Mapping, das die Attribute des Spielers veraendert, der diese Ruestung
21 bzw. Waffe traegt bzw. benutzt.
22
23 Zu beachten:
24 P_M_ATTR_MOD kann problemlos durch ein SetProp() gesetzt werden. Es wird
25 nur dann beruecksichtigt, wenn die Ruestung/Waffe getragen/benutzt wird.
26 Beim Tragen/Ausziehen/Zuecken/Wegstecken wird im Spieler automatisch
27 UpdateAttributes() aufgerufen.
28
29 Fuer Krankheiten etc. oder Objekte, deren *Besitz* allein schon die
30 Attribute veraendern sollen, verwendet man besser P_X_ATTR_MOD.
31
32 P_X_ATTR_MOD und P_M_ATTR_MOD duerfen einen gemeinsamen kumulierten
33 positiven Grenzwert nicht ueberschreiten. Dieser Grenzwert,
34 CUMULATIVE_ATTR_LIMIT, ist in /sys/living/attributes.h definiert.
35
36
37BEMERKUNGEN
38===========
39
40 Die Werte sollten moeglichst nicht dynamisch geaendert werden.
41 Wenn doch, muss mit TestLimitViolation() am Spieler auf Validitaet
42 geprueft und ggf. mit UpdateAttributes() an ihm upgedatet werden.
43
44
45BEISPIELE
46=========
47
48 // Dem Spieler, der das Objekt benutzt, wird 2 von A_INT abgezogen und
49 // dafuer 1 auf A_STR aufaddiert.
50 SetProp(P_M_ATTR_MOD, ([A_INT:-2, A_STR:1]) );
51
52
53SIEHE AUCH
54==========
55
56 QueryAttribute(), QueryRealAttribute(), QueryAttributeOffset(),
57 SetAttribute(), SetRealAttribute(), UpdateAttributes(),
58 SetTimedAttrModifier(), QueryTimedAttrModifier(),
59 DeleteTimedAttrModifier(),
60 P_X_HEALTH_MOD, P_M_HEALTH_MOD, P_ATTRIBUTES, P_ATTRIBUTES_OFFSETS,
61 P_TIMED_ATTR_MOD, P_X_ATTR_MOD, P_M_ATTR_MOD, /std/living/attributes.c
MG Mud User88f12472016-06-24 23:31:02 +020062
6302.02.2016, Gloinson