blob: 226c12832a72ba830527d27f24ce1c26e39f2f0a [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001GetFValueO()
2************
MG Mud User88f12472016-06-24 23:31:02 +02003
4
Zesstra953f9972017-02-18 15:37:36 +01005FUNKTION
6========
MG Mud User88f12472016-06-24 23:31:02 +02007
Zesstra953f9972017-02-18 15:37:36 +01008 varargs int GetFValueO(string vname, mapping map, object pl)
MG Mud User88f12472016-06-24 23:31:02 +02009
10
Zesstra953f9972017-02-18 15:37:36 +010011ARGUMENTE
12=========
MG Mud User88f12472016-06-24 23:31:02 +020013
Zesstra953f9972017-02-18 15:37:36 +010014 vname : name des parameters aus dem spellmapping
15 map : spellmapping
16 pl : caster
MG Mud User88f12472016-06-24 23:31:02 +020017
18
Zesstra953f9972017-02-18 15:37:36 +010019BESCHREIBUNG
20============
MG Mud User88f12472016-06-24 23:31:02 +020021
Zesstra953f9972017-02-18 15:37:36 +010022 'Berechnet' den Wert, den Factor und den Offset des Parameters
23 in spellmapping.
MG Mud User88f12472016-06-24 23:31:02 +020024
25
Zesstra953f9972017-02-18 15:37:36 +010026RUECKGABEWERT
27=============
MG Mud User88f12472016-06-24 23:31:02 +020028
Zesstra953f9972017-02-18 15:37:36 +010029 Berechneter (Wert*Factor)/100+Offset aus dem Spellmapping.
MG Mud User88f12472016-06-24 23:31:02 +020030
31
Zesstra953f9972017-02-18 15:37:36 +010032BEMERKUNGEN
33===========
MG Mud User88f12472016-06-24 23:31:02 +020034
Zesstra953f9972017-02-18 15:37:36 +010035 Ruft (GetValue(vname,map,pl)*GetFactor(vname,map,pl))/100+
36 GetOffset(vname,map,pl) auf.
MG Mud User88f12472016-06-24 23:31:02 +020037
MG Mud User88f12472016-06-24 23:31:02 +020038
Zesstra953f9972017-02-18 15:37:36 +010039BEISPIEL
40========
MG Mud User88f12472016-06-24 23:31:02 +020041
Zesstra953f9972017-02-18 15:37:36 +010042 AddSpell("egal",10,
43 ([
44 OFFSET(SI_COST):([SM_RACE:(["Zwerg":4]) ]),
45 FACTOR(SI_COST):([SM_RACE:(["Mensch":90]) ]),
46 SI_SKILLDAMAGE:100,
47 OFFSET(SI_SKILLDAMAGE):25,
48 SI_SKILLDAMAGE_TYPE:DT_EXAMPLE,
49 FACTOR(SI_SKILLDAMAGE):([SM_RACE:(["Zwerg":80,"Elf":120]) ])
50 ]));
MG Mud User88f12472016-06-24 23:31:02 +020051
Zesstra953f9972017-02-18 15:37:36 +010052 So, was sollen uns diese Zeilen sagen?
MG Mud User88f12472016-06-24 23:31:02 +020053
Zesstra953f9972017-02-18 15:37:36 +010054 Es wird ein Spruch Names 'egal' ins Spellbook eingetragen. Er kostet
55 regulaer 10 MP. Fuer Zwerge allerdings wird ein Offset von 4 MP
56 aufgeschlagen. Ausserdem machen Zwerge nur 80% Schaden, Elfen
57 hingegen 120%. Der Grundschaden betraegt 100 Schadenspunkte, der
58 Offset des Schadens nochmal 25. Menschen bezahlen fuer diesen
59 Spruch nur 90% der Kosten.
MG Mud User88f12472016-06-24 23:31:02 +020060
Zesstra953f9972017-02-18 15:37:36 +010061 Nun die Rechenbeispiele:
62
63 Fuer die Kosten:
64 Value ValueO FValue FValueO
65 Mensch 10 10 9 9
66 Elf 10 10 10 10
67 Hobbit 10 10 10 10
68 Zwerg 10 14 10 14
69
70 Fuer den Schaden:
71 Value ValueO FValue FValueO
72 Mensch 100 125 100 125
73 Elf 100 125 120 150
74 Hobbit 100 125 100 125
75 Zwerg 100 125 80 100
76
77 An diesem Beispiel sieht man deutlich, wie man mit ein paar
78 Offsets und Faktoren die Wirkung eines Spruches deutlich
79 veraendern kann. Es sollte bei eigenen Berechnungen immer
80 GetFValueO benutzt werden.
MG Mud User88f12472016-06-24 23:31:02 +020081
82Siehe auch:
83
Zesstra953f9972017-02-18 15:37:36 +010084 "GetValue", "GetFactor", "GetOffset", "GetFValue", "GetValueO"