示例#1
0
 public static float GetHeal(this AIHeroClient unit, int second)
 {
     if (unit.HasBuff("RegenerationPotion"))
     {
         if (unit.BuffRemainTime("RegenerationPotion") < second)
             return 150 / 15 * unit.BuffRemainTime("RegenerationPotion");
         else
             return 150 / 15 * second;
     }
     else if (unit.HasBuff("ItemMiniRegenPotion"))
     {
         if (unit.BuffRemainTime("ItemMiniRegenPotion") < second)
             return 150 / 15 * unit.BuffRemainTime("ItemMiniRegenPotion");
         else
             return 150 / 15 * second;
     }
     else if (unit.HasBuff("ItemCrystalFlask"))
     {
         if (unit.BuffRemainTime("ItemCrystalFlask") < second)
             return 125 / 12 * unit.BuffRemainTime("ItemCrystalFlask");
         else
             return 125 / 12 * second;
     }
     else if (unit.HasBuff("ItemCrystalFlaskJungle"))
     {
         if (unit.BuffRemainTime("ItemCrystalFlaskJungle") < second)
             return 60 / 8 * unit.BuffRemainTime("ItemCrystalFlaskJungle");
         else
             return 60 / 8 * second;
     }
     else if (unit.HasBuff("ItemDarkCrystalFlask"))
     {
         if (unit.BuffRemainTime("ItemDarkCrystalFlask") < second)
             return 150 / 12 * unit.BuffRemainTime("ItemDarkCrystalFlask");
         else
             return 150 / 12 * second;
     }
     else
         return 0;
 }
示例#2
0
        public static float PassiveDamage(this AIHeroClient target, int second)
        {
            float damagePerSec = (9 + Player.Instance.Level + 0.3f * Player.Instance.FlatPhysicalDamageMod) / 5;

            return Damage.CalculateDamageOnUnit(Player.Instance, target, DamageType.Physical, damagePerSec * target.BuffCount("dariushemo") * target.BuffRemainTime("dariushemo") > second ? second : target.BuffRemainTime("dariushemo"), false, false);
        }
示例#3
0
        public static float GetRemainTime(this Spell spell)
        {
            try
            {
                if (spell.Buff)
                    return spell.BuffRemainTime();

                var remainTime = (spell.EndTime - TickCount);

                return remainTime > 0 ? remainTime : 0f;
            }
            catch (Exception e)
            {
                e.ErrorMessage("REMAIN_TIME", spell.Caster.BaseSkinName);
                return 4444;
            }
        }
示例#4
0
 public static int IgniteDamage(this AIHeroClient target)
 {
     return IgniteDamage(1) * (int)target.BuffRemainTime("SummonerIgnite");
 }