예제 #1
0
파일: Rend.cs 프로젝트: chienhao10/PortAIO
        public static float GetActualDamage(Obj_AI_Base target)
        {
            if (!ObjectManager.Player.Spellbook.GetSpell(SpellSlot.E).IsReady || !target.HasRendBuff())
            {
                return(0f);
            }

            var damage = GetRendDamage(target);

            if (target.Name.Contains("Baron"))
            {
                damage = Player.Instance.HasBuff("barontarget") ? damage * 0.5f : damage;
            }

            else if (target.Name.Contains("Dragon"))
            {
                damage = Player.Instance.HasBuff("s5test_dragonslayerbuff") ? damage * (1 - (.07f * Player.Instance.GetBuffCount("s5test_dragonslayerbuff"))) : damage;
            }

            if (Player.Instance.HasBuff("summonerexhaust"))
            {
                damage = damage * 0.6f;
            }

            if (target.HasBuff("FerociousHowl"))
            {
                damage = damage * 0.7f;
            }

            return(damage - Kalista.getSliderItem(IKalista.Kalista.comboMenu, "eDamageReduction"));
        }
예제 #2
0
        public static bool IsRendKillable(this Obj_AI_Base target)
        {
            if (target == null)
            {
                return(false);
            }

            var baseDamage = Kalista.spells[SpellSlot.E].GetDamage(target);

            if (target is AIHeroClient)
            {
                if (target.HasUndyingBuff() || target.Health < 1 || target.HasBuffOfType(BuffType.SpellShield))
                {
                    return(false);
                }

                if (target.HasBuff("meditate"))
                {
                    baseDamage *= (0.5f - 0.05f * target.Spellbook.GetSpell(SpellSlot.W).Level);
                }
            }

            if (target is Obj_AI_Minion)
            {
                if (target.Name.Contains("Baron") && ObjectManager.Player.HasBuff("barontarget"))
                {
                    baseDamage *= 0.5f;
                }
                //if (target.Name.Contains("Dragon") && ObjectManager.Player.HasBuff("s5test_dragonslayerbuff"))
                //{
                //    baseDamage *= (1f - (0.07f*ObjectManager.Player.GetBuffCount("s5test_dragonslayerbuff")));
                //} HM???
            }

            if (ObjectManager.Player.HasBuff("SummonerExhaustSlow"))
            {
                baseDamage *= 0.55f;
            }


            return((baseDamage - Kalista.getSliderItem(Kalista.miscMenu, "reduceE")) > target.GetHealthWithShield());
        }