blob: 71dfd10ba04a17ba4cbdc5c616d17a5a66bd5ab9 [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001RemoveSkillAttributeModifier()
2FUNKTION:
3 public int RemoveSkillAttributeModifier(object caster, string atrname)
4
5DEFINIERT IN:
6 /std/living/skill_attributes.c
7
8ARGUMENTE:
9 <atrname> string
10 Name des Skill-Attributes, von dem der Modifikator geloescht
11 werden soll.
12 (Definiert in /sys/living/skill_attributes.h)
13
14 <caster> object
15 Objekt, dessen Modifikator wieder entfernt werden soll.
16
17BESCHREIBUNG:
18 Entfernt den Modifikator, den Object <caster> gesetzt hat, wieder. Dies
19 ist nur notwendig, wenn der Effekt vor Ablauf der Gueltigkeit des
20 Modifikators aufgehoben werden soll.
21
22RUECKGABEWERT:
23 SA_MOD_REMOVED wenn der Modifikator geloescht wurde
24 SA_MOD_NOT_FOUND wenn der Modifikator nicht gefunden wurde
25 Wenn man nur wissen will, ob die Operation erfolgreich war, empfiehlt es
26 sich, auf == SA_MOD_REMOVED zu pruefen.
27
28BEISPIELE:
29 // eine Waffe setzt im InformWield() einen Bonus auf SA_DAMAGE fuer 10min
30 protected void InformWield(object pl, int silent) {
31 if (objectp(pl)) {
32 if (pl->ModifySkillAttribute(SA_DAMAGE, 20, 600) == SA_MOD_OK)
33 // Erfolgsmeldung an Spieler
34 else
35 // Misserfolgsmeldung an Spieler.
36 }
37 }
38
39 // wenn der Spieler die Waffe vor Ablauf der 600s wegstecken will, muss
40 // der Bonus natuerlich auch wieder raus
41 protected void InformUnwield(object pl, int silent) {
42 if (objectp(pl))
43 pl->RemoveSkillAttributeModifier(this_object(), SA_DAMAGE);
44 // falls kein solcher Mod mehr gesetzt war, liefert RSAM()
45 // SA_MOD_NOT_FOUND zurueck. Auswertung des Rueckgabewertes ist
46 // vernachlaessigt.
47 }
48
49SIEHE AUCH:
50 Skills Lernen: LearnSkill, ModifySkill, LimitAbility
51 * Nutzung: UseSpell, UseSkill
52 * Abfragen: QuerySkill, QuerySkillAbility
53 * Modifikation: ModifySkillAttribute, QuerySkillAttribute,
54 QuerySkillAttributeModifier
55 * Properties: P_SKILL_ATTRIBUTES, P_SKILL_ATTRIBUTE_OFFSETS
56 * sonstig: spruchermuedung, skill_info_liste
57 * Properties: P_NEWSKILLS
58
5913.08.2008, Zesstra