MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame^] | 1 | AddResistanceModifier() |
| 2 | |
| 3 | FUNKTION: |
| 4 | varargs int AddResistanceModifier(mapping mod, string add) |
| 5 | |
| 6 | DEFINIERT IN: |
| 7 | /std/living/combat.c |
| 8 | |
| 9 | ARGUMENTE: |
| 10 | mapping mod: |
| 11 | Mapping mit Schadensarten und ihrem Resistenzmodifikator (der im Bereich |
| 12 | von -1.0 bis +x liegen kann), z.B. ([DT_FIRE:-1.0]) (Totalresistenz). |
| 13 | string add: |
| 14 | Ein Identifikator fuer _diesen_ Eintrag des setzenden Objektes. |
| 15 | |
| 16 | BESCHREIBUNG: |
| 17 | Es werden Resistenzen in dem Objekt gesetzt, die solange bestehen, wie |
| 18 | das setzende Objekt existiert, oder nicht RemoveResistanceModifier |
| 19 | (mit eventuellem Schluessel add) aufgerufen wird. Zusaetzliche Resistenzen |
| 20 | werden eingerechnet. |
| 21 | |
| 22 | BEMERKUNGEN: |
| 23 | Fuer Ruestungen kann und sollte man P_RESISTANCE_STRENGTHS verwenden. |
| 24 | |
| 25 | BEISPIELE: |
| 26 | // Oel mit vervierfachtem Feuerschaden |
| 27 | int add_action() { |
| 28 | ... |
| 29 | write(break_string("Du schuettest das Oel ueber "+ |
| 30 | npc->name(WEN)+".",78)); |
| 31 | ... |
| 32 | npc->AddResistanceModifier(([DT_FIRE:3.0]), "oel"); |
| 33 | SetProp(P_INVIS,1); |
| 34 | SetProp(P_EXTRA_LOOK, "Ueberall tropft Oel herunter.\n"); |
| 35 | move(npc,M_NOCHECK); |
| 36 | ... |
| 37 | } |
| 38 | |
| 39 | RUeCKGABEWERT: |
| 40 | 1 fuer Erfolg |
| 41 | |
| 42 | SIEHE AUCH: |
| 43 | Modifikatoren: RemoveResistanceModifier(), P_RESISTANCE_MODIFIER |
| 44 | simple Resistenz: P_RESISTANCE, P_VULNERABILITY |
| 45 | Hauptmapping: P_RESISTANCE_STRENGTHS |
| 46 | Berechnung: CheckResistance(), UpdateResistanceStrengths() |
| 47 | anderes: balance, /std/armour/combat.c, /std/living/combat.c |
| 48 | |
| 49 | 29.Apr 2002, Gloinson@MG |