GetFValueO()¶
FUNKTION¶
varargs int GetFValueO(string vname, mapping map, object pl)
ARGUMENTE¶
vname : name des parameters aus dem spellmapping
map : spellmapping
pl : caster
BESCHREIBUNG¶
'Berechnet' den Wert, den Factor und den Offset des Parameters
in spellmapping.
RUECKGABEWERT¶
Berechneter (Wert*Factor)/100+Offset aus dem Spellmapping.
BEMERKUNGEN¶
Ruft (GetValue(vname,map,pl)*GetFactor(vname,map,pl))/100+
GetOffset(vname,map,pl) auf.
BEISPIEL¶
AddSpell("egal",10,
([
OFFSET(SI_COST):([SM_RACE:(["Zwerg":4]) ]),
FACTOR(SI_COST):([SM_RACE:(["Mensch":90]) ]),
SI_SKILLDAMAGE:100,
OFFSET(SI_SKILLDAMAGE):25,
SI_SKILLDAMAGE_TYPE:DT_EXAMPLE,
FACTOR(SI_SKILLDAMAGE):([SM_RACE:(["Zwerg":80,"Elf":120]) ])
]));
So, was sollen uns diese Zeilen sagen?
Es wird ein Spruch Names 'egal' ins Spellbook eingetragen. Er kostet
regulaer 10 MP. Fuer Zwerge allerdings wird ein Offset von 4 MP
aufgeschlagen. Ausserdem machen Zwerge nur 80% Schaden, Elfen
hingegen 120%. Der Grundschaden betraegt 100 Schadenspunkte, der
Offset des Schadens nochmal 25. Menschen bezahlen fuer diesen
Spruch nur 90% der Kosten.
Nun die Rechenbeispiele:
Fuer die Kosten:
Value ValueO FValue FValueO
Mensch 10 10 9 9
Elf 10 10 10 10
Hobbit 10 10 10 10
Zwerg 10 14 10 14
Fuer den Schaden:
Value ValueO FValue FValueO
Mensch 100 125 100 125
Elf 100 125 120 150
Hobbit 100 125 100 125
Zwerg 100 125 80 100
An diesem Beispiel sieht man deutlich, wie man mit ein paar
Offsets und Faktoren die Wirkung eines Spruches deutlich
veraendern kann. Es sollte bei eigenen Berechnungen immer
GetFValueO benutzt werden.
Siehe auch:
“GetValue”, “GetFactor”, “GetOffset”, “GetFValue”, “GetValueO”