Esempio n. 1
0
 public Mods(string _toon)
 {
     toon          = _toon;
     std           = new Buffables();
     buffs         = new Buffables();
     adj           = new Buffables();
     stdDervs      = new Derivatives();
     adjDervs      = new Derivatives();
     delta         = new Derivatives();
     magicDict     = null;
     manaDict      = null;
     runemagicDict = null;
     oneuseDict    = null;
     hitlocDict    = null;
     miscMods      = new Dictionary <string, string>();
 }
Esempio n. 2
0
        public void UpdateDerivatives(Derivatives derv)
        {
            derv.Communication    = ROUND(INT - 10 + MINOR(POW) + MINOR(APP));
            derv.Agility          = ROUND(DEX - SIZ + MINOR(STR));
            derv.Manipulation     = ROUND(DEX + INT + MINOR(STR) - 20);
            derv.Stealth          = DEX + 10 - SIZ - POW;
            derv.Knowledge        = INT - 10;
            derv.Alchemy          = INT + POW + DEX - 40;
            derv.Perception       = ROUND(INT - 10 + MINOR(POW) + MINOR(CON));
            derv.Magic            = ROUND(POW + INT + MINOR(DEX) - 20);
            derv.Attack           = derv.Manipulation;
            derv.Parry            = derv.Agility;
            derv.Life             = (SIZ + CON + 1) / 2;
            derv.Mysticism        = ROUND(POW / 6.0) + 20 - INT;
            derv.AnySchoolCasting = INT + ROUND((derv.Mysticism + derv.Magic) / 2);
            derv.Endurance        = STR + CON; // note some people get SIZ/6 but that's an orlanthi thing, ignoring it for buff purposes
            derv.DexSRM           = Math.Max(0, SRM + (DEX < 10 ? 4 : DEX < 16 ? 3 : DEX < 20 ? 2 : 1));

            derv.Damage       = DamageBonus(1);
            derv.DoubleDamage = DamageBonus(2);
        }