blob: f465b3290220dfa12b6120a9e36eeed27404ac6a [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001P_ATTRIBUTES
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_ATTRIBUTES "attributes"
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 Diese Property enthaelt ein Mapping mit den Attributen des
21 Lebewesens. Die Schluessel kennzeichnen hierbei das jeweilige
22 Attribut. Die verschiedenen Standardattribute findet man in
23 /sys/living/attributes.h, welche derzeit folgende Moeglichkeiten
24 bieten: - A_STR (Kraft)
25 - A_INT (Intelligenz)
26 - A_DEX (Geschick)
27 - A_CON (Konstitution)
28 Sie werden automatisch an verschiedenen Stellen in der MUDLib
29 ausgewertet, zum Beispiel bestimmt A_INT die maximal moeglichen
30 Konzentrationspunkte und A_CON die maximal moeglichen Lebenspunkte.
31
32
33BEMERKUNGEN
34===========
35
36 Keine echte Property, _query_attributes() und _set_attributes() sind
37 in /std/living/attributes.c implementiert.
38
39 Es bietet sich an, zum Erfragen der Attributwerte die Funktion
40 QueryAttribute() zu nutzen, da es auch moegliche Offsets gibt,
41 so beispielsweise ueber die Properties P_ATTRIBUTES_OFFSETS bzw.
42 P_ATTRIBUTES_MODIFIER im Lebewesen selbst, oder auch ueber
43 P_X_ATTR_MOD bzw. P_M_ATTR_MOD in Objekten im Lebewesen.
44 Kurzfristige zeit- oder objektgebundene Attributveraenderungen
45 koennen ueber die Property P_TIMED_ATTR_MOD realisiert werden.
46
47 Es gibt auch zahlreiche andere Dienstfunktionen fuer diesen sehr
48 balancekritischen Bereich, siehe unten.
49
50
51BEISPIEL
52========
53
54 Ein moegliches Ergebnis fuer einen frischen Level 1 Spieler waere:
55 QueryProp(P_ATTRIBUTES);
56 Ergebnis: (["int":1,"con":1,"str":1,"dex":1])
57 Hinzu kommen eventuell moegliche Rassenboni, die mittels
58 P_ATTRIBUTE_OFFSETS realisiert werden, Zwerge sind beispielsweise
59 recht stark:
60 QueryProp(P_ATTRIBUTES_OFFSETS);
61 Ergebnis: (["int":1,"con":1,"str":1,"dex":3])
62 Jetzt bekaeme man (sofern keine weiteren Offsets realisiert sind)
63 mittels QueryAttribute() insgesamt:
64 QueryAttribute(A_DEX);
65 Ergebnis: 4
66
67
68SIEHE AUCH
69==========
70
71 QueryAttribute(), QueryRealAttribute(), QueryAttributeOffset(),
72 SetAttribute(), SetRealAttribute(), UpdateAttributes(),
73 SetTimedAttrModifier(), QueryTimedAttrModifier(),
74 DeleteTimedAttrModifier(),
75 P_ATTRIBUTES_OFFSETS, P_ATTRIBUTES_MODIFIER,P_TIMED_ATTR_MOD,
76 P_X_ATTR_MOD, P_M_ATTR_MOD, /std/living/attributes.c
77
MG Mud User88f12472016-06-24 23:31:02 +020078Last modified: Tue Jul 27 20:00:20 2004 by Muadib