MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame^] | 1 | FUNKTION: |
| 2 | |
| 3 | varargs int GetFValueO(string vname, mapping map, object pl) |
| 4 | |
| 5 | |
| 6 | ARGUMENTE: |
| 7 | |
| 8 | vname : name des parameters aus dem spellmapping |
| 9 | map : spellmapping |
| 10 | pl : caster |
| 11 | |
| 12 | |
| 13 | BESCHREIBUNG: |
| 14 | |
| 15 | 'Berechnet' den Wert, den Factor und den Offset des Parameters |
| 16 | in spellmapping. |
| 17 | |
| 18 | |
| 19 | RUECKGABEWERT: |
| 20 | |
| 21 | Berechneter (Wert*Factor)/100+Offset aus dem Spellmapping. |
| 22 | |
| 23 | |
| 24 | BEMERKUNGEN: |
| 25 | |
| 26 | Ruft (GetValue(vname,map,pl)*GetFactor(vname,map,pl))/100+ |
| 27 | GetOffset(vname,map,pl) auf. |
| 28 | |
| 29 | |
| 30 | BEISPIEL: |
| 31 | |
| 32 | AddSpell("egal",10, |
| 33 | ([ |
| 34 | OFFSET(SI_COST):([SM_RACE:(["Zwerg":4]) ]), |
| 35 | FACTOR(SI_COST):([SM_RACE:(["Mensch":90]) ]), |
| 36 | SI_SKILLDAMAGE:100, |
| 37 | OFFSET(SI_SKILLDAMAGE):25, |
| 38 | SI_SKILLDAMAGE_TYPE:DT_EXAMPLE, |
| 39 | FACTOR(SI_SKILLDAMAGE):([SM_RACE:(["Zwerg":80,"Elf":120]) ]) |
| 40 | ])); |
| 41 | |
| 42 | So, was sollen uns diese Zeilen sagen? |
| 43 | |
| 44 | Es wird ein Spruch Names 'egal' ins Spellbook eingetragen. Er kostet |
| 45 | regulaer 10 MP. Fuer Zwerge allerdings wird ein Offset von 4 MP |
| 46 | aufgeschlagen. Ausserdem machen Zwerge nur 80% Schaden, Elfen |
| 47 | hingegen 120%. Der Grundschaden betraegt 100 Schadenspunkte, der |
| 48 | Offset des Schadens nochmal 25. Menschen bezahlen fuer diesen |
| 49 | Spruch nur 90% der Kosten. |
| 50 | |
| 51 | Nun die Rechenbeispiele: |
| 52 | |
| 53 | Fuer die Kosten: |
| 54 | Value ValueO FValue FValueO |
| 55 | Mensch 10 10 9 9 |
| 56 | Elf 10 10 10 10 |
| 57 | Hobbit 10 10 10 10 |
| 58 | Zwerg 10 14 10 14 |
| 59 | |
| 60 | Fuer den Schaden: |
| 61 | Value ValueO FValue FValueO |
| 62 | Mensch 100 125 100 125 |
| 63 | Elf 100 125 120 150 |
| 64 | Hobbit 100 125 100 125 |
| 65 | Zwerg 100 125 80 100 |
| 66 | |
| 67 | An diesem Beispiel sieht man deutlich, wie man mit ein paar |
| 68 | Offsets und Faktoren die Wirkung eines Spruches deutlich |
| 69 | veraendern kann. Es sollte bei eigenen Berechnungen immer |
| 70 | GetFValueO benutzt werden. |
| 71 | |
| 72 | Siehe auch: |
| 73 | |
| 74 | "GetValue", "GetFactor", "GetOffset", "GetFValue", "GetValueO" |