Example #1
0
        public void QSmite(Obj_AI_Base target)
        {
            var pred    = this.Q.GetPrediction(target);
            var objects = pred.CollisionObjects;

            if (pred.HitChance != HitChance.Collision || !objects.Any())
            {
                return;
            }

            if (SummonerSpells.Smite == null || !SummonerSpells.Smite.Ready || SummonerSpells.Ammo("Smite") < 2)
            {
                return;
            }

            var current = objects.FirstOrDefault();

            if (current == null || current.NetworkId == target.NetworkId || current.Health > SummonerSpells.SmiteMonsters() ||
                current.ServerPosition.Distance(Global.Player) > SummonerSpells.Smite.Range)
            {
                return;
            }

            SummonerSpells.Smite.CastOnUnit(current);
            Global.Player.SpellBook.CastSpell(SpellSlot.Q, target.ServerPosition);
        }
Example #2
0
        public void SmiteMob()
        {
            var smiteAbleMob = ObjectManager.Get<Obj_AI_Minion>().FirstOrDefault(x => x.Distance(Global.Player) < 1300);

            if (smiteAbleMob != null && (smiteAlways.Contains(smiteAbleMob.UnitSkinName) || smiteOptional.Contains(smiteAbleMob.UnitSkinName)))
            {
                if (smiteAbleMob.Health < StealDamage(smiteAbleMob))
                {
                    if (smiteOptional.Contains(smiteAbleMob.UnitSkinName) && Global.Player.HealthPercent() >= (SummonerSpells.Ammo("Smite") <= 1 ? 40 : 50) ||
                        smiteAbleMob.UnitSkinName.ToLower().Contains("blue") && !this.BlueEnabled)
                    {
                        return;
                    }

                    if (this.SmiteEnabled && SummonerSpells.IsValid(SummonerSpells.Smite))
                    {
                        SummonerSpells.Smite.CastOnUnit(smiteAbleMob);
                    }

                    if (spellConfig.IsQ2() && spellConfig.Q.Ready)
                    {
                        spellConfig.Q.Cast();
                    }
                }
            }

            var mob = GameObjects.JungleLegendary.FirstOrDefault(x => x.Distance(Global.Player) <= 1500);

            if (mob == null || !this.SmiteEnabled)
            {
                return;
            }

            if (q2Time > 0 && Game.TickCount - q2Time <= 1500 && SummonerSpells.IsValid(SummonerSpells.Smite) && StealDamage(mob) > mob.Health)
            {
                if (spellConfig.W.Ready && spellConfig.IsFirst(spellConfig.W) && Global.Player.Distance(mob) <= 500)
                {
                    SummonerSpells.Smite.CastOnUnit(mob);
                    wardManager.WardJump(positions.FirstOrDefault(), (int) mob.Distance(Global.Player));
                }
            }

            if (mob.Position.CountAllyHeroesInRange(700) <= 1 && spellConfig.Q.Ready && spellConfig.IsQ2() && StealDamage(mob) > mob.Health)
            {
                spellConfig.Q.Cast();
                q2Time = Game.TickCount;
            }
        }