Example #1
0
        private static float GetComboDamage(Obj_AI_Hero target)
        {
            double Damage = 0;

            if (Q.IsReady())
            {
                Damage += Me.GetSpellDamage(target, SpellSlot.Q);
            }

            if (W.IsReady())
            {
                Damage += Me.GetSpellDamage(target, SpellSlot.W);
            }

            if (E.IsReady())
            {
                Damage += Me.GetSpellDamage(target, SpellSlot.E);
            }

            if (R.IsReady())
            {
                Damage += Me.GetSpellDamage(target, SpellSlot.R);
            }

            if (Ignite.IsReady())
            {
                Damage += Me.GetSummonerSpellDamage(target, LeagueSharp.Common.Damage.SummonerSpell.Ignite);
            }

            if (target.HasBuff("KindredRNoDeathBuff"))
            {
                return(0);
            }

            if (target.HasBuff("UndyingRage") && target.GetBuff("UndyingRage").EndTime - Game.Time > 0.3)
            {
                return(0);
            }

            if (target.HasBuff("JudicatorIntervention"))
            {
                return(0);
            }

            if (target.HasBuff("ChronoShift") && target.GetBuff("ChronoShift").EndTime - Game.Time > 0.3)
            {
                return(0);
            }

            if (target.HasBuff("FioraW"))
            {
                return(0);
            }

            return((float)Damage);
        }
Example #2
0
        public static float EDamage(Obj_AI_Hero unit)
        {
            float damage = 0;

            if (unit == null)
            {
                return(0);
            }
            var data = Player.Buffs.FirstOrDefault(b => b.DisplayName == "TristanaECharge");
            var i    = data != null ? data.Count : 0;

            var buff = unit.GetBuff("TristanaECharge").Count;

            if (!unit.HasBuff("tristanaechargesound"))
            {
                return(0);
            }
            if (i != 0)
            {
                damage += (float)(Tristana.E.GetDamage(unit) * ((0.3 * (i + 1)))
                                  + (Player.TotalMagicalDamage * 0.5));
                damage += BonusDamagePerStack(unit) * (i + 1);
            }

            return(damage);
        }
Example #3
0
 private bool SuccessfulBandage(Obj_AI_Hero enemy)
 {
     return(enemy.IsChampion() &&
            enemy.HasBuff("Stun") &&
            !enemy.HasBuff("CurseoftheSadMummy") &&
            enemy.GetBuff("Stun").Caster.NetworkId == Player.NetworkId);
 }
Example #4
0
        private void Game_OnGameUpdate(EventArgs args)
        {
            if (Q.IsCharging || activatedR)
            {
                orbwalker.SetAttack(false);
                orbwalker.SetMovement(false);
            }
            else
            {
                orbwalker.SetAttack(true);
                orbwalker.SetMovement(true);
            }
            if (FpsBalancer.CheckCounter())
            {
                return;
            }
            switch (orbwalker.ActiveMode)
            {
            case Orbwalking.OrbwalkingMode.Combo:
                Combo();
                break;

            case Orbwalking.OrbwalkingMode.Mixed:
                Harass();
                break;

            case Orbwalking.OrbwalkingMode.LaneClear:
                Clear();
                break;

            case Orbwalking.OrbwalkingMode.LastHit:
                break;

            default:
                break;
            }
            var data = Program.IncDamages.GetAllyData(player.NetworkId);

            if (data != null && !activatedW && config.Item("AshieldB", true).GetValue <bool>() &&
                data.DamageCount >= config.Item("wMinAggro", true).GetValue <Slider>().Value&&
                player.ManaPercent > config.Item("minmanaAgg", true).GetValue <Slider>().Value)
            {
                W.Cast();
            }
            if (data != null && !activatedW && config.Item("AshieldB", true).GetValue <bool>() && W.IsReady() &&
                (data.DamageTaken > player.Health ||
                 data.DamageTaken > getWShield() / 100f * config.Item("AshieldDmg", true).GetValue <Slider>().Value))
            {
                W.Cast();
            }
            if (data != null && activatedW && data.DamageTaken > player.GetBuff("sionwshieldstacks").Count&&
                data.DamageTaken < player.Health)
            {
                W.Cast();
            }
        }
Example #5
0
        public static float GetRemainingDamage(Obj_AI_Hero target)
        {
            var ignitebuff = target.GetBuff("summonerdot");

            if (ignitebuff == null)
            {
                return(0);
            }
            return((float)ObjectManager.Player.CalcDamage(target, Damage.DamageType.True, ((int)(ignitebuff.EndTime - Game.Time) + 1) * GetDamage() / 5));
        }
Example #6
0
        private void Orbwalking_BeforeAttack(Orbwalking.BeforeAttackEventArgs args)
        {
            if (args.Unit.IsMe && stance == Stance.Phoenix && player.GetBuff("UdyrPhoenixStance").Count == 3)
            {
                justR2 = true;
                Utility.DelayAction.Add((int)(player.AttackDelay * 1000), () => justR2 = false);
            }
            if (!args.Unit.IsMe || !R.IsReady())
            {
                return;
            }
            var target =
                HeroManager.Enemies.FirstOrDefault(
                    h => h.Distance(player) < R2.Range && CombatHelper.IsFacing(player, h.Position, 45f));

            if (target != null && orbwalker.ActiveMode != Orbwalking.OrbwalkingMode.Combo)
            {
                Harass();
            }
        }
Example #7
0
 private static void KeelQLogic()
 {
     if (Menu.Item("KeepQALive", true).GetValue <bool>() && !Me.UnderTurret(true) &&
         !Me.IsRecalling() && Me.HasBuff("RivenTriCleave"))
     {
         if (Me.GetBuff("RivenTriCleave").EndTime - Game.Time < 0.3)
         {
             Q.Cast(Game.CursorPos);
         }
     }
 }
Example #8
0
        public static float getQdamage(Obj_AI_Base target)
        {
            var damage = 0d;

            if (Q.IsReady())
            {
                if (savedQ == null)
                {
                    damage += Damage.GetSpellDamage(player, target, SpellSlot.Q);
                }
                else
                {
                    if (savedQ.deltaT() > 2000)
                    {
                        damage += Damage.GetSpellDamage(player, target, SpellSlot.Q) * 1.5f;
                    }
                    else
                    {
                        damage += Damage.GetSpellDamage(player, target, SpellSlot.Q);
                    }
                }
            }
            if (target.Name.Contains("SRU_Dragon"))
            {
                var dsBuff = player.GetBuff("s5test_dragonslayerbuff");
                if (dsBuff != null)
                {
                    damage = damage * (1f - 0.07f * dsBuff.Count);
                }
            }
            if (target.Name.Contains("SRU_Baron"))
            {
                var bBuff = player.GetBuff("barontarget");
                if (bBuff != null)
                {
                    damage = damage * 0.5f;
                }
            }
            return((float)damage);
        }
Example #9
0
        private static double QDamage(Obj_AI_Hero target, bool bufftime = false)
        {
            var buff       = player.GetBuff("RumbleFlameThrower");
            var percentage = 1d;

            if (bufftime && buff != null)
            {
                percentage = CombatHelper.GetBuffTime(buff) / 3f;
            }
            var dmg = Q.GetDamage(target);

            return(dmg * percentage);
        }
Example #10
0
            private double GetAADamage(Obj_AI_Base target)
            {
                double dmg = Player.GetAutoAttackDamage(target, false);

                // BotRK
                if (Items.HasItem(3153, Player))
                {
                    var d = 0.08 * target.Health;
                    if (target is Obj_AI_Minion)
                    {
                        d = Math.Min(d, 60);
                    }

                    dmg += d;
                }

                if (Player.Masteries.Any(m => m.Page == MasteryPage.Offense && m.Id == 132 && m.Points == 1))
                {
                    dmg += Player.CalcDamage(target, Damage.DamageType.Magical, 0.05 * Player.FlatMagicDamageMod);
                }


                if (Player.ChampionName.ToLower() == "orianna")
                {
                    float[] orianna_passive = new float[] { 10, 10, 10, 18, 18, 18, 26, 26, 26, 34, 34, 34, 42, 42, 42, 50, 50, 50 };
                    if (Player.HasBuff("orianaspellsword"))
                    {
                        int count = Player.GetBuff("orianaspellsword").Count;
                        if (_lastTarget == target)
                        {
                            if (count < 2)
                            {
                                count++;
                            }
                        }
                        else
                        {
                            count = 0;
                        }

                        dmg += Player.CalcDamage(target, Damage.DamageType.Magical, (0.15 * Player.FlatMagicDamageMod + orianna_passive[Player.Level - 1]) * (1 + count * 0.2));
                    }
                    else
                    {
                        dmg += Player.CalcDamage(target, Damage.DamageType.Magical, 0.15 * Player.FlatMagicDamageMod + orianna_passive[Player.Level - 1]);
                    }
                }


                return(dmg);
            }
Example #11
0
        private void Combo()
        {
            Obj_AI_Hero target = TargetSelector.GetTarget(1000, TargetSelector.DamageType.Physical, true);

            if (target == null || target.IsInvulnerable || target.MagicImmune)
            {
                return;
            }
            if (config.Item("useItems").GetValue <bool>())
            {
                ItemHandler.UseItems(target, config, ComboDamage(target));
            }
            var  data      = Program.IncDamages.GetAllyData(player.NetworkId);
            var  ignitedmg = (float)player.GetSummonerSpellDamage(target, Damage.SummonerSpell.Ignite);
            bool hasIgnite = player.Spellbook.CanUseSpell(player.GetSpellSlot("SummonerDot")) == SpellState.Ready;

            if (config.Item("useIgnite", true).GetValue <bool>() &&
                ignitedmg > HealthPrediction.GetHealthPrediction(target, 700) && hasIgnite &&
                !CombatHelper.CheckCriticalBuffs(target) &&
                (target.Distance(player) > Orbwalking.GetRealAutoAttackRange(target) + 25 || player.HealthPercent < 30) &&
                !justE)
            {
                player.Spellbook.CastSpell(player.GetSpellSlot("SummonerDot"), target);
            }
            if (Q.CanCast(target) && config.Item("useq", true).GetValue <bool>() &&
                (data.IsAboutToDie || player.HealthPercent < 20 && data.AnyCC) && !R.IsReady() &&
                (!player.HasBuff("UndyingRage") || CombatHelper.GetBuffTime(player.GetBuff("UndyingRage")) < 0.4f) &&
                !justR)
            {
                Q.Cast(config.Item("packets").GetValue <bool>());
            }

            if (E.IsReady() && config.Item("usee", true).GetValue <bool>() && !player.IsWindingUp &&
                Orbwalking.CanMove(100))
            {
                if (!config.Item("useeLimited", true).GetValue <bool>() ||
                    Orbwalking.GetRealAutoAttackRange(target) + 25 < player.Distance(target))
                {
                    CastEtarget(target);
                }
            }
            if (config.Item("usew", true).GetValue <bool>() && W.IsReady() && !Orbwalking.CanAttack() &&
                Orbwalking.CanMove(100))
            {
                W.Cast();
            }
            if (config.Item("user", true).GetValue <bool>() && R.IsReady() && data.IsAboutToDie)
            {
                R.Cast(config.Item("packets").GetValue <bool>());
            }
        }
Example #12
0
        private void Game_OnGameUpdate(EventArgs args)
        {
            if (Q.IsCharging || activatedR)
            {
                orbwalker.SetAttack(false);
                orbwalker.SetMovement(false);
            }
            else
            {
                orbwalker.SetAttack(true);
                orbwalker.SetMovement(true);
            }
            Jungle.CastSmite(config.Item("useSmite").GetValue <KeyBind>().Active);
            switch (orbwalker.ActiveMode)
            {
            case Orbwalking.OrbwalkingMode.Combo:
                Combo();
                break;

            case Orbwalking.OrbwalkingMode.Mixed:
                Harass();
                break;

            case Orbwalking.OrbwalkingMode.LaneClear:
                Clear();
                break;

            case Orbwalking.OrbwalkingMode.LastHit:
                break;

            default:
                break;
            }
            if (System.Environment.TickCount - DamageTakenTime > 1200)
            {
                DamageTakenTime = System.Environment.TickCount;
                DamageTaken     = 0f;
                DamageCount     = 0;
            }
            if (DamageCount >= config.Item("wMinAggro", true).GetValue <Slider>().Value&&
                player.ManaPercent > config.Item("minmanaAgg", true).GetValue <Slider>().Value)
            {
                W.Cast(config.Item("packets").GetValue <bool>());
            }
            if (activatedW && DamageTaken > player.GetBuff("sionwshieldstacks").Count&& DamageTaken < player.Health)
            {
                W.Cast(config.Item("packets").GetValue <bool>());
            }
        }
Example #13
0
        public override void Execute(Obj_AI_Hero target)
        {
            if (_brandQWE.Any(spell => spell.Instance.State == SpellState.Ready || spell.Instance.CooldownExpires > Game.Time && spell.Instance.CooldownExpires - Game.Time < spell.Instance.Cooldown / 2f) || _w.Instance.Cooldown - (_w.Instance.CooldownExpires - Game.Time) < 1)
            {
                if ((!target.HasBuff("brandablaze") || target.GetBuff("brandablaze").EndTime - Game.Time < Delay) && !Provider.IsMarked(target) && !(ObjectManager.Player.GetSpellDamage(target, Instance.Slot) + ObjectManager.Player.GetAutoAttackDamage(target, true) > target.Health))
                    return;
            }

            //if ((((!target.HasBuff("brandablaze") || target.GetBuff("brandablaze").EndTime - Game.Time < Delay) && !Provider.IsMarked(target)) &&
            //    (!(ObjectManager.Player.GetSpellDamage(target, Instance.Slot) + ObjectManager.Player.GetAutoAttackDamage(target, true) > target.Health))) &&
            //    _brandQWE.Any(spell => spell.Instance.State == SpellState.Ready || spell.Instance.CooldownExpires > Game.Time && spell.Instance.CooldownExpires - Game.Time < spell.Instance.Cooldown / 2f)) return;
            //// wenn any skill ready || half cooldown

            Cast(target);
        }
Example #14
0
        private static double GetAADamage(Obj_AI_Base target)
        {
            double dmg = MyHero.GetAutoAttackDamage(target);

            // BotRK
            if (Items.HasItem(3153, MyHero))
            {
                var d = 0.08 * target.Health;
                if (target is Obj_AI_Minion)
                {
                    d = Math.Min(d, 60);
                }

                dmg += d;
            }



            if (MyHero.ChampionName.ToLower() == "orianna")
            {
                float[] orianna_passive = new float[] { 10, 10, 10, 18, 18, 18, 26, 26, 26, 34, 34, 34, 42, 42, 42, 50, 50, 50 };
                if (MyHero.HasBuff("orianaspellsword"))
                {
                    int count = MyHero.GetBuff("orianaspellsword").Count;
                    if (_lastTarget == target)
                    {
                        if (count < 2)
                        {
                            count++;
                        }
                    }
                    else
                    {
                        count = 0;
                    }

                    dmg += MyHero.CalcDamage(target, Damage.DamageType.Magical, (0.15 * MyHero.FlatMagicDamageMod + orianna_passive[MyHero.Level - 1]) * (1 + count * 0.2));
                }
                else
                {
                    dmg += MyHero.CalcDamage(target, Damage.DamageType.Magical, 0.15 * MyHero.FlatMagicDamageMod + orianna_passive[MyHero.Level - 1]);
                }
            }


            return(dmg);
        }
Example #15
0
        private void Game_OnGameUpdate(EventArgs args)
        {
            if (Q.IsCharging || activatedR)
            {
                orbwalker.SetAttack(false);
                orbwalker.SetMovement(false);
            }
            else
            {
                orbwalker.SetAttack(true);
                orbwalker.SetMovement(true);
            }
            Jungle.CastSmite(config.Item("useSmite").GetValue <KeyBind>().Active);
            switch (orbwalker.ActiveMode)
            {
            case Orbwalking.OrbwalkingMode.Combo:
                Combo();
                break;

            case Orbwalking.OrbwalkingMode.Mixed:
                Harass();
                break;

            case Orbwalking.OrbwalkingMode.LaneClear:
                Clear();
                break;

            case Orbwalking.OrbwalkingMode.LastHit:
                break;

            default:
                break;
            }
            var data = Program.IncDamages.GetAllyData(player.NetworkId);

            if (data != null && data.DamageCount >= config.Item("wMinAggro", true).GetValue <Slider>().Value&&
                player.ManaPercent > config.Item("minmanaAgg", true).GetValue <Slider>().Value)
            {
                W.Cast(config.Item("packets").GetValue <bool>());
            }
            if (data != null && activatedW && data.DamageTaken > player.GetBuff("sionwshieldstacks").Count&&
                data.DamageTaken < player.Health)
            {
                W.Cast(config.Item("packets").GetValue <bool>());
            }
        }
Example #16
0
        public static float EDamage(Obj_AI_Hero unit)
        {
            float damage = 0;
            if (unit == null) return 0;
            var data = Player.Buffs.FirstOrDefault(b => b.DisplayName == "TristanaECharge");
                var i = data != null ? data.Count : 0;
            
            var buff = unit.GetBuff("TristanaECharge").Count;
            if (!unit.HasBuff("tristanaechargesound"))
                return 0;
            if (i != 0)
            {
                damage += (float) (Tristana.E.GetDamage(unit)*((0.3*(i + 1)))
                                   + (Player.TotalMagicalDamage*0.5));
                damage += BonusDamagePerStack(unit)*(i + 1);
            }

            return damage;
        }
Example #17
0
        public override void Execute(Obj_AI_Hero target)
        {
            if (_brandQWE.Any(spell => spell.Instance.State == SpellState.Ready || spell.Instance.CooldownExpires > Game.Time && spell.Instance.CooldownExpires - Game.Time < spell.Instance.Cooldown / 2f) || _w.Instance.Cooldown - (_w.Instance.CooldownExpires - Game.Time) < 1)
            {
                if ((!target.HasBuff("brandablaze") || target.GetBuff("brandablaze").EndTime - Game.Time < Delay) && !Provider.IsMarked(target) && !(ObjectManager.Player.GetSpellDamage(target, Instance.Slot) + ObjectManager.Player.GetAutoAttackDamage(target, true) > target.Health))
                {
                    return;
                }
            }



            //if ((((!target.HasBuff("brandablaze") || target.GetBuff("brandablaze").EndTime - Game.Time < Delay) && !Provider.IsMarked(target)) &&
            //    (!(ObjectManager.Player.GetSpellDamage(target, Instance.Slot) + ObjectManager.Player.GetAutoAttackDamage(target, true) > target.Health))) &&
            //    _brandQWE.Any(spell => spell.Instance.State == SpellState.Ready || spell.Instance.CooldownExpires > Game.Time && spell.Instance.CooldownExpires - Game.Time < spell.Instance.Cooldown / 2f)) return;
            //// wenn any skill ready || half cooldown

            Cast(target);
        }
Example #18
0
        private double getEDamage(Obj_AI_Hero target, bool bufftime = false)
        {
            var spins = 0d;

            if (bufftime)
            {
                spins = CombatHelper.GetBuffTime(player.GetBuff("GarenE")) * GetSpins() / 3;
            }
            else
            {
                spins = GetSpins();
            }
            var dmg   = (baseEDamage[E.Level - 1] + bonusEDamage[E.Level - 1] / 100 * player.TotalAttackDamage) * spins;
            var bonus = target.HasBuff("garenpassiveenemytarget") ? target.MaxHealth / 100f * spins : 0;

            if (ObjectManager.Get <Obj_AI_Base>().Count(o => o.IsValidTarget() && o.Distance(target) < 650) == 0)
            {
                return(Damage.CalcDamage(player, target, Damage.DamageType.Physical, dmg) * 1.33 + bonus);
            }
            else
            {
                return(Damage.CalcDamage(player, target, Damage.DamageType.Physical, dmg) + bonus);
            }
        }
Example #19
0
        private static double ComboDamage(Obj_AI_Hero target)
        {
            if (target != null && target.IsValidTarget())
            {
                var Damage = 0d;

                Damage += Me.GetAutoAttackDamage(target);

                if (Q.IsReady())
                {
                    Damage += Me.Spellbook.GetSpell(SpellSlot.Q).IsReady() ? Me.GetSpellDamage(target, SpellSlot.Q) : 0d;
                }

                if (W.IsReady())
                {
                    Damage += Me.Spellbook.GetSpell(SpellSlot.W).IsReady() ? Me.GetSpellDamage(target, SpellSlot.W) : 0d;
                }

                if (E.IsReady())
                {
                    Damage += Me.Spellbook.GetSpell(SpellSlot.E).IsReady() ? Me.GetSpellDamage(target, SpellSlot.E) : 0d;
                }

                if (R.IsReady())
                {
                    Damage += Me.Spellbook.GetSpell(SpellSlot.R).IsReady() ? Me.GetSpellDamage(target, SpellSlot.R) * Menu.Item("RMenuKill", true).GetValue <Slider>().Value : 0d;
                }

                if (Me.GetSpellSlot("SummonerDot") != SpellSlot.Unknown && Me.GetSpellSlot("SummonerDot").IsReady())
                {
                    Damage += 50 + 20 * Me.Level - target.HPRegenRate / 5 * 3;
                }

                if (target.ChampionName == "Moredkaiser")
                {
                    Damage -= target.Mana;
                }

                // exhaust
                if (Me.HasBuff("SummonerExhaust"))
                {
                    Damage = Damage * 0.6f;
                }

                // blitzcrank passive
                if (target.HasBuff("BlitzcrankManaBarrierCD") && target.HasBuff("ManaBarrier"))
                {
                    Damage -= target.Mana / 2f;
                }

                // kindred r
                if (target.HasBuff("KindredRNoDeathBuff"))
                {
                    Damage = 0;
                }

                // tryndamere r
                if (target.HasBuff("UndyingRage") && target.GetBuff("UndyingRage").EndTime - Game.Time > 0.3)
                {
                    Damage = 0;
                }

                // kayle r
                if (target.HasBuff("JudicatorIntervention"))
                {
                    Damage = 0;
                }

                // zilean r
                if (target.HasBuff("ChronoShift") && target.GetBuff("ChronoShift").EndTime - Game.Time > 0.3)
                {
                    Damage = 0;
                }

                // fiora w
                if (target.HasBuff("FioraW"))
                {
                    Damage = 0;
                }

                return(Damage);
            }
            return(0d);
        }
Example #20
0
        private static void TeamFightUlt()
        {
            var CanCastR = false;

            if (Menu.Item("TeamFightR", true).GetValue <bool>() && R.IsReady())
            {
                foreach (var target in HeroManager.Enemies)
                {
                    if (!target.IsValidTarget())
                    {
                        continue;
                    }

                    if (target.IsDead)
                    {
                        continue;
                    }

                    if (target.IsZombie)
                    {
                        continue;
                    }

                    if (target.HasBuff("KindredRNoDeathBuff"))
                    {
                        continue;
                    }

                    if (target.HasBuff("UndyingRage") && target.GetBuff("UndyingRage").EndTime - Game.Time > 0.3)
                    {
                        continue;
                    }

                    if (target.HasBuff("JudicatorIntervention"))
                    {
                        continue;
                    }

                    if (target.HasBuff("ChronoShift") && target.GetBuff("ChronoShift").EndTime - Game.Time > 0.3)
                    {
                        continue;
                    }

                    if (target.HasBuff("FioraW"))
                    {
                        continue;
                    }

                    if (target.CountAlliesInRange(850) > 1 && target.CountEnemiesInRange(850) <= 2 &&
                        target.Health + target.MagicalShield < GetRDamage(target) * 2 && Me.IsZombie)
                    {
                        CanCastR = true;
                    }

                    //if (Me.CountEnemiesInRange(850) > 0 && target.Health < GetRDamage(target) + GetQDamage(target) * 3)
                    //{
                    //    CanCastR = true;
                    //}

                    if (Me.CountEnemiesInRange(1000) >= 3 && Me.CountAlliesInRange(850) <= 3)
                    {
                        CanCastR = true;
                    }
                }

                if (Me.IsZombie)
                {
                    var passivetime = Me.GetBuff("KarthusDeathDefiedBuff").EndTime;

                    if (passivetime > 3 && passivetime < 4)
                    {
                        if (CanCastR)
                        {
                            R.Cast();
                        }
                    }
                }
                else if (!Me.IsZombie)
                {
                    if (CanCastR && Me.CountEnemiesInRange(800) == 0)
                    {
                        R.Cast();
                    }
                }
            }
            else
            {
                CanCastR = false;
            }
        }
Example #21
0
        private static float GetDamage(Obj_AI_Hero target)
        {
            float Damage = 0f;

            // rengenrate
            Damage -= target.HPRegenRate;

            if (Q.IsReady())
            {
                Damage += Q.GetDamage(target);
            }

            if (W.IsReady())
            {
                Damage += W.GetDamage(target);
            }

            if (E.IsReady())
            {
                Damage += E.GetDamage(target);
            }

            if (R.IsReady())
            {
                Damage += R.GetDamage(target);
            }

            if (target.ChampionName == "Moredkaiser")
            {
                Damage -= target.Mana;
            }

            // exhaust
            if (Player.HasBuff("SummonerExhaust"))
            {
                Damage = Damage * 0.6f;
            }

            // blitzcrank passive
            if (target.HasBuff("BlitzcrankManaBarrierCD") && target.HasBuff("ManaBarrier"))
            {
                Damage -= target.Mana / 2f;
            }

            // kindred r
            if (target.HasBuff("KindredRNoDeathBuff"))
            {
                Damage = 0;
            }

            // tryndamere r
            if (target.HasBuff("UndyingRage") && target.GetBuff("UndyingRage").EndTime - Game.Time > 0.3)
            {
                Damage = 0;
            }

            // kayle r
            if (target.HasBuff("JudicatorIntervention"))
            {
                Damage = 0;
            }

            // zilean r
            if (target.HasBuff("ChronoShift") && target.GetBuff("ChronoShift").EndTime - Game.Time > 0.3)
            {
                Damage = 0;
            }

            // fiora w
            if (target.HasBuff("FioraW"))
            {
                Damage = 0;
            }

            return(Damage);
        }
Example #22
0
 public static float GetRemainingDamage(Obj_AI_Hero target)
 {
     var ignitebuff = target.GetBuff("summonerdot");
     if (ignitebuff == null) return 0;
     return (float)ObjectManager.Player.CalcDamage(target, Damage.DamageType.True, ((int)(ignitebuff.EndTime - Game.Time) + 1) * GetDamage() / 5);
 }
Example #23
0
 private static bool CanR(Obj_AI_Hero target)
 {
     var buff = target.GetBuff("blindmonkrkick");
     return buff != null && buff.EndTime - Game.Time < 0.3 * (buff.EndTime - buff.StartTime);
 }
Example #24
0
        public static double GetDamage(Obj_AI_Hero Target, bool CalCulateAttackDamage = true,
                                       bool CalCulateQDamage = true, bool CalCulateWDamage = true,
                                       bool CalCulateEDamage = true, bool CalCulateRDamage = true)
        {
            if (CheckTarget(Target))
            {
                double Damage = 0d;

                if (CalCulateAttackDamage)
                {
                    Damage += GameObjects.Player.GetAutoAttackDamage(Target);
                }

                if (CalCulateQDamage)
                {
                    switch (GameObjects.Player.ChampionName)
                    {
                    case "Ahri":
                        Damage += GameObjects.Player.Spellbook.GetSpell(SpellSlot.Q).IsReady() ? GameObjects.Player.GetSpellDamage(Target, SpellSlot.Q) * 2 : 0d;
                        break;

                    default:
                        Damage += GameObjects.Player.Spellbook.GetSpell(SpellSlot.Q).IsReady() ? GameObjects.Player.GetSpellDamage(Target, SpellSlot.Q) : 0d;
                        break;
                    }
                }

                if (CalCulateWDamage)
                {
                    Damage += GameObjects.Player.Spellbook.GetSpell(SpellSlot.W).IsReady() ? GameObjects.Player.GetSpellDamage(Target, SpellSlot.W) : 0d;
                }

                if (CalCulateEDamage)
                {
                    Damage += GameObjects.Player.Spellbook.GetSpell(SpellSlot.E).IsReady() ? GameObjects.Player.GetSpellDamage(Target, SpellSlot.E) : 0d;
                }

                if (CalCulateRDamage)
                {
                    if (GameObjects.Player.ChampionName == "Ahri")
                    {
                        Damage += GameObjects.Player.Spellbook.GetSpell(SpellSlot.R).IsReady() ? GameObjects.Player.GetSpellDamage(Target, SpellSlot.R) * 3 : 0d;
                    }
                    else
                    {
                        Damage += GameObjects.Player.Spellbook.GetSpell(SpellSlot.R).IsReady() ? GameObjects.Player.GetSpellDamage(Target, SpellSlot.R) : 0d;
                    }
                }

                if (GameObjects.Player.GetSpellSlot("SummonerDot") != SpellSlot.Unknown && GameObjects.Player.GetSpellSlot("SummonerDot").IsReady())
                {
                    Damage += 50 + 20 * GameObjects.Player.Level - (Target.HPRegenRate / 5 * 3);
                }

                if (Target.ChampionName == "Moredkaiser")
                {
                    Damage -= Target.Mana;
                }

                // exhaust
                if (GameObjects.Player.HasBuff("SummonerExhaust"))
                {
                    Damage = Damage * 0.6f;
                }

                // blitzcrank passive
                if (Target.HasBuff("BlitzcrankManaBarrierCD") && Target.HasBuff("ManaBarrier"))
                {
                    Damage -= Target.Mana / 2f;
                }

                // kindred r
                if (Target.HasBuff("KindredRNoDeathBuff"))
                {
                    Damage = 0;
                }

                // tryndamere r
                if (Target.HasBuff("UndyingRage") && Target.GetBuff("UndyingRage").EndTime - Game.Time > 0.3)
                {
                    Damage = 0;
                }

                // kayle r
                if (Target.HasBuff("JudicatorIntervention"))
                {
                    Damage = 0;
                }

                // zilean r
                if (Target.HasBuff("ChronoShift") && Target.GetBuff("ChronoShift").EndTime - Game.Time > 0.3)
                {
                    Damage = 0;
                }

                // fiora w
                if (Target.HasBuff("FioraW"))
                {
                    Damage = 0;
                }

                return(Damage);
            }
            return(0d);
        }
Example #25
0
        public static double ComboDamage(Obj_AI_Hero target)
        {
            if (target != null && !target.IsDead && !target.IsZombie)
            {
                if (target.HasBuff("KindredRNoDeathBuff"))
                {
                    return(0);
                }

                if (target.HasBuff("UndyingRage") && target.GetBuff("UndyingRage").EndTime - Game.Time > 0.3)
                {
                    return(0);
                }

                if (target.HasBuff("JudicatorIntervention"))
                {
                    return(0);
                }

                if (target.HasBuff("ChronoShift") && target.GetBuff("ChronoShift").EndTime - Game.Time > 0.3)
                {
                    return(0);
                }

                if (target.HasBuff("FioraW"))
                {
                    return(0);
                }

                if (target.HasBuff("ShroudofDarkness"))
                {
                    return(0);
                }

                if (target.HasBuff("SivirShield"))
                {
                    return(0);
                }

                var damage = 0d;

                damage += ObjectManager.Player.GetAutoAttackDamage(target) + GetPassiveDamage(target) +
                          (ObjectManager.Player.Spellbook.GetSpell(SpellSlot.Q).IsReady()
                              ? (target.DistanceToPlayer() <= 170f + target.BoundingRadius
                                  ? GetQ1Damage(target)
                                  : GetQDamage(target))
                              : 0d) +
                          (ObjectManager.Player.Spellbook.GetSpell(SpellSlot.W).IsReady()
                              ? GetWDamage(target) + GetW1Damage(target)
                              : 0d) +
                          (ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).IsReady()
                              ? GetRDamage(target)
                              : 0d) +
                          ((ObjectManager.Player.GetSpellSlot("SummonerDot") != SpellSlot.Unknown &&
                            ObjectManager.Player.GetSpellSlot("SummonerDot").IsReady())
                              ? 50 + 20 * ObjectManager.Player.Level - (target.HPRegenRate / 5 * 3)
                              : 0d);

                if (target.ChampionName == "Moredkaiser")
                {
                    damage -= target.Mana;
                }

                if (ObjectManager.Player.HasBuff("SummonerExhaust"))
                {
                    damage = damage * 0.6f;
                }

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

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

                if (target.HasBuff("BlitzcrankManaBarrierCD") && target.HasBuff("ManaBarrier"))
                {
                    damage -= target.Mana / 2f;
                }

                return(damage);
            }

            return(0d);
        }
Example #26
0
 public BuffInstance getBlazed(Obj_AI_Hero target)
 {
     return(target.GetBuff("brandablaze"));
 }
Example #27
0
 public override bool ShouldBeDead(Obj_AI_Hero target, float additionalSpellDamage = 0f)
 {
     var passive = target.GetBuff("brandablaze");
     return base.ShouldBeDead(target, passive != null ? GetRemainingPassiveDamage(target, passive) : 0f);
 }
Example #28
0
        public static double ComboDamage(Obj_AI_Hero target)
        {
            if (CheckTarget(target))
            {
                var Damage = 0d;

                Damage += ObjectManager.Player.GetAutoAttackDamage(target) +
                          (ObjectManager.Player.Spellbook.GetSpell(SpellSlot.Q).IsReady()
                              ? ObjectManager.Player.GetSpellDamage(target, SpellSlot.Q)
                              : 0d) +
                          (ObjectManager.Player.Spellbook.GetSpell(SpellSlot.W).IsReady()
                              ? ObjectManager.Player.GetSpellDamage(target, SpellSlot.W)
                              : 0d) +
                          (ObjectManager.Player.Spellbook.GetSpell(SpellSlot.E).IsReady()
                              ? ObjectManager.Player.GetSpellDamage(target, SpellSlot.E)
                              : 0d) +
                          (ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).IsReady()
                              ? ObjectManager.Player.GetSpellDamage(target, SpellSlot.R)
                              : 0d) +
                          ((ObjectManager.Player.GetSpellSlot("SummonerDot") != SpellSlot.Unknown &&
                            ObjectManager.Player.GetSpellSlot("SummonerDot").IsReady())
                              ? 50 + 20 * ObjectManager.Player.Level - (target.HPRegenRate / 5 * 3)
                              : 0d);

                if (target.ChampionName == "Moredkaiser")
                {
                    Damage -= target.Mana;
                }

                // exhaust
                if (ObjectManager.Player.HasBuff("SummonerExhaust"))
                {
                    Damage = Damage * 0.6f;
                }

                // blitzcrank passive
                if (target.HasBuff("BlitzcrankManaBarrierCD") && target.HasBuff("ManaBarrier"))
                {
                    Damage -= target.Mana / 2f;
                }

                // kindred r
                if (target.HasBuff("KindredRNoDeathBuff"))
                {
                    Damage = 0;
                }

                // tryndamere r
                if (target.HasBuff("UndyingRage") && target.GetBuff("UndyingRage").EndTime - Game.Time > 0.3)
                {
                    Damage = 0;
                }

                // kayle r
                if (target.HasBuff("JudicatorIntervention"))
                {
                    Damage = 0;
                }

                // zilean r
                if (target.HasBuff("ChronoShift") && target.GetBuff("ChronoShift").EndTime - Game.Time > 0.3)
                {
                    Damage = 0;
                }

                // fiora w
                if (target.HasBuff("FioraW"))
                {
                    Damage = 0;
                }

                return(Damage);
            }

            return(0d);
        }
Example #29
0
        public override bool ShouldBeDead(Obj_AI_Hero target, float additionalSpellDamage = 0f)
        {
            var passive = target.GetBuff("brandablaze");

            return(base.ShouldBeDead(target, passive != null ? GetRemainingPassiveDamage(target, passive) : 0f));
        }
Example #30
0
 public static float GetKnockupEndTime(this Obj_AI_Hero target)
 {
     return((Game.Time - target.GetBuff("RekSaiKnockupImmune").EndTime) != 0f ? Game.Time - target.GetBuff("RekSaiKnockupImmune").EndTime : 0f); //TODO Gotta Check this
 }
Example #31
0
 private static bool CanR(Obj_AI_Hero target)
 {
     var buff = target.GetBuff("BlindMonkDragonsRage");
     return buff != null && buff.EndTime - Game.Time < 0.3 * (buff.EndTime - buff.StartTime);
 }