blob: f5ba5133cdbce4f4129a81561663b443e9f566b2 [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001NAME:
2 P_ATTRIBUTES_MODIFIER "attributes_modifier"
3
4DEFINIERT IN:
5 /sys/living/attributes.h
6
7BESCHREIBUNG:
8 In dieser Property werden Attribut-Modifikatoren gespeichert, die
9 laengere Zeit wirksam sein sollen, tlw. auch ueber einen Reboot
10 hinweg.
11 Intern werden die Modifikatoren in einem Mapping der Form
12
13 ([ Setzer-Key : ([ A_xy : Wert, ... ]) , ... ])
14
15 gespeichert. Das Setzen folg hingegen in der Form
16
17 spieler->SetProp(P_ATTRIBUTES_MODIFIER, ([ A_xy : Wert, ... ]));
18 oder
19 spieler->SetProp(P_ATTRIBUTES_MODIFIER, ({ Setzer-Key, ([ ... ]) }));
20
21 Bei der ersten Variante wird hierbei der Filename des setzenden Objektes
22 als Setzer-Key genommen.
23 Es koennen also durchaus von mehreren Objekten Modifier gesetzt werden.
24 Bekannte Modifier sind:
25
26 #death Attribut-Abzug durch Todesfolgen (Mudlib)
27 #drain Statabzug durch NPCs (Paracelsus)
28 #frosch Staerken-Abzug bei Froeschen (Mudlib)
29
30BEMERKUNGEN:
31 Keine echte Property, _query_attributes_modifier() und
32 _set_attributes_modifier() sind in /std/living/attributes.c
33 implementiert
34 - SetProp/QueryProp nutzen!
35 - Wenn ein Modifier nicht mehr gebracht wird, nicht die Attributswerte auf
36 0 setzen, sondern den ganzen Eintrag! also:
37 SetProp(P_ATTRIBUTES_MODIFIER, ([]) );
38 oder: SetProp(P_ATTRIBUTES_MODIFIER, 0 );
39 aber nicht: SetProp(P_ATTRIBUTES_MODIFIER, ([A_STR:0]));
40
41BEISPIELE:
42 // ein Bonus ... 'ende'-fest (muss also per uid gesichert werden)
43 player->SetProp(P_ATTRIBUTES_MODIFIER,
44 ({"g_klerus_segen", ([A_CON:5, A_INT:5])}));
45 ...
46 player->SetProp(P_ATTRIBUTES_MODIFIER, ({"g_klerus_segen", 0}));
47
48SIEHE AUCH:
49 QueryAttribute(), QueryRealAttribute(), QueryAttributeOffset(),
50 SetAttribute(), SetRealAttribute(), UpdateAttributes(),
51 SetTimedAttrModifier(), QueryTimedAttrModifier(),
52 DeleteTimedAttrModifier(),
53 P_ATTRIBUTES, P_ATTRIBUTES_OFFSETS, P_TIMED_ATTR_MOD,
54 P_X_ATTR_MOD, P_M_ATTR_MOD, /std/living/attributes.c
55----------------------------------------------------------------------------
56Last modified: Tue Jul 27 20:00:20 2004 by Muadib