예제 #1
0
        public override void Calculate(StatFunctionEnvironment statFuncEnv)
        {
            double intb = Formulas.IntBonus[statFuncEnv.Character.CharacterStat.Int];
            double lvlb = statFuncEnv.Character.GetLevelMod();

            statFuncEnv.MulValue((lvlb * lvlb) * (intb * intb));
        }
예제 #2
0
        public override void Calculate(StatFunctionEnvironment statFuncEnv)
        {
            if (statFuncEnv.Character is L2Player player)
            {
                if (player.Inventory.GetPaperdollItem(PaperdollHead) != null)
                {
                    statFuncEnv.SubValue(12);
                }
                if (player.Inventory.GetPaperdollItem(PaperdollChest) != null)
                {
                    statFuncEnv.SubValue(31);
                }
                if (player.Inventory.GetPaperdollItem(PaperdollLegs) != null)
                {
                    statFuncEnv.SubValue(18);
                }
                if (player.Inventory.GetPaperdollItem(PaperdollGloves) != null)
                {
                    statFuncEnv.SubValue(8);
                }
                if (player.Inventory.GetPaperdollItem(PaperdollFeet) != null)
                {
                    statFuncEnv.SubValue(7);
                }
            }

            statFuncEnv.MulValue(statFuncEnv.Character.GetLevelMod());
        }
예제 #3
0
        public override void Calculate(StatFunctionEnvironment statFuncEnv)
        {
            if (statFuncEnv.Character is L2Player player)
            {
                if (player.Inventory.GetPaperdollItem(PaperdollLfinger) != null)
                {
                    statFuncEnv.SubValue(5);
                }
                if (player.Inventory.GetPaperdollItem(PaperdollRfinger) != null)
                {
                    statFuncEnv.SubValue(5);
                }
                if (player.Inventory.GetPaperdollItem(PaperdollLear) != null)
                {
                    statFuncEnv.SubValue(9);
                }
                if (player.Inventory.GetPaperdollItem(PaperdollRear) != null)
                {
                    statFuncEnv.SubValue(9);
                }
                if (player.Inventory.GetPaperdollItem(PaperdollNeck) != null)
                {
                    statFuncEnv.SubValue(13);
                }
            }

            statFuncEnv.MulValue(Formulas.MenBonus[statFuncEnv.Character.CharacterStat.Men] * statFuncEnv.Character.GetLevelMod());
        }
예제 #4
0
 public override void Calculate(StatFunctionEnvironment statFuncEnv)
 {
     if (statFuncEnv.Character is L2Player player)
     {
         if (player.ActiveWeapon != null)
         {
             statFuncEnv.MulValue(Formulas.WitBonus[player.CharacterStat.Wit]);
         }
     }
     else
     {
         statFuncEnv.MulValue(Formulas.WitBonus[statFuncEnv.Character.CharacterStat.Wit]);
     }
 }
예제 #5
0
 public override void Calculate(StatFunctionEnvironment statFuncEnv)
 {
     statFuncEnv.MulValue(Formulas.DexBonus[statFuncEnv.Character.CharacterStat.Dex]);
 }
예제 #6
0
 public override void Calculate(StatFunctionEnvironment statFuncEnv)
 {
     statFuncEnv.MulValue(Formulas.StrBonus[statFuncEnv.Character.CharacterStat.Str] * statFuncEnv.Character.GetLevelMod());
 }
예제 #7
0
 public override void Calculate(StatFunctionEnvironment statFuncEnv)
 {
     statFuncEnv.AddValue(Formulas.BaseEvasionAccuracy[statFuncEnv.Character.CharacterStat.Dex] + statFuncEnv.Character.Level);
 }