Lpc Manpages

NAME:
    P_ATTRIBUTES_MODIFIER         "attributes_modifier"

DEFINIERT IN:
    /sys/living/attributes.h

BESCHREIBUNG:
    In dieser Property werden Attribut-Modifikatoren gespeichert, die laengere
    Zeit wirksam sein sollen, also auch ueber einen Reboot hinweg!
    Intern werden die Modifikatoren in einem Mapping der Form

        ([ Setzer-Key : ([ A_xy : Wert, ... ]) , ... ])

    gespeichert. Das Setzen folg hingegen in der Form

        spieler->SetProp(P_ATTRIBUTES_MODIFIER, ([ A_xy : Wert, ... ]));
    oder
        spieler->SetProp(P_ATTRIBUTES_MODIFIER, ({ Setzer-Key, ([ ... ]) }));

    Bei der ersten Variante wird hierbei der Filename des setzenden Objektes
    als Setzer-Key genommen.
    Es koennen also durchaus von mehreren Objekten Modifier gesetzt werden.
    Bekannte Modifier sind z.B.:

        #drain      Statabzug durch NPCs
        #frosch     Staerken-Abzug bei Froeschen

BEMERKUNGEN:
    Keine echte Property, _query_attributes_modifier() und
    _set_attributes_modifier() sind in /std/living/attributes.c implementiert.

    - SetProp/QueryProp nutzen!

    - Wenn ein Modifier nicht mehr gebraucht wird, nicht die Attributswerte
      auf 0 setzen, sondern den ganzen Eintrag!
      Also:
       SetProp(P_ATTRIBUTES_MODIFIER, ([]) );
      oder:
       SetProp(P_ATTRIBUTES_MODIFIER, 0 ); 

      aber NICHT: SetProp(P_ATTRIBUTES_MODIFIER, ([A_STR:0]));


BEISPIELE:
    // Ein CON-Bonus, 'ende'-fest (muss also per uid gesichert werden):
    player->SetProp(P_ATTRIBUTES_MODIFIER,
                    ({"gilde_feen_ausdauer", ([ A_CON:5 ])}));
     ...
    player->SetProp(P_ATTRIBUTES_MODIFIER, ({"gilde_feen_ausdauer", 0}));


SIEHE AUCH:
    Attributsbasis  : P_ATTRIBUTES, QueryAttribute, SetAttribute,
                      QueryRealAttribute, SetRealAttribute

    Attributsboni   : P_ATTRIBUTES_OFFSETS, QueryAttributeOffset

    temporaere
     Attribute      : SetTimedAttrModifier, QueryTimedAttrModifier,
                      DeleteTimedAttrModifier, NotifyTimedAttrModExpired

    objektgebundene
     Attributs-Mod. : P_M_ATTR_MOD, P_X_ATTR_MOD

    objektgebundene
     LP/MP-Modifier : P_M_HEALTH_MOD, P_X_HEALTH_MOD

    Intern          : P_TIMED_ATTR_MOD, UpdateAttributes

----------------------------------------------------------------------------
01.12.17, Torin