Ejemplo n.º 1
0
        public void Combo()
        {
            if (!Menu.Item("enabled").IsActive())
            {
                return;
            }

            E = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }
            _q     = Me.Spellbook.SpellQ;
            _w     = Me.Spellbook.SpellW;
            _r     = Me.Spellbook.SpellR;
            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key);

            _shiva    = Me.FindItem("item_shivas_guard");
            _ethereal = Me.FindItem("item_ethereal_blade");
            _mom      = Me.FindItem("item_mask_of_madness");
            _urn      = Me.FindItem("item_urn_of_shadows");
            _dagon    = Me.Inventory.Items.FirstOrDefault(item => item.Name.Contains("item_dagon"));
            _halberd  = Me.FindItem("item_heavens_halberd");
            _mjollnir = Me.FindItem("item_mjollnir");
            _orchid   = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            _abyssal  = Me.FindItem("item_abyssal_blade");
            _mail     = Me.FindItem("item_blade_mail");
            _bkb      = Me.FindItem("item_black_king_bar");
            _satanic  = Me.FindItem("item_satanic");
            _blink    = Me.FindItem("item_blink");
            _medall   = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            _cyclone  = Me.FindItem("item_cyclone");
            _force    = Me.FindItem("item_force_staff");
            _sheep    = E.ClassId == ClassId.CDOTA_Unit_Hero_Tidehunter ? null : Me.FindItem("item_sheepstick");
            _cheese   = Me.FindItem("item_cheese");
            _soul     = Me.FindItem("item_soul_ring");
            _arcane   = Me.FindItem("item_arcane_boots");
            _stick    = Me.FindItem("item_magic_stick") ?? Me.FindItem("item_magic_wand");
            _phase    = Me.FindItem("item_phase_boots");
            var v =
                ObjectManager.GetEntities <Hero>()
                .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && !x.IsMagicImmune())
                .ToList();

            var stoneModif = E.Modifiers.Any(y => y.Name == "modifier_medusa_stone_gaze_stone");
            var modifR     = E.Modifiers.Any(y => y.Name == "modifier_bloodseeker_rupture");
            var modifQ     = E.HasModifier("modifier_bloodseeker_bloodrage");

            if (Active && Me.Distance2D(E) <= 1400 && E != null && E.IsAlive)
            {
                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
            }
            if (Active && Me.Distance2D(E) <= 1400 && E != null && E.IsAlive && !Me.IsInvisible())
            {
                if (_cyclone != null && _cyclone.CanBeCasted() && _w.CanBeCasted() &&
                    Me.Distance2D(E) <= _cyclone.GetCastRange() + 300 &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_cyclone.Name) &&
                    _w.CanBeCasted() &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                    Utils.SleepCheck(Me.Handle.ToString()))
                {
                    _cyclone.UseAbility(E);
                    Utils.Sleep(500, Me.Handle.ToString());
                }
                if (
                    _q != null && _q.CanBeCasted() && Me.Distance2D(E) <= 700 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                    !modifQ &&
                    Utils.SleepCheck("Q")
                    )
                {
                    _q.UseAbility(Me);
                    Utils.Sleep(200, "Q");
                }
                if (
                    _w != null && _w.CanBeCasted() && Me.Distance2D(E) <= 700
                    &&
                    (!_cyclone.CanBeCasted() || _cyclone == null ||
                     !Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_cyclone.Name)) &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                    Utils.SleepCheck("W")
                    )
                {
                    _w.UseAbility(E.Predict(300));
                    Utils.Sleep(200, "W");
                }

                if (
                    _force != null &&
                    _force.CanBeCasted() &&
                    Me.Distance2D(E) < 800 &&
                    modifR &&
                    E.IsSilenced() &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_force.Name) &&
                    Utils.SleepCheck("force"))
                {
                    _force.UseAbility(E);
                    Utils.Sleep(240, "force");
                }
                if (_cyclone == null || !_cyclone.CanBeCasted() || !Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_cyclone.Name))
                {
                    if (
                        _r != null && _r.CanBeCasted() && Me.Distance2D(E) <= 900 &&
                        !E.HasModifier("modifier_bloodseeker_rupture") &&
                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                        Utils.SleepCheck("R")
                        )
                    {
                        _r.UseAbility(E);
                        Utils.Sleep(500, "R");
                    }
                    if (                     // MOM
                        _mom != null &&
                        _mom.CanBeCasted() &&
                        Me.CanCast() &&
                        Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_mom.Name) &&
                        Utils.SleepCheck("mom") &&
                        Me.Distance2D(E) <= 700
                        )
                    {
                        _mom.UseAbility();
                        Utils.Sleep(250, "mom");
                    }
                    if (                     // Hellbard
                        _halberd != null &&
                        _halberd.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsMagicImmune() &&
                        (E.NetworkActivity == NetworkActivity.Attack ||
                         E.NetworkActivity == NetworkActivity.Crit ||
                         E.NetworkActivity == NetworkActivity.Attack2) &&
                        Utils.SleepCheck("halberd") &&
                        Me.Distance2D(E) <= 700 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                        )
                    {
                        _halberd.UseAbility(E);
                        Utils.Sleep(250, "halberd");
                    }
                    if (                     // Arcane Boots Item
                        _arcane != null &&
                        Me.Mana <= _r.ManaCost &&
                        Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_arcane.Name) &&
                        _arcane.CanBeCasted() &&
                        Utils.SleepCheck("arcane")
                        )
                    {
                        _arcane.UseAbility();
                        Utils.Sleep(250, "arcane");
                    }                     // Arcane Boots Item end
                    if (                  // Mjollnir
                        _mjollnir != null &&
                        _mjollnir.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsMagicImmune() &&
                        Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                        Utils.SleepCheck("mjollnir") &&
                        Me.Distance2D(E) <= 900
                        )
                    {
                        _mjollnir.UseAbility(Me);
                        Utils.Sleep(250, "mjollnir");
                    }                     // Mjollnir Item end
                    if (
                        // cheese
                        _cheese != null &&
                        _cheese.CanBeCasted() &&
                        Me.Health <= (Me.MaximumHealth * 0.3) &&
                        Me.Distance2D(E) <= 700 &&
                        Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_cheese.Name) &&
                        Utils.SleepCheck("cheese")
                        )
                    {
                        _cheese.UseAbility();
                        Utils.Sleep(200, "cheese");
                    }                     // cheese Item end
                    if (                  // Medall
                        _medall != null &&
                        _medall.CanBeCasted() &&
                        Utils.SleepCheck("Medall") &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                        Me.Distance2D(E) <= 700
                        )
                    {
                        _medall.UseAbility(E);
                        Utils.Sleep(250, "Medall");
                    }                     // Medall Item end

                    if (                  // sheep
                        _sheep != null &&
                        _sheep.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsLinkensProtected() &&
                        !E.IsMagicImmune() &&
                        Me.Distance2D(E) <= 1400 &&
                        !stoneModif &&
                        Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) &&
                        Utils.SleepCheck("sheep")
                        )
                    {
                        _sheep.UseAbility(E);
                        Utils.Sleep(250, "sheep");
                    }                     // sheep Item end
                    if (                  // Abyssal Blade
                        _abyssal != null &&
                        _abyssal.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsStunned() &&
                        !E.IsHexed() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                        Utils.SleepCheck("abyssal") &&
                        Me.Distance2D(E) <= 400
                        )
                    {
                        _abyssal.UseAbility(E);
                        Utils.Sleep(250, "abyssal");
                    }                     // Abyssal Item end
                    if (_orchid != null && _orchid.CanBeCasted() && Me.Distance2D(E) <= 900 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                        Utils.SleepCheck("orchid"))
                    {
                        _orchid.UseAbility(E);
                        Utils.Sleep(100, "orchid");
                    }

                    if (_shiva != null && _shiva.CanBeCasted() && Me.Distance2D(E) <= 600 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                        !E.IsMagicImmune() && Utils.SleepCheck("Shiva"))
                    {
                        _shiva.UseAbility();
                        Utils.Sleep(100, "Shiva");
                    }
                    if (                     // ethereal
                        _ethereal != null &&
                        _ethereal.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsLinkensProtected() &&
                        !E.IsMagicImmune() &&
                        !stoneModif &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                        Utils.SleepCheck("ethereal")
                        )
                    {
                        _ethereal.UseAbility(E);
                        Utils.Sleep(200, "ethereal");
                    }                     // ethereal Item end
                    if (
                        _blink != null &&
                        Me.CanCast() &&
                        _blink.CanBeCasted() &&
                        Me.Distance2D(E) >= 450 &&
                        Me.Distance2D(E) <= 1150 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                        Utils.SleepCheck("blink")
                        )
                    {
                        _blink.UseAbility(E.Position);
                        Utils.Sleep(250, "blink");
                    }

                    if (                     // SoulRing Item
                        _soul != null &&
                        _soul.CanBeCasted() &&
                        Me.CanCast() &&
                        Me.Health >= (Me.MaximumHealth * 0.5) &&
                        Me.Mana <= _r.ManaCost &&
                        Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_soul.Name)
                        )
                    {
                        _soul.UseAbility();
                    }                     // SoulRing Item end
                    if (                  // Dagon
                        Me.CanCast() &&
                        _dagon != null &&
                        (_ethereal == null ||
                         (E.Modifiers.Any(y => y.Name == "modifier_item_ethereal_blade_slow") ||
                          _ethereal.Cooldown < 17)) &&
                        !E.IsLinkensProtected() &&
                        _dagon.CanBeCasted() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                        !E.IsMagicImmune() &&
                        !stoneModif &&
                        Utils.SleepCheck("dagon")
                        )
                    {
                        _dagon.UseAbility(E);
                        Utils.Sleep(200, "dagon");
                    }                     // Dagon Item end
                    if (_phase != null &&
                        _phase.CanBeCasted() &&
                        Utils.SleepCheck("phase") &&
                        Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_phase.Name) &&
                        !_blink.CanBeCasted() &&
                        Me.Distance2D(E) >= Me.AttackRange + 20)
                    {
                        _phase.UseAbility();
                        Utils.Sleep(200, "phase");
                    }
                    if (_urn != null && _urn.CanBeCasted() && _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("urn"))
                    {
                        _urn.UseAbility(E);
                        Utils.Sleep(240, "urn");
                    }
                    if (
                        _stick != null &&
                        _stick.CanBeCasted() &&
                        _stick.CurrentCharges != 0 &&
                        Me.Distance2D(E) <= 700 &&
                        (Me.Health <= (Me.MaximumHealth * 0.5) ||
                         Me.Mana <= (Me.MaximumMana * 0.5)) &&
                        Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_stick.Name))
                    {
                        _stick.UseAbility();
                        Utils.Sleep(200, "mana_items");
                    }
                    if (                     // Satanic
                        _satanic != null &&
                        Me.Health <= (Me.MaximumHealth * 0.3) &&
                        _satanic.CanBeCasted() &&
                        Me.Distance2D(E) <= Me.AttackRange + 50 &&
                        Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                        Utils.SleepCheck("satanic")
                        )
                    {
                        _satanic.UseAbility();
                        Utils.Sleep(240, "satanic");
                    }                     // Satanic Item end
                    if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                                 (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                    {
                        _mail.UseAbility();
                        Utils.Sleep(100, "mail");
                    }
                    if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                               (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("bkb"))
                    {
                        _bkb.UseAbility();
                        Utils.Sleep(100, "bkb");
                    }
                }
            }
        }         // Combo
Ejemplo n.º 2
0
        private void Others(EventArgs args)
        {
            CastQ    = Game.IsKeyDown(Menu.Item("qKey").GetValue <KeyBind>().Key);
            CastW    = Game.IsKeyDown(Menu.Item("wKey").GetValue <KeyBind>().Key);
            CastE    = Game.IsKeyDown(Menu.Item("eKey").GetValue <KeyBind>().Key);
            _autoUlt = Menu.Item("oneult").IsActive();
            if (!Menu.Item("enabled").IsActive())
            {
                return;
            }

            if (E == null)
            {
                return;
            }

            _d = Me.Spellbook.SpellD;
            _q = Me.Spellbook.SpellQ;
            _e = Me.Spellbook.SpellE;
            _w = Me.Spellbook.SpellW;
            _r = Me.Spellbook.SpellR;


            var magnetizemod = E.Modifiers.Where(y => y.Name == "modifier_earth_spirit_magnetize").DefaultIfEmpty(null).FirstOrDefault();

            if (_autoUlt && magnetizemod != null && magnetizemod.RemainingTime <= 0.2 + Game.Ping && Me.Distance2D(E) <= _d.GetCastRange() && Utils.SleepCheck("Rem"))
            {
                _d.UseAbility(E.Position);
                Utils.Sleep(1000, "Rem");
            }
            var remnant = ObjectManager.GetEntities <Unit>().Where(x => x.ClassId == ClassId.CDOTA_Unit_Earth_Spirit_Stone && x.Team == Me.Team &&
                                                                   x.Distance2D(Me) <= 1700 && x.IsAlive && x.IsValid).ToList();
            var remnantCount = remnant.Count;

            if (CastQ && Me.Distance2D(E) <= 1400 && E != null && E.IsAlive && !Me.IsInvisible())
            {
                _wmod = Me.HasModifier("modifier_earth_spirit_rolling_boulder_caster");
                if (remnant.Count(x => x.Distance2D(Me) <= 1200) == 0)
                {
                    if (
                        _d.CanBeCasted() &&
                        _q.CanBeCasted() &&
                        !_wmod &&
                        ((_blink == null ||
                          !_blink.CanBeCasted() ||
                          !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name)) ||
                         (_blink != null && Me.Distance2D(E) <= 450 && _blink.CanBeCasted()))
                        )
                    {
                        if (Me.Distance2D(E) <= _e.GetCastRange() - 50 &&
                            Utils.SleepCheck("Rem"))
                        {
                            _d.UseAbility(Prediction.InFront(Me, 50));
                            Utils.Sleep(600, "Rem");
                        }
                    }
                }
                if (remnant.Count(x => x.Distance2D(Me) <= 1200) >= 1)
                {
                    for (int i = 0; i < remnantCount; ++i)
                    {
                        var r = remnant[i];
                        if (
                            _d != null && _d.CanBeCasted() &&
                            ((_q != null && _q.CanBeCasted()) ||
                             (_w != null && _w.CanBeCasted())) &&
                            !_wmod &&
                            Me.Distance2D(r) >= 350 &&
                            ((_blink == null ||
                              !_blink.CanBeCasted() ||
                              !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name)) ||
                             (_blink != null && Me.Distance2D(E) <= 450 && _blink.CanBeCasted()))
                            )
                        {
                            if (Me.Distance2D(E) <= _e.GetCastRange() - 50 &&
                                Utils.SleepCheck("Rem"))
                            {
                                _d.UseAbility(Prediction.InFront(Me, 50));
                                Utils.Sleep(600, "Rem");
                            }
                        }
                        if (
                            Me.Distance2D(r) >= 200 &&
                            Me.Distance2D(r) <= 350 &&
                            _q.CanBeCasted() &&
                            Utils.SleepCheck("RemMove"))
                        {
                            Me.Move(r.Position);
                            Utils.Sleep(300, "RemMove");
                        }
                        if (//Q Skill
                            r != null &&
                            _q != null &&
                            _q.CanBeCasted() &&
                            Me.CanCast() &&
                            Me.Distance2D(E) <= _e.GetCastRange() - 50 &&
                            r.Distance2D(Me) <= 210 &&
                            Utils.SleepCheck(r.Handle + "remnantQ")
                            )
                        {
                            _q.CastSkillShot(E);
                            Utils.Sleep(250, r.Handle + "remnantQ");
                        }
                    }
                }
            }
            if (CastW)
            {
                _wmod = Me.HasModifier("modifier_earth_spirit_rolling_boulder_caster");
                Task.Delay(350).ContinueWith(_ =>
                {
                    if (remnant.Count(x => x.Distance2D(Me) <= 1200) == 0)
                    {
                        if (
                            _d.CanBeCasted() &&
                            _wmod &&
                            Me.Distance2D(E) >= 600 &&
                            Utils.SleepCheck("nextAction")
                            )
                        {
                            _d.UseAbility(Prediction.InFront(Me, 170));
                            Utils.Sleep(1800 + _d.FindCastPoint(), "nextAction");
                        }
                    }
                });
                if (//W Skill
                    _w != null &&
                    _w.CanBeCasted() &&
                    Game.MousePosition.Distance2D(E) <= 500 &&
                    Me.Distance2D(E) <= _w.GetCastRange() - 200 &&
                    Utils.SleepCheck(Me.Handle + "remnantW")
                    )
                {
                    _w.CastSkillShot(E);
                    Utils.Sleep(250, Me.Handle + "remnantW");
                }
                else if (//W Skill
                    _w != null &&
                    _w.CanBeCasted() &&
                    Game.MousePosition.Distance2D(E) >= 500 &&
                    Utils.SleepCheck(Me.Handle + "remnantW")
                    )
                {
                    _w.UseAbility(Game.MousePosition);
                    Utils.Sleep(250, Me.Handle + "remnantW");
                }
                if (remnant.Count(x => x.Distance2D(Me) <= 1200) >= 1)
                {
                    for (var i = 0; i < remnantCount; ++i)
                    {
                        var i1 = i;
                        Task.Delay(350).ContinueWith(_ =>
                        {
                            var r = remnant[i1];
                            if (r != null && Me.Distance2D(r) >= 200)
                            {
                                if (
                                    _d.CanBeCasted() &&
                                    _wmod &&
                                    Me.Distance2D(E) >= 600

                                    && Utils.SleepCheck("nextAction")
                                    )
                                {
                                    _d.UseAbility(Prediction.InFront(Me, 170));
                                    Utils.Sleep(1800 + _d.FindCastPoint(), "nextAction");
                                }
                            }
                        });
                    }
                }
            }
            if (CastE && Me.Distance2D(E) <= 1400 && E != null && E.IsAlive && !Me.IsInvisible())
            {
                if (remnant.Count(x => x.Distance2D(Me) <= 1200) == 0)
                {
                    if (
                        _d.CanBeCasted() &&
                        _e.CanBeCasted()
                        )
                    {
                        if (Me.Distance2D(E) <= _e.GetCastRange() - 50 &&
                            Utils.SleepCheck("Rem"))
                        {
                            _d?.UseAbility(E.Position);
                            Utils.Sleep(1000, "Rem");
                        }
                    }
                }
                if (remnant.Count(x => x.Distance2D(Me) <= 1200) >= 1)
                {
                    for (int i = 0; i < remnantCount; ++i)
                    {
                        var r = remnant[i];

                        if (r.Distance2D(E) >= 300)
                        {
                            if (
                                _d.CanBeCasted() &&
                                (_e != null && _e.CanBeCasted()) &&
                                !r.HasModifier("modifier_earth_spirit_boulder_smash") &&
                                !r.HasModifier("modifier_earth_spirit_geomagnetic_grip")
                                )
                            {
                                if (Me.Distance2D(E) <= _e.GetCastRange() - 50 &&
                                    Utils.SleepCheck("Rem"))
                                {
                                    _d.UseAbility(E.Position);
                                    Utils.Sleep(1000, "Rem");
                                }
                            }
                        }
                        if (r != null &&
                            _e != null &&
                            _e.CanBeCasted() &&
                            Me.CanCast() &&
                            Me.Distance2D(r) < _e.GetCastRange() &&
                            Me.Distance2D(E) <= _e.GetCastRange()
                            )
                        {
                            if (//E Skill
                                E.Distance2D(r) <= 200 &&
                                Utils.SleepCheck(r.Handle + "remnantE")
                                )
                            {
                                _e.UseAbility(r.Position);
                                Utils.Sleep(220, r.Handle + "remnantE");
                            }
                            if (//E Skill
                                Me.Distance2D(E) <= 200 &&
                                E.Distance2D(r) > 0 &&
                                Me.Distance2D(r) >= E.Distance2D(r) &&
                                Utils.SleepCheck(r.Handle + "remnantE")
                                )
                            {
                                _e.UseAbility(r.Position);
                                Utils.Sleep(220, r.Handle + "remnantE");
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 3
0
        public void Combo()
        {
            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key);
            if (!Menu.Item("enabled").IsActive())
            {
                return;
            }
            _q = Me.Spellbook.SpellQ;
            _w = Me.Spellbook.SpellW;
            _r = Me.Spellbook.SpellR;
            var v =
                ObjectManager.GetEntities <Hero>()
                .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion)
                .ToList();

            _mom      = Me.FindItem("item_mask_of_madness");
            _urn      = Me.FindItem("item_urn_of_shadows");
            _dagon    = Me.Inventory.Items.FirstOrDefault(item => item.Name.Contains("item_dagon"));
            _mjollnir = Me.FindItem("item_mjollnir");
            _abyssal  = Me.FindItem("item_abyssal_blade");
            _lotusorb = Me.FindItem("item_lotus_orb");
            _mail     = Me.FindItem("item_blade_mail");
            _armlet   = Me.FindItem("item_armlet");
            _bkb      = Me.FindItem("item_black_king_bar");
            _satanic  = Me.FindItem("item_satanic");
            _blink    = Me.FindItem("item_blink");
            _medall   = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            _shiva    = Me.FindItem("item_shivas_guard");
            E         = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }
            var stoneModif = E.HasModifier("modifier_medusa_stone_gaze_stone");

            if (stoneModif)
            {
                return;
            }
            if (Active && Me.Distance2D(E) <= 2000 && E.IsAlive && !Me.IsInvisible())
            {
                if (
                    _blink != null &&
                    Me.CanCast() &&
                    _blink.CanBeCasted() &&
                    Me.Distance2D(E) < 1180 &&
                    Me.Distance2D(E) > 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                    Utils.SleepCheck("_blink")
                    )
                {
                    _blink.UseAbility(E.Position);
                    Utils.Sleep(250, "_blink");
                }
                if (
                    _q != null && _q.CanBeCasted() &&
                    Me.Distance2D(E) <= _q.GetCastRange() + Me.HullRadius &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                    Utils.SleepCheck("_q")
                    )
                {
                    _q.UseAbility();
                    Utils.Sleep(200, "_q");
                }
                if (                 // MOM
                    _mom != null &&
                    _mom.CanBeCasted() &&
                    Me.CanCast() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                    Utils.SleepCheck("_mom") &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _mom.UseAbility();
                    Utils.Sleep(250, "_mom");
                }
                if (
                    _w != null && _w.CanBeCasted() && Me.Distance2D(E) <= _w.GetCastRange() + Me.HullRadius &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                    !E.HasModifier("modifier_axe_battle_hunger") &&
                    Utils.SleepCheck("_w")
                    )
                {
                    _w.UseAbility(E);
                    Utils.Sleep(200, "_w");
                }
                if (_lotusorb != null && _lotusorb.CanBeCasted() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_lotusorb.Name) &&
                    (v.Count(x => x.Distance2D(Me) <= 650) >= (Menu.Item("Heelm").GetValue <Slider>().Value) && Utils.SleepCheck("_lotusorb"))
                    )
                {
                    _lotusorb.UseAbility(Me);
                    Utils.Sleep(250, "_lotusorb");
                }
                if (                 // Mjollnir
                    _mjollnir != null &&
                    _mjollnir.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                    Utils.SleepCheck("_mjollnir") &&
                    Me.Distance2D(E) <= 900
                    )
                {
                    _mjollnir.UseAbility(Me);
                    Utils.Sleep(250, "_mjollnir");
                }                 // Mjollnir Item end
                if (              // Medall
                    _medall != null &&
                    _medall.CanBeCasted() &&
                    Utils.SleepCheck("Medall") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _medall.UseAbility(E);
                    Utils.Sleep(250, "Medall");
                }                 // Medall Item end
                if (              // Abyssal Blade
                    _abyssal != null &&
                    _abyssal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsStunned() &&
                    !E.IsHexed() &&
                    Utils.SleepCheck("_abyssal") &&
                    Me.Distance2D(E) <= 400
                    )
                {
                    _abyssal.UseAbility(E);
                    Utils.Sleep(250, "_abyssal");
                }                 // Abyssal Item end
                if (_armlet != null && !_armlet.IsToggled &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_armlet.Name) &&
                    Utils.SleepCheck("_armlet"))
                {
                    _armlet.ToggleAbility();
                    Utils.Sleep(300, "_armlet");
                }

                if (_shiva != null && _shiva.CanBeCasted() && Me.Distance2D(E) <= 600 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                    !E.IsMagicImmune() && Utils.SleepCheck("_shiva"))
                {
                    _shiva.UseAbility();
                    Utils.Sleep(100, "_shiva");
                }

                if (                 // Dagon
                    Me.CanCast() &&
                    _dagon != null &&
                    !E.IsLinkensProtected() &&
                    _dagon.CanBeCasted() &&
                    !E.IsMagicImmune() &&
                    !stoneModif &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                    Utils.SleepCheck("_dagon")
                    )
                {
                    _dagon.UseAbility(E);
                    Utils.Sleep(200, "_dagon");
                }                 // Dagon Item end


                if (_urn != null && _urn.CanBeCasted() && _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("_urn"))
                {
                    _urn.UseAbility(E);
                    Utils.Sleep(240, "_urn");
                }
                if (                 // Satanic
                    _satanic != null &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    _satanic.CanBeCasted() &&
                    Me.Distance2D(E) <= Me.AttackRange + 50 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                    Utils.SleepCheck("_satanic")
                    )
                {
                    _satanic.UseAbility();
                    Utils.Sleep(240, "_satanic");
                }                 // Satanic Item end
                if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                             (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("_mail"))
                {
                    _mail.UseAbility();
                    Utils.Sleep(100, "_mail");
                }
                if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                           (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("_bkb"))
                {
                    _bkb.UseAbility();
                    Utils.Sleep(100, "_bkb");
                }
                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
                if (_q != null && _q.IsInAbilityPhase && v.Count(x => x.Distance2D(Me) <= _q.GetCastRange() + Me.HullRadius + 23) == 0 && Utils.SleepCheck("Phase"))
                {
                    Me.Stop();
                    Utils.Sleep(100, "Phase");
                }
            }
            if (Menu.Item("kill").IsActive())
            {
                if (_r == null || !Me.IsAlive)
                {
                    return;
                }
                var count = v.Count();
                if (count <= 0)
                {
                    return;
                }

                for (int i = 0; i < count; ++i)
                {
                    if (_w != null && _w.CanBeCasted() && Menu.Item("HUNGER").IsActive())
                    {
                        if (!v[i].HasModifier("modifier_axe_battle_hunger") &&
                            Me.Distance2D(v[i]) <= _w.GetCastRange() + Me.HullRadius &&
                            Me.Mana >= _r.ManaCost + 180 &&
                            Utils.SleepCheck(Me.Handle.ToString()))
                        {
                            _w.UseAbility(v[i]);
                            Utils.Sleep(400, Me.Handle.ToString());
                        }
                    }
                    if (!_r.CanBeCasted())
                    {
                        return;
                    }
                    _damage = Me.AghanimState() ? new[] { 0, 300, 425, 550 } : new[] { 0, 250, 325, 400 };
                    _rDmg   = ((_damage[_r.Level]));

                    if (_r.IsInAbilityPhase && v.Where(x => Me.Distance2D(x) <= _r.GetCastRange() + Me.HullRadius + 24).OrderBy(z => z.Health).First().Health > _rDmg && v[i].Distance2D(Me) <= _r.GetCastRange() + Me.HullRadius + 24 && Utils.SleepCheck(v[i].Handle.ToString()))
                    {
                        Me.Stop();
                        Utils.Sleep(100, v[i].Handle.ToString());
                    }


                    if (v[i].IsFullMagicSpellResist())
                    {
                        return;
                    }

                    if (_blink != null && _blink.CanBeCasted() && _r != null && _r.CanBeCasted() && Menu.Item("_blink").IsActive())
                    {
                        if (Me.Distance2D(v[i]) > _r.GetCastRange() + Me.HullRadius + 24 && v[i].Health < _rDmg && Utils.SleepCheck(v[i].Handle.ToString()))
                        {
                            _blink.UseAbility(v[i].Position);
                            Utils.Sleep(150, v[i].Handle.ToString());
                        }
                    }
                    var bonusRange = Menu.Item("killRange").IsActive() ? Menu.Item("Blade").GetValue <Slider>().Value : 0;
                    if (v[i].Health <= _rDmg && v[i].Distance2D(Me) <= _r.GetCastRange() + Me.HullRadius + 24 + bonusRange && Utils.SleepCheck(v[i].Handle.ToString()))
                    {
                        _r.UseAbility(v[i]);
                        Utils.Sleep(150, v[i].Handle.ToString());
                    }
                }
            }
        }
Ejemplo n.º 4
0
        private void PussyAction(object sender, OnValueChangeEventArgs e)
        {
            var newValue = e.GetNewValue <KeyBind>().Active;

            if (newValue)
            {
                if (Me.HasModifier("modifier_ember_spirit_fire_remnant_timer") && Activator.CanBeCasted() && Me.CanCast())
                {
                    if (Fountain == null)
                    {
                        Log.Error("cant find Fountain");
                        Fountain =
                            ObjectManager.GetEntities <Unit>()
                            .FirstOrDefault(
                                x =>
                                x != null && x.IsValid && x.ClassId == ClassId.CDOTA_Unit_Fountain &&
                                x.Team == Me.Team);
                        return;
                    }
                    Activator.UseAbility(Fountain.Position);
                }
            }
        }
Ejemplo n.º 5
0
        private void AutoSpells()
        {
            _enemies = ObjectManager.GetEntities <Hero>()
                       .Where(x => x.IsVisible && x.IsAlive && x.Team != Me.Team && !x.IsMagicImmune() && !x.IsMagicImmune() && !x.IsIllusion && !x.IsFullMagicSpellResist()).ToList();

            if (Menu.Item("AutoUsage").IsActive())
            {
                E = Toolset.ClosestToMouse(Me, 8000);

                foreach (var v in _enemies)
                {
                    if (Me.IsInvisible())
                    {
                        return;
                    }
                    if (v.IsFullMagiclResistZuus())
                    {
                        return;
                    }
                    _damage[v.Handle] = CalculateDamage(v);

                    var range = Me.HullRadius + (_dagon?.GetCastRange() ?? _w?.GetCastRange());

                    float   angle = Me.FindAngleBetween(v.Position, true);
                    Vector3 pos   = new Vector3((float)(v.Position.X - 290 * Math.Cos(angle)), (float)(v.Position.Y - 290 * Math.Sin(angle)), 0);
                    var     d     = v.Position.X - range * Math.Cos(angle);
                    if (d != null)
                    {
                        Vector3 posBlink = new Vector3((float)d, (float)(v.Position.Y - range * Math.Sin(angle)), 0);
                        var     units    = ObjectManager.GetEntities <Hero>().Where(x =>
                                                                                    !x.Equals(v) &&
                                                                                    x.IsAlive &&
                                                                                    x.Distance2D(pos) < v.Distance2D(pos) &&
                                                                                    x.Distance2D(v) <= 320 &&
                                                                                    x.Team != Me.Team
                                                                                    ).ToList();
                        if (_enemies.Count(
                                x => x.Distance2D(v) <= 500) <= Menu.Item("Heelm").GetValue <Slider>().Value &&
                            _blink != null &&
                            _blink.CanBeCasted() &&
                            Me.CanCast() &&
                            Me.Health >= (Me.MaximumHealth / 100 * Menu.Item("minHealth").GetValue <Slider>().Value) &&
                            v.Health <= _damage[v.Handle] &&
                            Me.Distance2D(posBlink) <= 1180 &&
                            Menu.Item("AutoItems").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                            Me.Distance2D(v) > 500 &&
                            Utils.SleepCheck("blink")
                            )
                        {
                            _blink.UseAbility(posBlink);
                            Utils.Sleep(250, "blink");
                        }
                        if (v.Health <= _damage[v.Handle] && Me.Distance2D(v) <= _w.GetCastRange() + Me.HullRadius + 300)
                        {
                            if (_vail != null &&
                                _vail.CanBeCasted() &&
                                Me.CanCast() &&
                                Menu.Item("AutoItems").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                                Utils.SleepCheck("vail")
                                )
                            {
                                _vail.UseAbility(v.Position);
                                Utils.Sleep(250, "vail");
                            } // orchid Item endelse
                            else if (_ethereal != null &&
                                     _ethereal.CanBeCasted() &&
                                     Me.CanCast() &&
                                     Menu.Item("AutoItems").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                                     Utils.SleepCheck("ethereal")
                                     )
                            {
                                _ethereal.UseAbility(v);
                                Utils.Sleep(250, "ethereal");
                            } // orchid Item end
                            if (!CanIncreaseMagicDmg(Me, v))
                            {
                                if (_dagon != null &&
                                    _dagon.CanBeCasted() &&
                                    Menu.Item("AutoItems").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                                    Utils.SleepCheck("dagon"))
                                {
                                    _dagon.UseAbility(v);
                                    Utils.Sleep(250, "dagon");
                                }
                                else if (_q != null && _q.CanBeCasted() && Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                                         Utils.SleepCheck("Q"))
                                {
                                    _q.UseAbility(v);
                                    Utils.Sleep(250, "Q");
                                }
                                else if (_w != null && _w.CanBeCasted() && Me.Distance2D(v) <= _w.GetCastRange() + Me.HullRadius && Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                         Utils.SleepCheck("W"))
                                {
                                    _w.UseAbility(v.Position);
                                    Utils.Sleep(250, "W");
                                }
                                else if (_w != null && _w.CanBeCasted() && units.Count(x => x.Distance2D(pos) <= 300) == 0 && Me.Distance2D(v) <= _w.GetCastRange() + Me.HullRadius + 300 && Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                         Utils.SleepCheck("W"))
                                {
                                    _w.UseAbility(pos);
                                    Utils.Sleep(250, "W");
                                }
                                else if (_r != null &&
                                         _r.CanBeCasted() &&
                                         (_w == null || !_w.CanBeCasted() || !Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_w.Name)) &&
                                         Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                                         Utils.SleepCheck("R"))
                                {
                                    _r.UseAbility();
                                    Utils.Sleep(250, "R");
                                }
                                else if (_shiva != null &&
                                         _shiva.CanBeCasted() &&
                                         Me.Distance2D(v) <= 600 + Me.HullRadius &&
                                         Menu.Item("AutoItems").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                                         Utils.SleepCheck("shiva"))
                                {
                                    _shiva.UseAbility();
                                    Utils.Sleep(250, "shiva");
                                }
                                if (_w != null && _w.CanBeCasted() && Me.Distance2D(v) >= _w.GetCastRange() + Me.HullRadius && Me.Distance2D(v) <= _w.GetCastRange() + Me.HullRadius + 325 && Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_w.Name) && Utils.SleepCheck("Move"))
                                {
                                    Me.Move(v.Position);
                                    Utils.Sleep(250, "Move");
                                }
                            }
                        }
                    }
                    _damage[v.Handle] = CalculateDamageR(v);
                    if (_r != null && _r.CanBeCasted() &&
                        Menu.Item("AutoUlt").GetValue <AbilityToggler>().IsEnabled(_r.Name))
                    {
                        if (
                            _enemies.Count(
                                x =>
                                x.Health <= _damage[v.Handle]) >=
                            Menu.Item("Heel").GetValue <Slider>().Value)
                        {
                            if ( // SoulRing Item
                                _soul != null &&
                                _soul.CanBeCasted() &&
                                Me.CanCast() &&
                                Me.Mana <= _r.ManaCost &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_soul.Name)
                                )
                            {
                                _soul.UseAbility();
                            } // SoulRing Item end
                            if ( // Arcane Boots Item
                                _arcane != null &&
                                _arcane.CanBeCasted() &&
                                Me.CanCast() &&
                                Me.Mana <= _r.ManaCost &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_arcane.Name)
                                )
                            {
                                _arcane.UseAbility();
                            } // Arcane Boots Item end
                            if (_ethereal != null &&
                                _ethereal.CanBeCasted() &&
                                Me.CanCast() &&
                                Me.Distance2D(v) <= _ethereal.GetCastRange() &&
                                Menu.Item("AutoUltItems").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                                Utils.SleepCheck("ethereal")
                                )
                            {
                                _ethereal.UseAbility(v);
                                Utils.Sleep(250, "ethereal");
                            } // orchid Item end
                            else if (_r != null &&
                                     _r.CanBeCasted() &&
                                     Menu.Item("AutoUlt").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                                     Utils.SleepCheck("R"))
                            {
                                _r.UseAbility();
                                Utils.Sleep(250, "R");
                            }
                            else if (_dagon != null &&
                                     _dagon.CanBeCasted() && Me.Distance2D(v) <= _dagon.GetCastRange() &&
                                     Menu.Item("AutoUltItems").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                                     Utils.SleepCheck("dagon"))
                            {
                                _dagon.UseAbility(v);
                                Utils.Sleep(250, "dagon");
                            }
                        }
                    }
                } // foreach::END
            }
        }         // AutoSpells::END
Ejemplo n.º 6
0
        public void ChasingAll(EventArgs args)
        {
            E = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }
            if (_combokey && E.IsAlive && !Me.IsVisibleToEnemies)
            {
                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
            }
            if (!_combokey || !E.IsAlive || !Me.IsVisibleToEnemies)
            {
                return;
            }
            var list  = ObjectManager.GetEntities <Unit>().Where(spiderlings => spiderlings.ClassId == ClassId.CDOTA_Unit_Broodmother_Spiderling).ToList();
            var count = list.Count();

            for (int s = 0; s < count; ++s)
            {
                if (list[s].Distance2D(E) <= 1500 && Utils.SleepCheck(list[s].Handle + "Spiderlings"))
                {
                    list[s].Attack(E);
                    Utils.Sleep(500, list[s].Handle + "Spiderlings");
                }
            }
            for (int s = 0; s < count; ++s)
            {
                if (list[s].Distance2D(E) >= 1500 && Utils.SleepCheck(list[s].Handle + "Spiderlings"))
                {
                    list[s].Move(Game.MousePosition);
                    Utils.Sleep(500, list[s].Handle + "Spiderlings");
                }
            }


            var linkens = E.IsLinkensProtected();

            if (E.IsAlive && !E.IsIllusion && Me.Distance2D(E) <= 1000)
            {
                _q = Me.Spellbook.SpellQ;

                _w = Me.Spellbook.SpellW;

                _r = Me.Spellbook.SpellR;

                // Item

                _sheep = E.ClassId == ClassId.CDOTA_Unit_Hero_Tidehunter ? null : Me.FindItem("item_sheepstick");

                Me.FindItem("item_cheese");

                _orchid = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");

                _soul = Me.FindItem("item_soul_ring");

                _shiva = Me.FindItem("item_shivas_guard");

                _dagon = Me.Inventory.Items.FirstOrDefault(item => item.Name.Contains("item_dagon"));

                _mom = Me.FindItem("item_mask_of_madness");

                _abyssal = Me.FindItem("item_abyssal_blade");

                _mjollnir = Me.FindItem("item_mjollnir");

                _halberd = Me.FindItem("item_heavens_halberd");

                _mail = Me.FindItem("item_blade_mail");

                _bkb = Me.FindItem("item_black_king_bar");

                _medall = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");

                _satanic = Me.FindItem("item_satanic");

                if (         // Q Skill
                    _q != null &&
                    _q.CanBeCasted() &&
                    Me.CanCast() &&
                    Me.IsVisibleToEnemies &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                    Me.Distance2D(E) <= 600 &&
                    Utils.SleepCheck("Q")
                    )

                {
                    _q.UseAbility(E);
                    Utils.Sleep(250, "Q");
                }         // Q Skill end



                if (        //R Skill
                    _r != null &&
                    _r.CanBeCasted() &&
                    Me.CanCast() &&
                    Me.Distance2D(E) <= 350 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                    Utils.SleepCheck("R")
                    )
                {
                    _r.UseAbility();
                    Utils.Sleep(250, "R");
                }         // R Skill end


                if (         // orchid
                    _orchid != null &&
                    _orchid.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    !linkens &&
                    Utils.SleepCheck("orchid") &&
                    Me.IsVisibleToEnemies &&
                    Me.Distance2D(E) <= 1000
                    )
                {
                    _orchid.UseAbility(E);
                    Utils.Sleep(250, "orchid");
                }         // orchid Item end

                if (      // sheep
                    _sheep != null &&
                    Me.IsVisibleToEnemies &&
                    _sheep.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    !linkens &&
                    Utils.SleepCheck("sheep") &&
                    Me.Distance2D(E) <= 600
                    )
                {
                    _sheep.UseAbility(E);
                    Utils.Sleep(250, "sheep");
                }         // sheep Item end

                if (      // Soul Item
                    _soul != null &&
                    _q != null &&
                    _q.CanBeCasted() &&
                    Me.Health >= (Me.MaximumHealth * 0.6) &&
                    Me.Mana <= _q.ManaCost &&
                    _soul.CanBeCasted())
                {
                    _soul.UseAbility();
                }         // Soul Item end

                if (      // Shiva Item
                    _shiva != null &&
                    Me.IsVisibleToEnemies &&
                    _shiva.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Utils.SleepCheck("shiva") &&
                    Me.Distance2D(E) <= 600
                    )
                {
                    _shiva.UseAbility();
                    Utils.Sleep(250, "shiva");
                }         // Shiva Item end

                if (      // MOM
                    _mom != null &&
                    _mom.CanBeCasted() &&
                    Me.CanCast() &&
                    Utils.SleepCheck("mom") &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _mom.UseAbility();
                    Utils.Sleep(250, "mom");
                }         // MOM Item end

                if (      // Medall
                    _medall != null &&
                    Me.IsVisibleToEnemies &&
                    _medall.CanBeCasted() &&

                    Utils.SleepCheck("Medall") &&
                    Me.Distance2D(E) <= 500
                    )
                {
                    _medall.UseAbility(E);
                    Utils.Sleep(250, "Medall");
                }         // Medall Item end

                if (      // Abyssal Blade
                    _abyssal != null &&
                    Me.IsVisibleToEnemies &&
                    _abyssal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Utils.SleepCheck("abyssal") &&
                    Me.Distance2D(E) <= 400
                    )
                {
                    _abyssal.UseAbility(E);
                    Utils.Sleep(250, "abyssal");
                }         // Abyssal Item end

                if (      // Hellbard
                    _halberd != null &&
                    Me.IsVisibleToEnemies &&
                    _halberd.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Utils.SleepCheck("halberd") &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _halberd.UseAbility(E);
                    Utils.Sleep(250, "halberd");
                }         // Hellbard Item end

                if (      // Mjollnir
                    _mjollnir != null &&
                    Me.IsVisibleToEnemies &&
                    _mjollnir.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Utils.SleepCheck("mjollnir") &&
                    Me.Distance2D(E) <= 600
                    )
                {
                    _mjollnir.UseAbility(Me);
                    Utils.Sleep(250, "mjollnir");
                }         // Mjollnir Item end
                var v =
                    ObjectManager.GetEntities <Hero>()
                    .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion)
                    .ToList();
                if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                             (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                    Utils.SleepCheck("mail"))
                {
                    _mail.UseAbility();
                    Utils.Sleep(100, "mail");
                }
                if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                           (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                    Utils.SleepCheck("bkb"))
                {
                    _bkb.UseAbility();
                    Utils.Sleep(100, "bkb");
                }
                if (        // Dagon
                    _dagon != null &&
                    _dagon.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Utils.SleepCheck("dagon")
                    )
                {
                    _dagon.UseAbility(E);
                    Utils.Sleep(250, "dagon");
                }         // Dagon Item end


                if (        // Satanic
                    _satanic != null &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    _satanic.CanBeCasted() &&
                    Me.Distance2D(E) <= 300 &&
                    Utils.SleepCheck("Satanic")
                    )
                {
                    _satanic.UseAbility();
                    Utils.Sleep(250, "Satanic");
                }         // Satanic Item end

                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }


                /***************************************WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW**********************************/

                var web =
                    ObjectManager.GetEntities <Unit>().Where(unit => unit.Name == "npc_dota_broodmother_web").ToList();
                var spinWeb = GetClosestToWeb(web, Me);
                if (_w != null && _w.CanBeCasted() && Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name))
                {
                    if ((Me.Distance2D(spinWeb) >= 900 && E.Distance2D(spinWeb) >= 900) && Me.Distance2D(E) <= 800 && Utils.SleepCheck(spinWeb.Handle + "SpideWeb"))
                    {
                        _w.UseAbility(E.Predict(1100));
                        Utils.Sleep(300, spinWeb.Handle + "SpideWeb");
                    }
                }
            }
            /***************************************WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW**********************************/
        }
Ejemplo n.º 7
0
        public void Combo()
        {
            if (!Menu.Item("enabled").IsActive())
            {
                return;
            }
            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key) && !Game.IsChatOpen;

            _q        = Me.Spellbook.SpellQ;
            _w        = Me.Spellbook.SpellW;
            _r        = Me.FindSpell("ursa_enrage");
            _shiva    = Me.FindItem("item_shivas_guard");
            _mom      = Me.FindItem("item_mask_of_madness");
            _urn      = Me.FindItem("item_urn_of_shadows");
            _dagon    = Me.Inventory.Items.FirstOrDefault(item => item.Name.Contains("item_dagon"));
            _mjollnir = Me.FindItem("item_mjollnir");
            _orchid   = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            _abyssal  = Me.FindItem("item_abyssal_blade");
            _mail     = Me.FindItem("item_blade_mail");
            _bkb      = Me.FindItem("item_black_king_bar");
            _satanic  = Me.FindItem("item_satanic");
            _blink    = Me.FindItem("item_blink");
            _medall   = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            E         = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }

            _sheep = E.ClassId == ClassId.CDOTA_Unit_Hero_Tidehunter ? null : Me.FindItem("item_sheepstick");
            var stoneModif = E.HasModifier("modifier_medusa_stone_gaze_stone");


            var v =
                ObjectManager.GetEntities <Hero>()
                .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && !x.IsMagicImmune())
                .ToList();
            var modifInv = Me.IsInvisible();

            if (Active && Me.Distance2D(E) <= 1700 && E != null && E.IsAlive)
            {
                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
                //var Wmod = Me.Modifiers.FirstOrDefault(y => y.Name == "modifier_ursa_overpower");
                //if (Wmod.StackCount == 0)
            }
            if (Active && Me.Distance2D(E) <= 1400 && E != null && E.IsAlive && !modifInv)
            {
                if (
                    _q != null && _q.CanBeCasted() && Me.Distance2D(E) <= 200 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                    Utils.SleepCheck("Q")
                    )
                {
                    _q.UseAbility();
                    Utils.Sleep(200, "Q");
                }
                if (
                    _w != null && _w.CanBeCasted() && Me.Distance2D(E) <= 1700 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                    !Me.HasModifier("modifier_ursa_overpower") &&
                    Utils.SleepCheck("W")
                    )
                {
                    _w.UseAbility();
                    Utils.Sleep(200, "W");
                }
                if (
                    _r != null && _r.CanBeCasted() && Me.Distance2D(E) <= 200 &&
                    Me.HasModifier("modifier_ursa_overpower") &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                    Utils.SleepCheck("R")
                    )
                {
                    _r.UseAbility();
                    Utils.Sleep(200, "R");
                }
                if (                 // sheep
                    _sheep != null &&
                    _sheep.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsLinkensProtected() &&
                    !E.IsMagicImmune() &&
                    Me.Distance2D(E) <= 1400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) &&
                    Utils.SleepCheck("sheep")
                    )
                {
                    _sheep.UseAbility(E);
                    Utils.Sleep(250, "sheep");
                }                 // sheep Item end
                if (
                    _blink != null &&
                    Me.CanCast() &&
                    _blink.CanBeCasted() &&
                    Me.Distance2D(E) < 1180 &&
                    Me.Distance2D(E) > 300 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                    Utils.SleepCheck("blink")
                    )
                {
                    _blink.UseAbility(E.Position);
                    Utils.Sleep(250, "blink");
                }

                if (                 // Abyssal Blade
                    _abyssal != null &&
                    _abyssal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsStunned() &&
                    !E.IsHexed() &&
                    Utils.SleepCheck("abyssal") &&
                    Me.Distance2D(E) <= 400
                    )
                {
                    _abyssal.UseAbility(E);
                    Utils.Sleep(250, "abyssal");
                }                 // Abyssal Item end
                if (              // Mjollnir
                    _mjollnir != null &&
                    _mjollnir.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                    Utils.SleepCheck("mjollnir") &&
                    Me.Distance2D(E) <= 900
                    )
                {
                    _mjollnir.UseAbility(Me);
                    Utils.Sleep(250, "mjollnir");
                }                 // Mjollnir Item end
                if (              // Medall
                    _medall != null &&
                    _medall.CanBeCasted() &&
                    Utils.SleepCheck("Medall") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _medall.UseAbility(E);
                    Utils.Sleep(250, "Medall");
                }                 // Medall Item end

                if (              // MOM
                    _mom != null &&
                    _mom.CanBeCasted() &&
                    Me.CanCast() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mom.Name) &&
                    Utils.SleepCheck("mom") &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _mom.UseAbility();
                    Utils.Sleep(250, "mom");
                }
                if (_orchid != null && _orchid.CanBeCasted() && Me.Distance2D(E) <= 900 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) && Utils.SleepCheck("orchid"))
                {
                    _orchid.UseAbility(E);
                    Utils.Sleep(100, "orchid");
                }

                if (_shiva != null && _shiva.CanBeCasted() && Me.Distance2D(E) <= 600 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                    !E.IsMagicImmune() && Utils.SleepCheck("Shiva"))
                {
                    _shiva.UseAbility();
                    Utils.Sleep(100, "Shiva");
                }

                if (                 // Dagon
                    Me.CanCast() &&
                    _dagon != null &&
                    !E.IsLinkensProtected() &&
                    _dagon.CanBeCasted() &&
                    !E.IsMagicImmune() &&
                    !stoneModif &&
                    Utils.SleepCheck("dagon")
                    )
                {
                    _dagon.UseAbility(E);
                    Utils.Sleep(200, "dagon");
                }                 // Dagon Item end


                if (_urn != null && _urn.CanBeCasted() && _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("urn"))
                {
                    _urn.UseAbility(E);
                    Utils.Sleep(240, "urn");
                }
                if (                 // Satanic
                    _satanic != null &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    _satanic.CanBeCasted() &&
                    Me.Distance2D(E) <= Me.AttackRange + 50 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                    Utils.SleepCheck("satanic")
                    )
                {
                    _satanic.UseAbility();
                    Utils.Sleep(240, "satanic");
                }                 // Satanic Item end
                if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                             (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                {
                    _mail.UseAbility();
                    Utils.Sleep(100, "mail");
                }
                if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                           (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("bkb"))
                {
                    _bkb.UseAbility();
                    Utils.Sleep(100, "bkb");
                }
                if (Menu.Item("logic").IsActive())
                {
                    if (_mail != null && _mail.CanBeCasted() && Toolset.HasStun(E) && !E.IsStunned() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                    {
                        _mail.UseAbility();
                        Utils.Sleep(100, "mail");
                    }
                    if (_bkb != null && _bkb.CanBeCasted() && Toolset.HasStun(E) && !E.IsStunned() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("bkb"))
                    {
                        _bkb.UseAbility();
                        Utils.Sleep(100, "bkb");
                    }
                }
            }
        }
Ejemplo n.º 8
0
        //private int[] qDmg = new int[4] {40, 80, 120, 160};

        public void Combo()
        {
            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key) && !Game.IsChatOpen;
            E      = Toolset.ClosestToMouse(Me);

            if (!Menu.Item("enabled").IsActive())
            {
                return;
            }
            if (E == null)
            {
                return;
            }
            if (Active && E.IsAlive && !E.IsInvul() && !E.IsIllusion)
            {
                _q = Me.Spellbook.SpellQ;

                _w = Me.Spellbook.SpellW ?? Me.FindSpell("tusk_launch_snowball");

                _e = Me.Spellbook.SpellE;

                _r = Me.Spellbook.SpellR;

                _urn = Me.FindItem("item_urn_of_shadows");

                _blink = Me.FindItem("item_blink");

                _satanic = Me.FindItem("item_satanic");

                _dagon = Me.Inventory.Items.FirstOrDefault(item => item.Name.Contains("item_dagon"));

                _halberd = Me.FindItem("item_heavens_halberd");

                _medall = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");

                _abyssal = Me.FindItem("item_abyssal_blade");

                _mjollnir = Me.FindItem("item_mjollnir");

                _soul = Me.FindItem("item_soul_ring");

                _arcane = Me.FindItem("item_arcane_boots");

                _mom = Me.FindItem("item_mask_of_madness");

                _shiva = Me.FindItem("item_shivas_guard");

                _mail = Me.FindItem("item_blade_mail");

                _bkb = Me.FindItem("item_black_king_bar");

                var v =
                    ObjectManager.GetEntities <Hero>()
                    .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion)
                    .ToList();

                var linkens      = E.IsLinkensProtected();
                var modifW       = Me.HasModifier("modifier_tusk_snowball_movement");
                var medallModiff =
                    E.HasModifier("modifier_item_medallion_of_courage_armor_reduction") ||
                    E.HasModifier("modifier_item_solar_crest_armor_reduction");



                if (!Me.IsInvisible())
                {
                    if ( // Q Skill
                        _q != null &&
                        _q.CanBeCasted() &&
                        Me.CanCast() &&
                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                        modifW &&
                        !E.IsMagicImmune() &&
                        Me.Distance2D(E) <= 300 &&
                        Utils.SleepCheck("Q")
                        )
                    {
                        _q.UseAbility(E.Predict(400));
                        Utils.Sleep(200, "Q");
                    } // Q Skill end

                    if ( //R Skill
                        _r != null &&
                        (medallModiff ||
                         E.IsMagicImmune() ||
                         _medall == null) &&
                        _r.CanBeCasted() &&
                        Me.CanCast() &&
                        !linkens &&
                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                        Me.Distance2D(E) <= 700 &&
                        Utils.SleepCheck("R")
                        )
                    {
                        _r.UseAbility(E);
                        Utils.Sleep(150, "R");
                    } // R Skill end


                    if (_urn != null && _urn.CanBeCasted() && _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 800 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("urn"))
                    {
                        _urn.UseAbility(E);
                        Utils.Sleep(240, "urn");
                    }
                    float   angle = Me.FindAngleBetween(E.Position, true);
                    Vector3 pos   = new Vector3((float)(E.Position.X + 30 * Math.Cos(angle)), (float)(E.Position.Y + 30 * Math.Sin(angle)), 0);
                    if (
                        _blink != null &&
                        _q.CanBeCasted() &&
                        Me.CanCast() &&
                        _blink.CanBeCasted() &&
                        Me.Distance2D(pos) >= Me.GetAttackRange() + Me.HullRadius + 24 &&
                        Me.Distance2D(pos) <= 1190 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                        Utils.SleepCheck("blink")
                        )
                    {
                        _blink.UseAbility(pos);
                        Utils.Sleep(250, "blink");
                    }
                    if ( // Abyssal Blade
                        _abyssal != null &&
                        _abyssal.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsStunned() &&
                        !E.IsHexed() &&
                        Utils.SleepCheck("abyssal") &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                        Me.Distance2D(E) <= 400
                        )
                    {
                        _abyssal.UseAbility(E);
                        Utils.Sleep(250, "abyssal");
                    } // Abyssal Item end
                    if ( // E Skill
                        _e != null &&
                        _e.CanBeCasted() &&
                        Me.CanCast() &&
                        modifW &&
                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_e.Name) &&
                        !E.IsMagicImmune() &&
                        Me.Distance2D(E) <= 500 &&
                        Utils.SleepCheck("E")
                        )
                    {
                        _e.UseAbility();
                        Utils.Sleep(350, "E");
                    } // E Skill end
                    if ( // SoulRing Item
                        _soul != null &&
                        Me.Mana <= _q.ManaCost &&
                        _soul.CanBeCasted() &&
                        Utils.SleepCheck("soul")
                        )
                    {
                        _soul.UseAbility();
                        Utils.Sleep(250, "soul");
                    } // SoulRing Item end

                    if ( // Arcane Boots Item
                        _arcane != null &&
                        Me.Mana <= _q.ManaCost &&
                        _arcane.CanBeCasted() &&
                        Utils.SleepCheck("arcane")
                        )
                    {
                        _arcane.UseAbility();
                        Utils.Sleep(250, "arcane");
                    } // Arcane Boots Item end

                    if ( // Shiva Item
                        _shiva != null &&
                        _shiva.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsMagicImmune() &&
                        Utils.SleepCheck("shiva") &&
                        Me.Distance2D(E) <= 600 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name)
                        )
                    {
                        _shiva.UseAbility();
                        Utils.Sleep(250, "shiva");
                    } // Shiva Item end

                    if ( // MOM
                        _mom != null &&
                        _mom.CanBeCasted() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mom.Name) &&
                        Me.CanCast() &&
                        Utils.SleepCheck("mom") &&
                        Me.Distance2D(E) <= 700
                        )
                    {
                        _mom.UseAbility();
                        Utils.Sleep(250, "mom");
                    } // MOM Item end

                    if ( // Medall
                        _medall != null &&
                        _medall.CanBeCasted() &&
                        !Me.IsInvisible() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                        Utils.SleepCheck("Medall") &&
                        Me.Distance2D(E) <= 500
                        )
                    {
                        _medall.UseAbility(E);
                        Utils.Sleep(250, "Medall");
                    } // Medall Item end


                    if ( // Hellbard
                        _halberd != null &&
                        _halberd.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsMagicImmune() &&
                        Utils.SleepCheck("halberd") &&
                        Me.Distance2D(E) <= 700 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                        )
                    {
                        _halberd.UseAbility(E);
                        Utils.Sleep(250, "halberd");
                    } // Hellbard Item end

                    if ( // Mjollnir
                        _mjollnir != null &&
                        _mjollnir.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsMagicImmune() &&
                        Utils.SleepCheck("mjollnir") &&
                        Me.Distance2D(E) <= 900 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name)
                        )
                    {
                        _mjollnir.UseAbility(Me);
                        Utils.Sleep(250, "mjollnir");
                    } // Mjollnir Item end

                    if ( // Dagon
                        _dagon != null &&
                        _dagon.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsMagicImmune() &&
                        Utils.SleepCheck("dagon")
                        )
                    {
                        _dagon.UseAbility(E);
                        Utils.Sleep(150, "dagon");
                    } // Dagon Item end


                    if ( // Satanic
                        _satanic != null &&
                        Me.Health <= (Me.MaximumHealth * 0.3) &&
                        _satanic.CanBeCasted() &&
                        Me.Distance2D(E) <= 300 &&
                        Utils.SleepCheck("satanic") &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name)
                        )
                    {
                        _satanic.UseAbility();
                        Utils.Sleep(150, "satanic");
                    } // Satanic Item end

                    if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                                 (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                    {
                        _mail.UseAbility();
                        Utils.Sleep(100, "mail");
                    }
                    if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                               (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("bkb"))
                    {
                        _bkb.UseAbility();
                        Utils.Sleep(100, "bkb");
                    }


                    if ( // W Skill
                        _w != null &&
                        _w.CanBeCasted() &&
                        !E.IsMagicImmune() &&
                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                        Utils.SleepCheck("W")
                        )
                    {
                        _w.UseAbility(E);
                        _w.UseAbility();
                        Utils.Sleep(120, "W");
                    }

                    var sigl = ObjectManager.GetEntities <Unit>().FirstOrDefault(x => (x.ClassId == ClassId.CDOTA_BaseNPC_Tusk_Sigil) &&
                                                                                 x.IsAlive && x.IsControllable);

                    if (Menu.Item("SiglControl").IsActive() && sigl != null)
                    {
                        if (E.Position.Distance2D(sigl.Position) < 1550 &&
                            Utils.SleepCheck(sigl.Handle.ToString()))
                        {
                            sigl.Move(Prediction.InFront(E, 350));
                            Utils.Sleep(350, sigl.Handle.ToString());
                        }
                    }
                }
                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
            }
            if (Active)
            {
                var modifW = Me.HasModifier("modifier_tusk_snowball_movement");
                if (modifW && Menu.Item("SnowBall").IsActive())
                {
                    var teamarm = ObjectManager.GetEntities <Hero>().Where(ally =>
                                                                           ally.Team == Me.Team && ally.IsAlive && Me.Distance2D(ally) <= 395 &&
                                                                           ally.Health >= (ally.MaximumHealth * 0.4) &&
                                                                           !ally.HasModifier("modifier_tusk_snowball_movement_friendly")).ToList();

                    var unitToSnow =
                        ObjectManager.GetEntities <Unit>().Where(x =>
                                                                 ((x.ClassId == ClassId.CDOTA_BaseNPC_Invoker_Forged_Spirit ||
                                                                   x.ClassId == ClassId.CDOTA_Unit_SpiritBear ||
                                                                   x.ClassId == ClassId.CDOTA_BaseNPC_Warlock_Golem ||
                                                                   x.ClassId == ClassId.CDOTA_Unit_Broodmother_Spiderling ||
                                                                   x.ClassId == ClassId.CDOTA_BaseNPC_Creep) &&
                                                                  !x.IsAttackImmune() && !x.IsInvul() && x.IsVisible &&
                                                                  x.IsAlive && Me.Distance2D(x) <= 395) &&
                                                                 x.IsAlive && x.IsControllable &&
                                                                 !x.HasModifier("modifier_tusk_snowball_movement_friendly") &&
                                                                 !x.HasModifier("modifier_tusk_snowball_movement")).ToList();
                    if (teamarm != null)
                    {
                        foreach (Hero v in teamarm)
                        {
                            if (modifW && v.Distance2D(Me) < 395 &&
                                !v.HasModifier("modifier_tusk_snowball_movement_friendly") && !v.IsInvul() &&
                                !v.IsAttackImmune() && v.IsAlive && Utils.SleepCheck(v.Handle.ToString()))
                            {
                                Me.Attack(v);
                                Utils.Sleep(200, v.Handle.ToString());
                            }
                        }
                    }
                    if (unitToSnow != null)
                    {
                        foreach (Unit v in unitToSnow)
                        {
                            if (modifW && v.Distance2D(Me) < 395 &&
                                !v.HasModifier("modifier_tusk_snowball_movement_friendly") && !v.IsInvul() &&
                                !v.IsAttackImmune() && v.IsAlive && Utils.SleepCheck(v.Handle.ToString()))
                            {
                                Me.Attack(v);
                                Utils.Sleep(200, v.Handle.ToString());
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 9
0
        }         // OnClose

        public void Combo()
        {
            if (!Menu.Item("enabled").IsActive() || Game.IsChatOpen || Time.Enabled)
            {
                return;
            }
            Me = ObjectManager.LocalHero;

            Q = Me.Spellbook.SpellQ;
            W = Me.Spellbook.SpellW;
            R = Me.Spellbook.SpellR;

            Leans    = Me.FindItem("item_aether_lens");
            Urn      = Me.FindItem("item_urn_of_shadows");
            Dagon    = Me.Inventory.Items.FirstOrDefault(x => x.Name.Contains("item_dagon"));
            Ethereal = Me.FindItem("item_ethereal_blade");
            Shiva    = Me.FindItem("item_shivas_guard");
            Glimmer  = Me.FindItem("item_glimmer_cape");
            Vail     = Me.FindItem("item_veil_of_discord");
            Orchid   = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            Abyssal  = Me.FindItem("item_abyssal_blade");
            Atos     = Me.FindItem("item_rod_of_atos");
            Bkb      = Me.FindItem("item_black_king_bar");
            Mail     = Me.FindItem("item_blade_mail");
            Lotus    = Me.FindItem("item_lotus_orb");
            Active   = Game.IsKeyDown(Menu.Item("Combo Key").GetValue <KeyBind>().Key);
            var v = ObjectManager.GetEntities <Hero>().Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && !x.IsMagicImmune()).ToList();

            if (Active && Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(W.Name))
            {
                if (Me.HasModifier("modifier_pudge_rot") && v.Count(x => x.Distance2D(Me) <= W.GetCastRange() + Me.HullRadius) == 0)
                {
                    W.ToggleAbility();
                    Time.Start();
                }
                else if (!Me.HasModifier("modifier_pudge_rot") && v.Count(x => x.Distance2D(Me) <= W.GetCastRange() + Me.HullRadius) > 0)
                {
                    W.ToggleAbility();
                    Time.Start();
                }
            }

            E = Toolset.ClosestToMouse(Me);
            if (E == null || !Me.IsAlive)
            {
                return;
            }
            Sheep = E.ClassId == ClassId.CDOTA_Unit_Hero_Tidehunter ? null : Me.FindItem("item_sheepstick");
            if (R.IsInAbilityPhase || R.IsChanneling || Me.IsChanneling())
            {
                return;
            }
            if (Active)
            {
                MinRangeHook = E.HullRadius + 27;
                CastRange    = Leans != null ? (Q.CastRange + 200 + E.HullRadius) : (Q.CastRange + E.HullRadius);
                EMoveSpeed   = E.HasModifier("modifier_spirit_breaker_charge_of_darkness") ? 550 + ((int)E.Spellbook.Spell1.Level * 50) : E.MovementSpeed;

                Vector2 vector = new Vector2((float)Math.Cos(E.RotationRad) * EMoveSpeed, (float)Math.Sin(E.RotationRad) * EMoveSpeed);
                Vector3 start  = new Vector3((float)((0.3 + (Game.Ping / 1000)) * Math.Cos(E.RotationRad) * EMoveSpeed + E.Position.X),
                                             (float)((0.3 + (Game.Ping / 1000)) * Math.Sin(E.RotationRad) * EMoveSpeed + E.NetworkPosition.Y), E.NetworkPosition.Z);
                Vector3 specialPosition = new Vector3((float)(MinRangeHook * Math.Cos(E.RotationRad) + E.NetworkPosition.X),
                                                      (float)(MinRangeHook * Math.Sin(E.RotationRad) + E.NetworkPosition.Y),
                                                      E.NetworkPosition.Z);
                HookPosition = Interception(start, vector, Me.Position, 1600);
                if (
                    Atos != null && Atos.CanBeCasted() && Me.CanCast() && !E.IsMagicImmune() && !E.HasModifier("modifier_spirit_breaker_charge_of_darkness") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(Atos.Name) && Me.Distance2D(E) <= 1500 && Utils.SleepCheck("a")
                    )
                {
                    Atos.UseAbility(E);
                    Utils.Sleep(250, "a");
                }
                else if (Q.CanBeCasted() && Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(Q.Name))
                {
                    if (E.NetworkActivity == NetworkActivity.Move || E.HasModifier("modifier_spirit_breaker_charge_of_darkness"))
                    {
                        for (double i = 0.03; i <= 0.135; i += 0.03)
                        {
                            Vector3 estimated = new Vector3((float)(i * Math.Cos(E.RotationRad) * EMoveSpeed + HookPosition.X),
                                                            (float)(i * Math.Sin(E.RotationRad) * EMoveSpeed + HookPosition.Y), E.NetworkPosition.Z);
                            if (GetTimeToTurn(estimated) <= i)
                            {
                                HookPosition = estimated;
                                TimeTurn     = i;
                                break;
                            }
                        }
                        CastPos = (HookPosition - Me.Position) * ((Q.GetCastRange() + Me.HullRadius) / HookPosition.Distance2D(Me.Position)) + Me.Position;
                        if (Me.Position.Distance2D(HookPosition) < CastRange)
                        {
                            Q.UseAbility(CastPos); Time.Interval = 150 + TimeTurn * 1000;
                            Time.Start();
                        }
                    }
                    else
                    {
                        CastPos = (specialPosition - Me.Position) * ((Q.GetCastRange() + Me.HullRadius) / specialPosition.Distance2D(Me.Position)) + Me.Position;
                        if (Me.Position.Distance2D(E.NetworkPosition) < CastRange)
                        {
                            Q.UseAbility(CastPos);
                            Time.Start();
                        }
                    }
                }
                else
                {
                    if (R.IsInAbilityPhase || R.IsChanneling)
                    {
                        return;
                    }
                    uint countElse = 0;
                    countElse += 1;
                    if (Vail != null && Vail.CanBeCasted() && Me.Distance2D(E) <= 1100 && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(Vail.Name) && Utils.SleepCheck("vail"))
                    {
                        Vail.UseAbility(E.Position);
                        Utils.Sleep(130, "vail");
                    }
                    else
                    {
                        countElse += 1;
                    }
                    if (Orchid != null && Orchid.CanBeCasted() && Me.Distance2D(E) <= 900 && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(Orchid.Name) && Utils.SleepCheck("orchid"))
                    {
                        Orchid.UseAbility(E);
                        Utils.Sleep(100, "orchid");
                    }
                    else
                    {
                        countElse += 1;
                    }
                    if (Shiva != null && Shiva.CanBeCasted() && Me.Distance2D(E) <= 600 && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(Shiva.Name) && !E.IsMagicImmune() && Utils.SleepCheck("Shiva"))
                    {
                        Shiva.UseAbility();
                        Utils.Sleep(100, "Shiva");
                    }
                    else
                    {
                        countElse += 1;
                    }
                    if (Ethereal != null && Ethereal.CanBeCasted() && Me.Distance2D(E) <= 700 && Me.Distance2D(E) <= 400 && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(Ethereal.Name) && Utils.SleepCheck("ethereal"))
                    {
                        Ethereal.UseAbility(E);
                        Utils.Sleep(100, "ethereal");
                    }
                    else
                    {
                        countElse += 1;
                    }
                    if (Dagon != null && Dagon.CanBeCasted() && Me.Distance2D(E) <= Dagon.GetCastRange() && Utils.SleepCheck("dagon"))
                    {
                        Dagon.UseAbility(E);
                        Utils.Sleep(100, "dagon");
                    }
                    else
                    {
                        countElse += 1;
                    }
                    if (Urn != null && Urn.CanBeCasted() && Urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(Urn.Name) && Utils.SleepCheck("urn"))
                    {
                        Urn.UseAbility(E);
                        Utils.Sleep(240, "urn");
                    }
                    else
                    {
                        countElse += 1;
                    }
                    if (Glimmer != null && Glimmer.CanBeCasted() && Me.Distance2D(E) <= 300 && Utils.SleepCheck("glimmer"))
                    {
                        Glimmer.UseAbility(Me);
                        Utils.Sleep(200, "glimmer");
                    }
                    else
                    {
                        countElse += 1;
                    }
                    if (Mail != null && Mail.CanBeCasted() && v.Count(x => x.Distance2D(Me) <= 650) >=
                        (Menu.Item("Heel").GetValue <Slider>().Value) &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(Mail.Name) &&
                        Utils.SleepCheck("mail"))
                    {
                        Mail.UseAbility();
                        Console.WriteLine(countElse.ToString());
                        Utils.Sleep(100, "mail");
                    }
                    else
                    {
                        countElse += 1;
                    }
                    if (Bkb != null && Bkb.CanBeCasted() && v.Count(x => x.Distance2D(Me) <= 650) >=
                        (Menu.Item("Heel").GetValue <Slider>().Value) &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(Bkb.Name) &&
                        Utils.SleepCheck("bkb"))
                    {
                        Bkb.UseAbility();
                        Utils.Sleep(100, "bkb");
                    }

                    else
                    {
                        countElse += 1;
                    }
                    if (Lotus != null && Lotus.CanBeCasted() && v.Count(x => x.Distance2D(Me) <= 650) >= 2 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(Lotus.Name) &&
                        Utils.SleepCheck("lotus"))
                    {
                        Lotus.UseAbility(Me);
                        Utils.Sleep(100, "lotus");
                    }
                    else
                    {
                        countElse += 1;
                    }
                    if (countElse == 11 && R != null && R.CanBeCasted() && Me.Distance2D(E) <= R.GetCastRange() + 150 && (!Urn.CanBeCasted() || Urn.CurrentCharges <= 0) && Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(R.Name) &&
                        Utils.SleepCheck("R")
                        )
                    {
                        R.UseAbility(E);
                        Utils.Sleep(150, "R");
                    }
                    else
                    {
                        countElse += 1;
                    }
                    if (Abyssal != null && !R.CanBeCasted() && Abyssal.CanBeCasted() && !E.IsStunned() && !E.IsHexed() &&
                        Me.Distance2D(E) <= 300 && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(Abyssal.Name) && Utils.SleepCheck("abyssal"))
                    {
                        Abyssal.UseAbility(E);
                        Utils.Sleep(200, "abyssal");
                    }
                    else
                    {
                        countElse += 1;
                    }
                    if (Sheep != null && !R.CanBeCasted() && Sheep.CanBeCasted() && !E.IsStunned() && !E.IsHexed() &&
                        Me.Distance2D(E) <= 900 && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(Sheep.Name) && Utils.SleepCheck("sheep"))
                    {
                        Sheep.UseAbility(E);
                        Utils.Sleep(200, "sheep");
                    }
                    else
                    {
                        countElse += 1;
                    }
                    if (countElse == 14 && Me.Distance2D(E) <= 300 && Mail != null &&
                        Mail.CanBeCasted() && (E.NetworkActivity == NetworkActivity.Attack || E.Spellbook.Spells.All(x => x.IsInAbilityPhase)) &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(Mail.Name) &&
                        Utils.SleepCheck("mail"))
                    {
                        Mail.UseAbility();
                        Utils.Sleep(100, "mail");
                    }
                    else
                    {
                        countElse += 1;
                    }
                    if (countElse == 15 && Lotus != null && Lotus.CanBeCasted() && Me.Distance2D(E) <= 600 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(Lotus.Name) &&
                        Utils.SleepCheck("lotus"))
                    {
                        Lotus.UseAbility(Me);
                        Utils.Sleep(100, "lotus");
                    }
                    if ((R == null || !R.CanBeCasted() || !Q.CanBeCasted() && Me.Distance2D(E) >= R.GetCastRange() + Me.HullRadius && !E.HasModifier("pudge_meat_hook")) && !E.IsAttackImmune())
                    {
                        if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                        {
                            Orbwalking.Orbwalk(E, 0, 1600, true, true);
                        }
                    }
                }
            }
        }
Ejemplo n.º 10
0
        public void Combo()
        {
            //spell
            _q = Me.Spellbook.SpellQ;
            _w = Me.FindSpell("earthshaker_enchant_totem");
            _e = Me.Spellbook.SpellE;
            _r = Me.Spellbook.SpellR;

            // Item
            _ethereal = Me.FindItem("item_ethereal_blade");
            _vail     = Me.FindItem("item_veil_of_discord");
            _cheese   = Me.FindItem("item_cheese");
            _ghost    = Me.FindItem("item_ghost");
            _orchid   = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            _atos     = Me.FindItem("item_rod_of_atos");
            _soul     = Me.FindItem("item_soul_ring");
            _arcane   = Me.FindItem("item_arcane_boots");
            _blink    = Me.FindItem("item_blink");
            _shiva    = Me.FindItem("item_shivas_guard");
            _dagon    = Me.Inventory.Items.FirstOrDefault(item => item.Name.Contains("item_dagon"));

            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key) && !Game.IsChatOpen;

            if (Active && Me.IsAlive && Utils.SleepCheck("activated"))
            {
                E = Toolset.ClosestToMouse(Me);
                if (E == null)
                {
                    return;
                }
                var modifEther = E.HasModifier("modifier_item_ethereal_blade_slow");
                var stoneModif = E.HasModifier("modifier_medusa_stone_gaze_stone");
                var noBlade    = E.HasModifier("modifier_item_blade_mail_reflect");
                _sheep = E.ClassId == ClassId.CDOTA_Unit_Hero_Tidehunter ? null : Me.FindItem("item_sheepstick");
                if (E.IsAlive && E.IsVisible && Me.Distance2D(E) <= 2300 && !noBlade)
                {
                    if (Me.HasModifier("modifier_earthshaker_enchant_totem") && !Me.IsAttacking() && Me.Distance2D(E) <= 300 && Utils.SleepCheck("WMod"))
                    {
                        Me.Attack(E);
                        Utils.Sleep(250, "WMod");
                    }
                    if ( // atos Blade
                        _atos != null &&
                        _atos.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsLinkensProtected() &&
                        !E.IsMagicImmune() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_atos.Name) &&
                        Me.Distance2D(E) <= 2000 &&
                        Utils.SleepCheck("atos")
                        )
                    {
                        _atos.UseAbility(E);
                        Utils.Sleep(250, "atos");
                    } // atos Item end

                    if (
                        _blink != null &&
                        Me.CanCast() &&
                        _blink.CanBeCasted() &&
                        Me.Distance2D(E) > 400 &&
                        Me.Distance2D(E) <= 1180 &&
                        !stoneModif &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                        Utils.SleepCheck("blink")
                        )
                    {
                        _blink.UseAbility(E.Position);
                        Utils.Sleep(250, "blink");
                    }
                    if ( // orchid
                        _orchid != null &&
                        _orchid.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsLinkensProtected() &&
                        !E.IsMagicImmune() &&
                        Me.Distance2D(E) <= 1400 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                        !stoneModif &&
                        Utils.SleepCheck("orchid")
                        )
                    {
                        _orchid.UseAbility(E);
                        Utils.Sleep(250, "orchid");
                    } // orchid Item end
                    if (!_orchid.CanBeCasted() || _orchid == null ||
                        !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name))
                    {
                        if ( // vail
                            _vail != null &&
                            _vail.CanBeCasted() &&
                            Me.CanCast() &&
                            !E.IsMagicImmune() &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                            Me.Distance2D(E) <= 1500 &&
                            Utils.SleepCheck("vail")
                            )
                        {
                            _vail.UseAbility(E.Position);
                            Utils.Sleep(250, "vail");
                        } // orchid Item end
                        if (!_vail.CanBeCasted() || _vail == null ||
                            !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name))
                        {
                            if ( // ethereal
                                _ethereal != null &&
                                _ethereal.CanBeCasted() &&
                                Me.CanCast() &&
                                !E.IsLinkensProtected() &&
                                !E.IsMagicImmune() &&
                                !stoneModif &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                                Utils.SleepCheck("ethereal")
                                )
                            {
                                _ethereal.UseAbility(E);
                                Utils.Sleep(200, "ethereal");
                            } // ethereal Item end
                            if (!_ethereal.CanBeCasted() || _ethereal == null ||
                                !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name))
                            {
                                if (
                                    _w != null &&
                                    _w.CanBeCasted() &&
                                    Me.CanCast() &&
                                    !Me.HasModifier("modifier_earthshaker_enchant_totem") &&
                                    Me.Distance2D(E) < 2300 &&
                                    Me.Distance2D(E) >= 1200 &&
                                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                    Utils.SleepCheck("W"))
                                {
                                    _w.UseAbility();
                                    Utils.Sleep(200, "W");
                                }
                                if (
                                    _w != null &&
                                    _w.CanBeCasted() &&
                                    Me.CanCast() &&
                                    !Me.HasModifier("modifier_earthshaker_enchant_totem") &&
                                    Me.Distance2D(E) < _w.GetCastRange() &&
                                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                    Utils.SleepCheck("W"))
                                {
                                    _w.UseAbility();
                                    Utils.Sleep(200, "W");
                                }
                                if (Me.AghanimState())
                                {
                                    if (
                                        _w != null &&
                                        _w.CanBeCasted() &&
                                        Me.CanCast() &&
                                        !Me.HasModifier("modifier_earthshaker_enchant_totem") &&
                                        Me.Distance2D(E) >= 300 &&
                                        Me.Distance2D(E) < 900 + Me.HullRadius &&
                                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                        Utils.SleepCheck("W"))
                                    {
                                        _w.UseAbility(E.Position);
                                        Utils.Sleep(200, "W");
                                    }
                                    if (
                                        _w != null &&
                                        _w.CanBeCasted() &&
                                        Me.CanCast() &&
                                        !Me.HasModifier("modifier_earthshaker_enchant_totem") &&
                                        Me.Distance2D(E) <= 300 &&
                                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                        Utils.SleepCheck("W"))
                                    {
                                        _w.UseAbility(Me);
                                        Utils.Sleep(200, "W");
                                    }
                                }
                                if (
                                    _q != null &&
                                    _q.CanBeCasted() &&
                                    (E.IsLinkensProtected() ||
                                     !E.IsLinkensProtected()) &&
                                    Me.CanCast() &&
                                    Me.Distance2D(E) < _q.GetCastRange() + Me.HullRadius + 24 &&
                                    !stoneModif &&
                                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                                    Utils.SleepCheck("Q")
                                    )
                                {
                                    _q.UseAbility(E.Position);
                                    Utils.Sleep(330, "Q");
                                }
                                if ( // SoulRing Item
                                    _soul != null &&
                                    _soul.CanBeCasted() &&
                                    Me.CanCast() &&
                                    Me.Health >= (Me.MaximumHealth * 0.6) &&
                                    Me.Mana <= _r.ManaCost &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_soul.Name)
                                    )
                                {
                                    _soul.UseAbility();
                                } // SoulRing Item end

                                if ( // Arcane Boots Item
                                    _arcane != null &&
                                    _arcane.CanBeCasted() &&
                                    Me.CanCast() &&
                                    Me.Mana <= _r.ManaCost &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_arcane.Name)
                                    )
                                {
                                    _arcane.UseAbility();
                                } // Arcane Boots Item end

                                if ( //Ghost
                                    _ghost != null &&
                                    _ghost.CanBeCasted() &&
                                    Me.CanCast() &&
                                    ((Me.Position.Distance2D(E) < 300 &&
                                      Me.Health <= (Me.MaximumHealth * 0.7)) ||
                                     Me.Health <= (Me.MaximumHealth * 0.3)) &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ghost.Name) &&
                                    Utils.SleepCheck("Ghost"))
                                {
                                    _ghost.UseAbility();
                                    Utils.Sleep(250, "Ghost");
                                }

                                if ( // Shiva Item
                                    _shiva != null &&
                                    _shiva.CanBeCasted() &&
                                    Me.CanCast() &&
                                    !E.IsMagicImmune() &&
                                    Utils.SleepCheck("shiva") &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                                    Me.Distance2D(E) <= 600
                                    )
                                {
                                    _shiva.UseAbility();
                                    Utils.Sleep(250, "shiva");
                                } // Shiva Item end
                                if ( // sheep
                                    _sheep != null &&
                                    _sheep.CanBeCasted() &&
                                    Me.CanCast() &&
                                    !E.IsLinkensProtected() &&
                                    !E.IsMagicImmune() &&
                                    !E.IsRooted() &&
                                    !E.IsHexed() &&
                                    !E.IsStunned() &&
                                    Me.Distance2D(E) <= 1400 &&
                                    !stoneModif &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) &&
                                    Utils.SleepCheck("sheep")
                                    )
                                {
                                    _sheep.UseAbility(E);
                                    Utils.Sleep(250, "sheep");
                                } // sheep Item end

                                if ( // Dagon
                                    Me.CanCast() &&
                                    _dagon != null &&
                                    (_ethereal == null ||
                                     (modifEther ||
                                      _ethereal.Cooldown < 18)) &&
                                    !E.IsLinkensProtected() &&
                                    _dagon.CanBeCasted() &&
                                    Me.Distance2D(E) <= 1400 &&
                                    !E.IsMagicImmune() &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                                    !stoneModif &&
                                    Utils.SleepCheck("dagon")
                                    )
                                {
                                    _dagon.UseAbility(E);
                                    Utils.Sleep(200, "dagon");
                                } // Dagon Item end

                                if (
                                    // cheese
                                    _cheese != null &&
                                    _cheese.CanBeCasted() &&
                                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                                    Me.Distance2D(E) <= 700 &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_cheese.Name) &&
                                    Utils.SleepCheck("cheese")
                                    )
                                {
                                    _cheese.UseAbility();
                                    Utils.Sleep(200, "cheese");
                                } // cheese Item end
                            }
                        }
                    }
                    if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1600 && !Me.HasModifier("modifier_earthshaker_enchant_totem"))
                    {
                        Orbwalking.Orbwalk(E, 0, 1600, true, true);
                    }
                }
                Utils.Sleep(150, "activated");
            }
            AutoSpells();
        }
Ejemplo n.º 11
0
        } // GetDamageTaken::END

        private void AutoSpells()
        {
            _enemies = ObjectManager.GetEntities <Hero>()
                       .Where(x => x.IsVisible && x.IsAlive && x.Team != Me.Team && !x.IsMagicImmune() && !x.IsIllusion).ToList();

            if (Menu.Item("autoUlt").IsActive())
            {
                E = Toolset.ClosestToMouse(Me, 9000);

                foreach (var v in _enemies.Where(x => !x.IsMagicImmune()))
                {
                    _damage[v.Handle] = GetDamageTaken(v, ref _enemies);

                    if (Me.IsInvisible())
                    {
                        return;
                    }

                    if (
                        _enemies.Count(
                            x => x.Health <= _damage[v.Handle] && v.Distance2D(x) <= _r.GetCastRange() + Me.HullRadius + 24) >=
                        Menu.Item("Heel").GetValue <Slider>().Value)
                    {
                        uint elsecount = 0; elsecount += 1;
                        if (_blink != null &&
                            Me.CanCast() &&
                            _blink.CanBeCasted() &&
                            Me.Distance2D(v) > 100 &&
                            Me.Distance2D(v) <= 1180 &&
                            Utils.SleepCheck("blink")
                            )
                        {
                            _blink.UseAbility(v.Position);
                            Utils.Sleep(250, "blink");
                        }
                        else if (_w != null && _w.CanBeCasted() && Me.Distance2D(v) <= 900 + Me.HullRadius + 24 && Me.AghanimState() &&
                                 Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                 (_blink == null || !_blink.CanBeCasted()) &&
                                 Utils.SleepCheck("W"))
                        {
                            _w.UseAbility(v.Position);
                            Utils.Sleep(250, "W");
                        }
                        else
                        {
                            elsecount += 1;
                        }
                        if (_enemies.Count(
                                x => Me.Distance2D(x) <= _r.GetCastRange() + Me.HullRadius + 24) >=
                            Menu.Item("Heel").GetValue <Slider>().Value)
                        {
                            if (_vail != null &&
                                _vail.CanBeCasted() &&
                                Me.CanCast() &&
                                Menu.Item("AutoItems").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                                Me.Distance2D(v) <= 1190 &&
                                Utils.SleepCheck("vail")
                                )
                            {
                                _vail.UseAbility(v.Position);
                                Utils.Sleep(250, "vail");
                            } // orchid Item endelse

                            else
                            {
                                elsecount += 1;
                            }
                            if (elsecount == 3 &&
                                _ethereal != null &&
                                _ethereal.CanBeCasted() &&
                                Me.CanCast() &&
                                Menu.Item("AutoItems").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                                (v.Handle == E.Handle || E.Distance2D(v) > 700) &&
                                Me.Distance2D(v) <= 1190 &&
                                Utils.SleepCheck("ethereal")
                                )
                            {
                                _ethereal.UseAbility(v);
                                Utils.Sleep(250, "ethereal");
                            } // orchid Item end
                            else
                            {
                                elsecount += 1;
                            }
                            if (!CanIncreaseMagicDmg(Me, v))
                            {
                                if (elsecount == 4 && _r != null && _r.CanBeCasted() && Utils.SleepCheck("R") &&
                                    Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_r.Name))
                                {
                                    _r.UseAbility();
                                    Utils.Sleep(250, "R");
                                }
                                if (_r == null || !_r.CanBeCasted() ||
                                    !Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_r.Name))
                                {
                                    if (_q != null && _q.CanBeCasted() && v.Distance2D(Me) <= 525 + Me.HullRadius + 24 &&
                                        Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                                        Utils.SleepCheck("Q"))
                                    {
                                        _q.UseAbility(v.Position);
                                        Utils.Sleep(250, "Q");
                                    }
                                    if (_shiva != null &&
                                        _shiva.CanBeCasted() &&
                                        Menu.Item("AutoItems").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                                        v.Distance2D(Me) <= _shiva.GetCastRange() &&
                                        Utils.SleepCheck("shiva"))
                                    {
                                        _shiva.UseAbility();
                                        Utils.Sleep(250, "shiva");
                                    }
                                }

                                if (Me.AghanimState())
                                {
                                    if (_w != null && _w.CanBeCasted() &&
                                        Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                        v.Distance2D(Me) <= 300 + Me.HullRadius + 24 &&
                                        !Me.HasModifier("modifier_earthshaker_enchant_totem") && Utils.SleepCheck("W"))
                                    {
                                        _w.UseAbility(Me);
                                        Utils.Sleep(250, "W");
                                    }
                                }
                                else if (_w != null && _w.CanBeCasted() &&
                                         Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                         v.Distance2D(Me) <= _w.GetCastRange() + Me.HullRadius + 24 &&
                                         !Me.HasModifier("modifier_earthshaker_enchant_totem") && Utils.SleepCheck("W"))
                                {
                                    _w.UseAbility();
                                    Utils.Sleep(250, "W");
                                }
                            }
                        }
                    }
                    if (_enemies.Count(
                            x => x.Distance2D(v) <= 500) <= Menu.Item("Heelm").GetValue <Slider>().Value &&
                        _blink != null &&
                        _blink.CanBeCasted() &&
                        Me.CanCast() &&
                        v.Health <= _damage[v.Handle] &&
                        Me.Distance2D(v) <= 1180 &&
                        Menu.Item("AutoItems").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                        Me.Distance2D(v) > 300 &&
                        Utils.SleepCheck("blink")
                        )
                    {
                        _blink.UseAbility(v.Position);
                        Utils.Sleep(250, "blink");
                    }
                    else if (_enemies.Count(
                                 x => Me.Distance2D(x) <= 300 + Me.HullRadius + 24 && v.Health <= _damage[v.Handle]) >= 1)
                    {
                        if (_r == null || !_r.CanBeCasted() ||
                            !Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_r.Name) || (_r.CanBeCasted() && _enemies.Count(
                                                                                                            x => x.Health <= _damage[v.Handle] && Me.Distance2D(x) <= _r.GetCastRange() + Me.HullRadius + 24) <=
                                                                                                        Menu.Item("Heel").GetValue <Slider>().Value))
                        {
                            if (Me.Distance2D(v) <= 500 + Me.HullRadius + 24 && Me.Distance2D(v) >= 300 + Me.HullRadius + 24 && Utils.SleepCheck("Move"))
                            {
                                Me.Move(v.Position);
                                Utils.Sleep(500, "Move");
                            }
                            if (v.Distance2D(Me) <= 300 + Me.HullRadius + 24)
                            {
                                if (_vail != null &&
                                    _vail.CanBeCasted() &&
                                    Me.CanCast() &&
                                    Menu.Item("AutoItems").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                                    Utils.SleepCheck("vail")
                                    )
                                {
                                    _vail.UseAbility(v.Position);
                                    Utils.Sleep(250, "vail");
                                } // orchid Item endelse
                                else if (_ethereal != null &&
                                         _ethereal.CanBeCasted() &&
                                         Me.CanCast() &&
                                         Menu.Item("AutoItems").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                                         Utils.SleepCheck("ethereal")
                                         )
                                {
                                    _ethereal.UseAbility(v);
                                    Utils.Sleep(250, "ethereal");
                                } // orchid Item end
                                else if (_q != null && _q.CanBeCasted() &&
                                         Utils.SleepCheck("Q"))
                                {
                                    _q.UseAbility(v.Position);
                                    Utils.Sleep(250, "Q");
                                }
                                else if (_shiva != null &&
                                         _shiva.CanBeCasted() &&
                                         Menu.Item("AutoItems").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                                         Utils.SleepCheck("shiva"))
                                {
                                    _shiva.UseAbility();
                                    Utils.Sleep(250, "shiva");
                                }
                                else if (_dagon != null &&
                                         _dagon.CanBeCasted() &&
                                         Menu.Item("AutoItems").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                                         Utils.SleepCheck("dagon"))
                                {
                                    _dagon.UseAbility(v);
                                    Utils.Sleep(250, "dagon");
                                }
                                else if (_w != null && _w.CanBeCasted() && !Me.AghanimState() &&
                                         Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                         !Me.HasModifier("modifier_earthshaker_enchant_totem") && Utils.SleepCheck("W"))
                                {
                                    _w.UseAbility();
                                    Utils.Sleep(250, "W");
                                }
                                else if (_w != null && _w.CanBeCasted() && Me.AghanimState() &&
                                         Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                         !Me.HasModifier("modifier_earthshaker_enchant_totem") && Utils.SleepCheck("W"))
                                {
                                    _w.UseAbility(Me);
                                    Utils.Sleep(250, "W");
                                }
                                else if (!Me.HasModifier("modifier_earthshaker_enchant_totem") &&
                                         Menu.Item("AutoSpells").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                         v.Health <= (((((Me.MaximumDamage + Me.MinimumDamage) / 2) * (_wDmg[_w.Level] / 100)) + Me.BonusDamage) + _eDmg[_e.Level]))
                                {
                                    if (Me.AghanimState())
                                    {
                                        if (_w != null && _w.CanBeCasted() &&
                                            !Me.HasModifier("modifier_earthshaker_enchant_totem") && Utils.SleepCheck("W"))
                                        {
                                            _w.UseAbility(Me);
                                            Utils.Sleep(250, "W");
                                        }
                                    }
                                    else if (_w != null && _w.CanBeCasted() &&
                                             !Me.HasModifier("modifier_earthshaker_enchant_totem") && Utils.SleepCheck("W"))
                                    {
                                        _w.UseAbility();
                                        Utils.Sleep(250, "W");
                                    }
                                }
                            }
                        }
                    }
                    if (Me.HasModifier("modifier_earthshaker_enchant_totem"))
                    {
                        if (v.Health <=
                            (((Me.MinimumDamage + Me.MaximumDamage) / 2) + Me.BonusDamage) - v.DamageAverage &&
                            !Me.IsAttacking() &&
                            Me.Distance2D(v) <= 300 + Me.HullRadius + 24 &&
                            Utils.SleepCheck("Attack"))
                        {
                            Me.Attack(v);
                            Utils.Sleep(250, "Attack");
                        }
                        else if (Me.Distance2D(v) <= 300 + Me.HullRadius + 24 &&
                                 !Me.IsAttacking() &&
                                 Utils.SleepCheck("Attack"))
                        {
                            Me.Attack(v);
                            Utils.Sleep(250, "Attack");
                        }
                    }
                } // foreach::END
            }
        }         // AutoSpells::END
Ejemplo n.º 12
0
        public void Combo()
        {
            E = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }
            if (!Menu.Item("enabled").IsActive())
            {
                return;
            }
            //spell
            _q = Me.Spellbook.SpellQ;

            _w = Me.Spellbook.SpellW;

            _r = Me.Spellbook.SpellR;

            // Item
            _ethereal = Me.FindItem("item_ethereal_blade");

            _sheep = E.ClassId == ClassId.CDOTA_Unit_Hero_Tidehunter ? null : Me.FindItem("item_sheepstick");

            _vail = Me.FindItem("item_veil_of_discord");

            _cheese = Me.FindItem("item_cheese");

            _ghost = Me.FindItem("item_ghost");

            _orchid = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");

            _atos = Me.FindItem("item_rod_of_atos");

            _soul = Me.FindItem("item_soul_ring");

            _arcane = Me.FindItem("item_arcane_boots");

            _blink = Me.FindItem("item_blink");

            _shiva = Me.FindItem("item_shivas_guard");

            _dagon = Me.Inventory.Items.FirstOrDefault(item => item.Name.Contains("item_dagon"));

            _force = Me.FindItem("item_force_staff");

            _cyclone = Me.FindItem("item_cyclone");

            _orchid = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");

            _atos = Me.FindItem("item_rod_of_atos");
            //Me.Inventory.Items.FirstOrDefault(item => item.Name.Contains("item_dagon"));


            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key) && !Game.IsChatOpen;
            var modifHex = E.Modifiers.Where(y => y.Name == "modifier_sheepstick_debuff")
                           .DefaultIfEmpty(null)
                           .FirstOrDefault();
            var modifEther  = E.HasModifier("modifier_item_ethereal_blade_slow");
            var stoneModif  = E.HasModifier("modifier_medusa_stone_gaze_stone");
            var eulModifier = E.Modifiers.Where(y => y.Name == "modifier_eul_cyclone").DefaultIfEmpty(null).FirstOrDefault();

            var eulModif = E.HasModifier("modifier_eul_cyclone");
            var noBlade  = E.HasModifier("modifier_item_blade_mail_reflect");

            if (Me.IsAlive)
            {
                if (Active && E.IsVisible && Me.Distance2D(E) <= 2300 && !noBlade)
                {
                    if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900 && !eulModif)
                    {
                        Orbwalking.Orbwalk(E, 0, 1600, true, true);
                    }
                    float   angle = Me.FindAngleBetween(E.Position, true);
                    Vector3 pos   = new Vector3((float)(E.Position.X - 500 * Math.Cos(angle)), (float)(E.Position.Y - 500 * Math.Sin(angle)), 0);
                    if (
                        _blink != null &&
                        Me.CanCast() &&
                        _blink.CanBeCasted() &&
                        Me.Distance2D(E) >= Me.GetAttackRange() + Me.HullRadius &&
                        Me.Distance2D(pos) <= 1180 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                        Utils.SleepCheck("blink")
                        )
                    {
                        _blink.UseAbility(pos);
                        Utils.Sleep(250, "blink");
                    }
                    if (
                        _cyclone != null &&
                        _cyclone.CanBeCasted() &&
                        Me.Distance2D(E) <= 1100 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_cyclone.Name) &&
                        _w.CanBeCasted() &&
                        Utils.SleepCheck("cyclone"))
                    {
                        _cyclone.UseAbility(E);
                        Utils.Sleep(300, "cyclone");
                    }

                    Vector3 start = E.NetworkActivity == NetworkActivity.Move ? new Vector3((float)((_w.GetCastDelay(Me, E, true) + 0.5) * Math.Cos(E.RotationRad) * E.MovementSpeed + E.Position.X),
                                                                                            (float)((_w.GetCastDelay(Me, E, true) + 0.5) * Math.Sin(E.RotationRad) * E.MovementSpeed + E.NetworkPosition.Y), E.NetworkPosition.Z) : E.NetworkPosition;
                    if (_w != null && _w.CanBeCasted() &&
                        Me.Distance2D(start) <= _w.GetCastRange() + Me.HullRadius

                        && Utils.SleepCheck("w") &&
                        (eulModifier != null && eulModifier.RemainingTime <= _w.GetCastDelay(Me, E, true) + 0.5 ||
                         modifHex != null && modifHex.RemainingTime <= _w.GetCastDelay(Me, E, true) + 0.5 ||
                         (_sheep == null || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) || _sheep.Cooldown > 0) &&
                         (_cyclone == null || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_cyclone.Name) || _cyclone.Cooldown < 20 && _cyclone.Cooldown > 0)))
                    {
                        _w.UseAbility(start);
                        Utils.Sleep(150, "w");
                    }
                    if (_cyclone == null || !_cyclone.CanBeCasted() || !_w.CanBeCasted() ||
                        !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_cyclone.Name))
                    {
                        if (eulModif)
                        {
                            return;
                        }

                        if (                         // sheep
                            _sheep != null &&
                            _sheep.CanBeCasted() &&
                            Me.CanCast() &&
                            !E.IsLinkensProtected() &&
                            !E.IsMagicImmune() &&
                            Me.Distance2D(E) <= 1400 &&
                            !stoneModif &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) &&
                            Utils.SleepCheck("sheep")
                            )
                        {
                            _sheep.UseAbility(E);
                            Utils.Sleep(250, "sheep");
                        }                         // sheep Item end
                        if (                      // atos Blade
                            _atos != null &&
                            _atos.CanBeCasted() &&
                            Me.CanCast() &&
                            !E.IsLinkensProtected() &&
                            !E.IsMagicImmune() &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_atos.Name) &&
                            Me.Distance2D(E) <= 2000 &&
                            Utils.SleepCheck("atos")
                            )
                        {
                            _atos.UseAbility(E);

                            Utils.Sleep(250, "atos");
                        }                         // atos Item end

                        if (                      // orchid
                            _orchid != null &&
                            _orchid.CanBeCasted() &&
                            Me.CanCast() &&
                            !E.IsLinkensProtected() &&
                            !E.IsMagicImmune() &&
                            Me.Distance2D(E) <= 1400 &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                            !stoneModif &&
                            Utils.SleepCheck("orchid")
                            )
                        {
                            _orchid.UseAbility(E);
                            Utils.Sleep(250, "orchid");
                        }                         // orchid Item end
                        if (!_orchid.CanBeCasted() || _orchid == null ||
                            !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name))
                        {
                            if (                             // vail
                                _vail != null &&
                                _vail.CanBeCasted() &&
                                Me.CanCast() &&
                                !E.IsMagicImmune() &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                                Me.Distance2D(E) <= 1500 &&
                                Utils.SleepCheck("vail")
                                )
                            {
                                _vail.UseAbility(E.Position);
                                Utils.Sleep(250, "vail");
                            }                             // orchid Item end
                            if (!_vail.CanBeCasted() || _vail == null ||
                                !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name))
                            {
                                if (                                 // ethereal
                                    _ethereal != null &&
                                    _ethereal.CanBeCasted() &&
                                    Me.CanCast() &&
                                    !E.IsLinkensProtected() &&
                                    !E.IsMagicImmune() &&
                                    !stoneModif &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                                    Utils.SleepCheck("ethereal")
                                    )
                                {
                                    _ethereal.UseAbility(E);
                                    Utils.Sleep(200, "ethereal");
                                }                                 // ethereal Item end
                                if (!_ethereal.CanBeCasted() || _ethereal == null ||
                                    !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name))
                                {
                                    if (
                                        _q != null &&
                                        _q.CanBeCasted() &&
                                        Me.CanCast() &&
                                        Me.Distance2D(E) < _q.GetCastRange() + Me.HullRadius &&
                                        !stoneModif &&
                                        !E.IsMagicImmune() &&
                                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                                        Utils.SleepCheck("Q")
                                        )
                                    {
                                        _q.UseAbility(E);
                                        Utils.Sleep(200, "Q");
                                    }

                                    if (
                                        _r != null &&
                                        _r.CanBeCasted() &&
                                        !_q.CanBeCasted() &&
                                        !_w.CanBeCasted() &&
                                        Me.CanCast() &&
                                        Me.Position.Distance2D(E) < 1200 &&
                                        !stoneModif &&
                                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                                        Utils.SleepCheck("R"))
                                    {
                                        _r.UseAbility(E);
                                        Utils.Sleep(330, "R");
                                    }

                                    if (                                     // SoulRing Item
                                        _soul != null &&
                                        _soul.CanBeCasted() &&
                                        Me.CanCast() &&
                                        Me.Health >= (Me.MaximumHealth * 0.4) &&
                                        Me.Mana <= _r.ManaCost &&
                                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_soul.Name)
                                        )
                                    {
                                        _soul.UseAbility();
                                    }                                     // SoulRing Item end

                                    if (                                  // Arcane Boots Item
                                        _arcane != null &&
                                        _arcane.CanBeCasted() &&
                                        Me.CanCast() &&
                                        Me.Mana <= _r.ManaCost &&
                                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_arcane.Name)
                                        )
                                    {
                                        _arcane.UseAbility();
                                    }                                     // Arcane Boots Item end

                                    if (                                  //Ghost
                                        _ghost != null &&
                                        _ghost.CanBeCasted() &&
                                        Me.CanCast() &&
                                        ((Me.Position.Distance2D(E) < 300 &&
                                          Me.Health <= (Me.MaximumHealth * 0.7)) ||
                                         Me.Health <= (Me.MaximumHealth * 0.3)) &&
                                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ghost.Name) &&
                                        Utils.SleepCheck("Ghost"))
                                    {
                                        _ghost.UseAbility();
                                        Utils.Sleep(250, "Ghost");
                                    }


                                    if (                                     // Shiva Item
                                        _shiva != null &&
                                        _shiva.CanBeCasted() &&
                                        Me.CanCast() &&
                                        !E.IsMagicImmune() &&
                                        Utils.SleepCheck("shiva") &&
                                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                                        Me.Distance2D(E) <= 600
                                        )

                                    {
                                        _shiva.UseAbility();
                                        Utils.Sleep(250, "shiva");
                                    }                                     // Shiva Item end

                                    if (                                  // Dagon
                                        Me.CanCast() &&
                                        _dagon != null &&
                                        (_ethereal == null ||
                                         (modifEther ||
                                          _ethereal.Cooldown < 17)) &&
                                        !E.IsLinkensProtected() &&
                                        _dagon.CanBeCasted() &&
                                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                                        !E.IsMagicImmune() &&
                                        !stoneModif &&
                                        Utils.SleepCheck("dagon")
                                        )
                                    {
                                        _dagon.UseAbility(E);
                                        Utils.Sleep(200, "dagon");
                                    }                                     // Dagon Item end

                                    if (
                                        // cheese
                                        _cheese != null &&
                                        _cheese.CanBeCasted() &&
                                        Me.Health <= (Me.MaximumHealth * 0.3) &&
                                        Me.Distance2D(E) <= 700 &&
                                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_cheese.Name) &&
                                        Utils.SleepCheck("cheese")
                                        )
                                    {
                                        _cheese.UseAbility();
                                        Utils.Sleep(200, "cheese");
                                    }                                     // cheese Item end
                                }
                            }
                        }
                    }
                }
                A();
            }
        }
Ejemplo n.º 13
0
        private void A()
        {
            if (Menu.Item("AutoUlt").GetValue <AbilityToggler>().IsEnabled(_r.Name) && _r.CanBeCasted())
            {
                var enemies =
                    ObjectManager.GetEntities <Hero>()
                    .Where(x => x.IsVisible && x.IsAlive && x.Team != Me.Team && !x.IsIllusion).ToList();


                double[] penitence = { 0, 1.15, 1.2, 1.25, 1.3 };
                double[] bloodrage = { 0, 1.15, 1.2, 1.25, 1.3 };
                double[] soul      = { 0, 1.2, 1.3, 1.4, 1.5 };
                foreach (var v in enemies)
                {
                    if (v == null)
                    {
                        return;
                    }

                    _rDmg = new[] { 450, 650, 850 };


                    var    leans  = Me.FindItem("item_aether_lens");
                    var    agh    = (_rDmg[_r.Level - 1]);
                    double damage = (_rDmg[_r.Level - 1] * (1 - v.MagicDamageResist));
                    if (v.NetworkName == "CDOTA_Unit_Hero_Spectre" && v.Spellbook.Spell3.Level > 0)
                    {
                        damage =
                            Math.Floor(_rDmg[_r.Level - 1] *
                                       (1 - (0.10 + v.Spellbook.Spell3.Level * 0.04)) * (1 - v.MagicDamageResist));
                    }
                    if (v.NetworkName == "CDOTA_Unit_Hero_SkeletonKing" &&
                        v.Spellbook.SpellR.CanBeCasted())
                    {
                        damage = 0;
                    }
                    if (leans != null)
                    {
                        damage = damage * 1.08;
                    }

                    if (!Me.AghanimState() && !v.IsLinkensProtected())
                    {
                        if (Me.HasModifier("modifier_item_aether_lens"))
                        {
                            damage = damage * 1.08;
                        }
                        if (v.HasModifier("modifier_kunkka_ghost_ship_damage_absorb"))
                        {
                            damage = damage * 0.5;
                        }
                        if (v.HasModifier("modifier_item_mask_of_madness_berserk"))
                        {
                            damage = damage * 1.3;
                        }
                        if (v.HasModifier("modifier_bloodseeker_bloodrage"))
                        {
                            var blood =
                                ObjectManager.GetEntities <Hero>()
                                .FirstOrDefault(x => x.ClassId == ClassId.CDOTA_Unit_Hero_Bloodseeker);
                            if (blood != null)
                            {
                                damage = damage * bloodrage[blood.Spellbook.Spell1.Level];
                            }
                            else
                            {
                                damage = damage * 1.4;
                            }
                        }


                        if (v.HasModifier("modifier_chen_penitence"))
                        {
                            var chen =
                                ObjectManager.GetEntities <Hero>()
                                .FirstOrDefault(x => x.Team == Me.Team && x.ClassId == ClassId.CDOTA_Unit_Hero_Chen);
                            if (chen != null)
                            {
                                damage = damage * penitence[chen.Spellbook.Spell1.Level];
                            }
                        }


                        if (v.HasModifier("modifier_shadow_demon_soul_catcher"))
                        {
                            var demon =
                                ObjectManager.GetEntities <Hero>()
                                .FirstOrDefault(x => x.Team == Me.Team && x.ClassId == ClassId.CDOTA_Unit_Hero_Shadow_Demon);
                            if (demon != null)
                            {
                                damage = damage * soul[demon.Spellbook.Spell2.Level];
                            }
                        }
                        var spellamplymult = 1 + (Me.TotalIntelligence / 16 / 100);
                        damage = damage * spellamplymult;

                        if (                         // vail
                            _vail != null &&
                            _vail.CanBeCasted() &&
                            Me.Distance2D(v) <= _r.GetCastRange() + Me.HullRadius &&
                            _r.CanBeCasted() &&
                            v.Health <= damage * 1.25 &&
                            v.Health >= damage &&
                            Me.CanCast() &&
                            !v.HasModifier("modifier_item_veil_of_discord_debuff") &&
                            !v.IsMagicImmune() &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                            Me.Distance2D(v) <= _w.GetCastRange() &&
                            Utils.SleepCheck("vail")
                            )
                        {
                            _vail.UseAbility(v.Position);
                            Utils.Sleep(250, "vail");
                        }
                        int etherealdamage = (int)(((Me.TotalIntelligence * 2) + 75));
                        if (                         // vail
                            _ethereal != null &&
                            _ethereal.CanBeCasted() &&
                            _r != null &&
                            _r.CanBeCasted() &&
                            v.Health <= etherealdamage + (damage * 1.4) &&
                            v.Health >= damage &&
                            Me.CanCast() &&
                            !v.HasModifier("modifier_item_ethereal_blade_slow") &&
                            !v.IsMagicImmune() &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                            Me.Distance2D(v) <= _ethereal.GetCastRange() + Me.HullRadius &&
                            Utils.SleepCheck("ethereal")
                            )
                        {
                            _ethereal.UseAbility(v);
                            Utils.Sleep(250, "ethereal");
                        }
                        if (_r != null && v != null && _r.CanBeCasted() &&
                            !v.HasModifier("modifier_tusk_snowball_movement") &&
                            !v.HasModifier("modifier_snowball_movement_friendly") &&
                            !v.HasModifier("modifier_templar_assassin_refraction_absorb") &&
                            !v.HasModifier("modifier_ember_spirit_flame_guard")
                            &&
                            !v.HasModifier("modifier_ember_spirit_sleight_of_fist_caster_invulnerability")
                            &&
                            !v.HasModifier("modifier_ember_spirit_sleight_of_fist_caster_invulnerability") &&
                            !v.HasModifier("modifier_obsidian_destroyer_astral_imprisonment_prison") &&
                            !v.HasModifier("modifier_puck_phase_shift") &&
                            !v.HasModifier("modifier_eul_cyclone") &&
                            !v.HasModifier("modifier_dazzle_shallow_grave") &&
                            !v.HasModifier("modifier_shadow_demon_disruption") &&
                            !v.HasModifier("modifier_necrolyte_reapers_scythe") &&
                            !v.HasModifier("modifier_storm_spirit_ball_lightning") &&
                            !v.HasModifier("modifier_ember_spirit_fire_remnant") &&
                            !v.HasModifier("modifier_nyx_assassin_spiked_carapace") &&
                            !v.HasModifier("modifier_phantom_lancer_doppelwalk_phase") &&
                            !v.FindSpell("abaddon_borrowed_time").CanBeCasted() &&
                            !v.HasModifier("modifier_abaddon_borrowed_time_damage_redirect") &&
                            !v.IsMagicImmune() &&
                            v.Health < damage &&
                            Utils.SleepCheck(v.Handle.ToString())
                            )
                        {
                            _r.UseAbility(v);
                            Utils.Sleep(150, v.Handle.ToString());
                            return;
                        }
                    }
                    if (Me.AghanimState() && !v.IsLinkensProtected())
                    {
                        if (_r != null && v != null && _r.CanBeCasted() &&
                            !v.HasModifier("modifier_tusk_snowball_movement") &&
                            !v.HasModifier("modifier_snowball_movement_friendly") &&
                            !v.HasModifier("modifier_templar_assassin_refraction_absorb") &&
                            !v.HasModifier("modifier_ember_spirit_flame_guard")
                            &&
                            !v.HasModifier("modifier_ember_spirit_sleight_of_fist_caster_invulnerability")
                            &&
                            !v.HasModifier("modifier_ember_spirit_sleight_of_fist_caster_invulnerability")
                            &&
                            !v.HasModifier("modifier_obsidian_destroyer_astral_imprisonment_prison") &&
                            !v.HasModifier("modifier_puck_phase_shift") &&
                            !v.HasModifier("modifier_eul_cyclone") &&
                            !v.HasModifier("modifier_dazzle_shallow_grave") &&
                            !v.HasModifier("modifier_shadow_demon_disruption") &&
                            !v.HasModifier("modifier_necrolyte_reapers_scythe") &&
                            !v.HasModifier("modifier_storm_spirit_ball_lightning") &&
                            !v.HasModifier("modifier_ember_spirit_fire_remnant") &&
                            !v.HasModifier("modifier_nyx_assassin_spiked_carapace") &&
                            !v.HasModifier("modifier_phantom_lancer_doppelwalk_phase") &&
                            !v.FindSpell("abaddon_borrowed_time").CanBeCasted() &&
                            !v.HasModifier("modifier_abaddon_borrowed_time_damage_redirect") &&
                            !v.IsMagicImmune() &&
                            Menu.Item("AutoUlt").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                            v.Health <= (agh - v.HealthRegeneration * _r.ChannelTime) &&
                            Utils.SleepCheck(v.Handle.ToString())
                            )
                        {
                            _r.UseAbility(v);
                            Utils.Sleep(150, v.Handle.ToString());
                            return;
                        }
                    }
                    if (v.IsLinkensProtected() &&
                        (Me.IsVisibleToEnemies || Game.IsKeyDown(Menu.Item("Combo Key").GetValue <KeyBind>().Key)))
                    {
                        if (_force != null && _force.CanBeCasted() && Me.Distance2D(v) < _force.GetCastRange() &&
                            Menu.Item("Link").GetValue <AbilityToggler>().IsEnabled(_force.Name) &&
                            Utils.SleepCheck(v.Handle.ToString()))
                        {
                            _force.UseAbility(v);
                            Utils.Sleep(500, v.Handle.ToString());
                        }
                        else if (_orchid != null && _orchid.CanBeCasted() && Me.Distance2D(v) < _orchid.GetCastRange() &&
                                 Menu.Item("Link").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                                 Utils.SleepCheck(v.Handle.ToString()))
                        {
                            _orchid.UseAbility(v);
                            Utils.Sleep(500, v.Handle.ToString());
                        }
                        else if (_atos != null && _atos.CanBeCasted() && Me.Distance2D(v) < _atos.GetCastRange() - 400 &&
                                 Menu.Item("Link").GetValue <AbilityToggler>().IsEnabled(_atos.Name) &&
                                 Utils.SleepCheck(v.Handle.ToString()))
                        {
                            _atos.UseAbility(v);
                            Utils.Sleep(500, v.Handle.ToString());
                        }
                        else if (_dagon != null && _dagon.CanBeCasted() && Me.Distance2D(v) < _dagon.GetCastRange() &&
                                 Menu.Item("Link").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                                 Utils.SleepCheck(v.Handle.ToString()))
                        {
                            _dagon.UseAbility(v);
                            Utils.Sleep(500, v.Handle.ToString());
                        }
                        else if (_cyclone != null && _cyclone.CanBeCasted() &&
                                 Me.Distance2D(v) < _cyclone.GetCastRange() &&
                                 Menu.Item("Link").GetValue <AbilityToggler>().IsEnabled(_cyclone.Name) &&
                                 Utils.SleepCheck(v.Handle.ToString()))
                        {
                            _cyclone.UseAbility(v);
                            Utils.Sleep(500, v.Handle.ToString());
                        }
                    }
                }
            }
        }
Ejemplo n.º 14
0
        //private int stage;

        public void Combo()
        {
            if (!Menu.Item("enabled").IsActive())
            {
                return;
            }
            E = Toolset.ClosestToMouse(Me);


            if (Me == null || E == null)
            {
                return;
            }
            // skills
            _q = Me.Spellbook.SpellQ;
            _w = Me.Spellbook.SpellW;
            _e = Me.Spellbook.SpellE;
            _d = Me.Spellbook.SpellD;
            _r = Me.Spellbook.SpellR;
            // itens
            _blink    = Me.FindItem("item_blink");
            _dagon    = Me.Inventory.Items.FirstOrDefault(x => x.Name.Contains("item_dagon"));
            _ethereal = Me.FindItem("item_ethereal_blade");
            _shiva    = Me.FindItem("item_shivas_guard");
            _orchid   = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            _vail     = Me.FindItem("item_veil_of_discord");
            _sheep    = Me.FindItem("item_sheepstick");

            //Starting Combo

            var isInAdvantage = (E.HasModifier("modifier_item_blade_mail_reflect") ||
                                 E.HasModifier("modifier_item_lotus_orb_active") ||
                                 E.HasModifier("modifier_nyx_assassin_spiked_carapace") ||
                                 E.HasModifier("modifier_templar_assassin_refraction_damage") ||
                                 E.HasModifier("modifier_ursa_enrage") ||
                                 E.HasModifier("modifier_abaddon_borrowed_time") ||
                                 (E.HasModifier("modifier_dazzle_shallow_grave")));

            if (Game.IsKeyDown(Menu.Item("Full").GetValue <KeyBind>().Key) && Utils.SleepCheck("combo"))
            {
                if (Me.CanCast() && !Me.IsChanneling() && Me.Distance2D(E) <= 1200 &&
                    E.IsVisible && E.IsAlive && !E.IsMagicImmune() &&
                    !isInAdvantage)
                {
                    if (Me.CanCast())
                    {
                        var v =
                            ObjectManager.GetEntities <Hero>()
                            .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && !x.IsMagicImmune())
                            .ToList();
                        var X   = Me.Position.X;
                        var y   = Me.Position.Y;
                        var pos = new Vector3(X, y, Me.Position.Z);
                        if (Me.Position.X < 0)
                        {
                            X = Me.Position.X + 100;
                        }
                        else
                        {
                            X = Me.Position.X - 100;
                        }
                        if (Me.Position.Y < 0)
                        {
                            y = Me.Position.Y + 100;
                        }
                        else
                        {
                            y = Me.Position.Y - 100;
                        }
                        uint elsecount = 0;
                        if (_blink != null &&
                            _blink.CanBeCasted() &&
                            Me.Distance2D(E.Position) > 300 &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name))
                        {
                            _blink.UseAbility(E.Position);
                        }
                        elsecount++;
                        if ( // vail
                            _vail != null &&
                            _vail.CanBeCasted() &&
                            Me.CanCast() &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                            !E.IsMagicImmune() &&
                            Utils.SleepCheck("vail") &&
                            Me.Distance2D(E) <= 1500
                            )
                        {
                            _vail.UseAbility(E.Position);
                        }
                        else
                        {
                            elsecount++;
                        }
                        if (_orchid != null && _orchid.CanBeCasted() &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name))
                        {
                            _orchid.UseAbility(E);
                        }
                        else
                        {
                            elsecount++;
                        }
                        if (_sheep != null && _sheep.CanBeCasted() &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_sheep.Name))
                        {
                            _sheep.UseAbility(E);
                        }
                        else
                        {
                            elsecount++;
                        }
                        if (_ethereal != null &&
                            _ethereal.CanBeCasted() &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name))
                        {
                            _ethereal.UseAbility(E);
                        }
                        else
                        {
                            elsecount++;
                        }
                        if (_q != null &&
                            _q.CanBeCasted() &&
                            (_blink == null ||
                             !_blink.CanBeCasted()) &&
                            Me.Distance2D(E) < _q.GetCastRange() &&
                            Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name))
                        {
                            _q.UseAbility(pos);
                        }
                        else
                        {
                            elsecount++;
                        }

                        if (_w != null && _w.CanBeCasted() && Me.Distance2D(E) < 390 &&
                            Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name))
                        {
                            _w.UseAbility();
                        }
                        else
                        {
                            elsecount++;
                        }
                        if (// Dagon
                            elsecount == 7 &&
                            Me.CanCast() &&
                            _dagon != null &&
                            (_ethereal == null ||
                             (E.HasModifier("modifier_item_ethereal_blade_slow") ||
                              _ethereal.Cooldown < 17)) &&
                            !E.IsLinkensProtected() &&
                            _dagon.CanBeCasted() &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                            !E.IsMagicImmune() &&
                            Utils.SleepCheck("dagon")
                            )
                        {
                            _dagon.UseAbility(E);
                            Utils.Sleep(200, "dagon");
                        }
                        else
                        {
                            elsecount++;   // Dagon Item end
                        }
                        if (elsecount == 8 && _shiva != null &&
                            _shiva.CanBeCasted() &&
                            Me.Distance2D(E) <= 600 &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name))
                        {
                            _shiva.UseAbility();
                        }
                        else
                        {
                            elsecount++;
                        }
                        if (elsecount == 9 && _r != null && _r.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                                                 (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                            Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) && Utils.SleepCheck("R"))
                        {
                            _r.UseAbility(E.Position);
                            Utils.Sleep(100, "R");
                        }
                    }
                    if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                    {
                        Orbwalking.Orbwalk(E, 0, 1600, true, true);
                    }
                }
                Utils.Sleep(250, "combo");
            }
            //Escape-combo
            if (Game.IsKeyDown(Menu.Item("Escape").GetValue <KeyBind>().Key) && Me.Distance2D(E) <= 1200 &&
                E.IsVisible && E.IsAlive && !E.IsMagicImmune() &&
                Utils.SleepCheck("combo2"))
            {
                if (Me.CanCast())
                {
                    var x   = Me.Position.X;
                    var y   = Me.Position.Y;
                    var pos = new Vector3(x, y, Me.Position.Z);
                    if (Me.Position.X < 0)
                    {
                        x = Me.Position.X + 100;
                    }
                    else
                    {
                        x = Me.Position.X - 100;
                    }
                    if (Me.Position.Y < 0)
                    {
                        y = Me.Position.Y + 100;
                    }
                    else
                    {
                        y = Me.Position.Y - 100;
                    }
                    uint elsecount = 0;
                    if (_blink != null &&
                        _blink.CanBeCasted() &&
                        Me.Distance2D(E.Position) > 300 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name))
                    {
                        _blink.UseAbility(E.Position);
                    }
                    elsecount++;
                    if ( // vail
                        _vail != null &&
                        _vail.CanBeCasted() &&
                        Me.CanCast() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                        !E.IsMagicImmune() &&
                        Utils.SleepCheck("vail") &&
                        Me.Distance2D(E) <= 1500
                        )
                    {
                        _vail.UseAbility(E.Position);
                    }
                    else
                    {
                        elsecount++;
                    }
                    if (_orchid != null && _orchid.CanBeCasted() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name))
                    {
                        _orchid.UseAbility(E);
                    }
                    else
                    {
                        elsecount++;
                    }
                    if (_sheep != null && _sheep.CanBeCasted() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_sheep.Name))
                    {
                        _sheep.UseAbility(E);
                    }
                    else
                    {
                        elsecount++;
                    }
                    if (_ethereal != null &&
                        _ethereal.CanBeCasted() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name))
                    {
                        _ethereal.UseAbility(E);
                    }
                    else
                    {
                        elsecount++;
                    }
                    if (_q != null &&
                        _q.CanBeCasted() &&
                        (_blink == null ||
                         !_blink.CanBeCasted()) &&
                        Me.Distance2D(E) < _q.GetCastRange() &&
                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name))
                    {
                        _q.UseAbility(pos);
                    }
                    else
                    {
                        elsecount++;
                    }

                    if (_w != null && _w.CanBeCasted() && Me.Distance2D(E) < 390 &&
                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name))
                    {
                        _w.UseAbility();
                    }
                    else
                    {
                        elsecount++;
                    }
                    if (// Dagon
                        elsecount == 7 &&
                        Me.CanCast() &&
                        _dagon != null &&
                        (_ethereal == null ||
                         (E.HasModifier("modifier_item_ethereal_blade_slow") ||
                          _ethereal.Cooldown < 17)) &&
                        !E.IsLinkensProtected() &&
                        _dagon.CanBeCasted() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                        !E.IsMagicImmune() &&
                        Utils.SleepCheck("dagon")
                        )
                    {
                        _dagon.UseAbility(E);
                        Utils.Sleep(200, "dagon");
                    }
                    else
                    {
                        elsecount++;   // Dagon Item end
                    }
                    if (_shiva != null &&
                        _shiva.CanBeCasted() &&
                        Me.Distance2D(E) <= 600 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name))
                    {
                        _shiva.UseAbility();
                    }
                    else
                    {
                        elsecount++;
                    }
                    if (elsecount == 9 && _e != null &&
                        _e.CanBeCasted() &&
                        _d != null &&
                        _d.CanBeCasted()
                        &&
                        ((_sheep == null || !_sheep.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_sheep.Name)) &&
                         (_shiva == null || !_shiva.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name)) &&
                         (_dagon == null || !_dagon.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled("item_dagon")) &&
                         (_ethereal == null || !_ethereal.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name)) &&
                         (_orchid == null || !_orchid.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name)) &&
                         (_blink == null || !_blink.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name)) &&
                         (_w == null || !_w.CanBeCasted() || Me.Distance2D(E) >= 400 || !Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name)) &&
                         Utils.SleepCheck("1")))
                    {
                        _e.UseAbility();
                        Utils.Sleep(250, "1");
                    }
                    if (
                        _d != null &&
                        _d.CanBeCasted() &&
                        (_sheep == null || !_sheep.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_sheep.Name)) &&
                        (_shiva == null || !_shiva.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name)) &&
                        (_dagon == null || !_dagon.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled("item_dagon")) &&
                        (_ethereal == null || !_ethereal.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name)) &&
                        (_orchid == null || !_orchid.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name)) &&
                        (_blink == null || !_blink.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name)) &&
                        (_w == null || !_w.CanBeCasted() || Me.Distance2D(E) >= 400 || !Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name)) &&
                        Utils.SleepCheck("12"))
                    {
                        var baseDota =
                            ObjectManager.GetEntities <Unit>()
                            .Where(unit => unit.Name == "npc_dota_base" && unit.Team == Me.Team)
                            .ToList();

                        if (baseDota != null)
                        {
                            for (int i = 0; i < baseDota.Count(); ++i)
                            {
                                if (baseDota[i].Distance2D(Me) >= 1200)
                                {
                                    _d.UseAbility();
                                }
                            }
                        }
                        Utils.Sleep(200, "12");
                    }
                }
                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
                Utils.Sleep(300, "combo2");
            }
        }
Ejemplo n.º 15
0
        public void Combo()
        {
            _blink        = Me.FindItem("item_blink");
            _bkb          = Me.FindItem("item_black_king_bar");
            _orchid       = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            _necronomicon = Me.FindItem("item_necronomicon");
            _urn          = Me.FindItem("item_urn_of_shadows");
            _medal        = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            _shiva        = Me.FindItem("item_shivas_guard");
            _manta        = Me.FindItem("item_manta");
            _q            = Me.Spellbook.SpellQ;
            _w            = Me.Spellbook.SpellW;
            _r            = Me.Spellbook.SpellR;
            //manta (when silenced)
            if ((_manta != null && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_manta.Name)) &&
                _manta.CanBeCasted() && Me.IsSilenced() && Utils.SleepCheck("manta"))
            {
                _manta.UseAbility();
                Utils.Sleep(400, "manta");
            }
            if (Game.IsKeyDown(Menu.Item("Combo Key").GetValue <KeyBind>().Key) && !Game.IsChatOpen)
            {
                if (Me.CanCast())
                {
                    _mousepos = Game.MousePosition;
                    E         = Toolset.ClosestToMouse(Me);
                    if (Me.Distance2D(_mousepos) <= 1200)
                    {
                        //drunken haze (main combo)
                        if ((_w != null && Menu.Item("Skills: ").GetValue <AbilityToggler>().IsEnabled(_w.Name)) &&
                            _w.CanBeCasted() &&
                            ((E.Position.Distance2D(Me.Position) < 850) &&
                             (E.Position.Distance2D(Me.Position) > 300)) && _r.CanBeCasted() &&
                            Utils.SleepCheck("W"))
                        {
                            _w.UseAbility(E);
                            Utils.Sleep(150, "W");
                        }
                        //drunken haze (if can't cast ult) --->Сюда добавить переменную отвечающую за ручное выключение ульты из комбо && если ульт выключен
                        if ((_w != null && Menu.Item("Skills: ").GetValue <AbilityToggler>().IsEnabled(_w.Name)) &&
                            _w.CanBeCasted() && E.Position.Distance2D(Me.Position) < 850 &&
                            (!_r.CanBeCasted() || (E.Health < (E.MaximumHealth * 0.50)) ||
                             !(Menu.Item("Skills: ").GetValue <AbilityToggler>().IsEnabled(_r.Name))) && !E.HasModifier("modifier_brewmaster_drunken_haze") &&
                            (E.Health > (E.MaximumHealth * 0.07)) && Utils.SleepCheck("W"))
                        {
                            _w.UseAbility(E);
                            Utils.Sleep(150, "W");
                        }
                        //black king bar
                        if ((_bkb != null && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name)) &&
                            _bkb.CanBeCasted() && Utils.SleepCheck("bkb"))
                        {
                            _bkb.UseAbility();
                            Utils.Sleep(150, "bkb");
                        }
                        //blink
                        if ((_blink != null && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name)) &&
                            _blink.CanBeCasted() && E.Position.Distance2D(Me.Position) <= 1150 &&
                            E.Position.Distance2D(Me.Position) > 300 && Utils.SleepCheck("blink"))
                        {
                            _blink.UseAbility(E.Position);
                            //blink.UseAbility(Me.Distance2D(mousepos) < 1200 ? mousepos : new Vector3(Me.NetworkPosition.X + 1150 * (float)Math.Cos(Me.NetworkPosition.ToVector2().FindAngleBetween(mousepos.ToVector2(), true)), Me.NetworkPosition.Y + 1150 * (float)Math.Sin(Me.NetworkPosition.ToVector2().FindAngleBetween(mousepos.ToVector2(), true)), 100), false);
                            Utils.Sleep(150, "blink");
                        }
                        //orchid
                        if ((_orchid != null && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name)) &&
                            _orchid.CanBeCasted() && (E.Position.Distance2D(Me.Position) < 300) &&
                            Utils.SleepCheck("orchid"))
                        {
                            _orchid.UseAbility(E);
                            Utils.Sleep(150, "orchid");
                        }
                        //necronomicon
                        if (_necronomicon != null && _necronomicon.CanBeCasted() &&
                            (E.Health > (E.MaximumHealth * 0.20)) &&
                            (E.Position.Distance2D(Me.Position) < 400) && Utils.SleepCheck("necronomicon"))
                        {
                            _necronomicon.UseAbility();
                            Utils.Sleep(150, "necronomicon");
                        }
                        //thunder clap
                        if ((_q != null && Menu.Item("Skills: ").GetValue <AbilityToggler>().IsEnabled(_q.Name)) &&
                            _q.CanBeCasted() && (E.Position.Distance2D(Me.Position) < 300) && Utils.SleepCheck("Q"))
                        {
                            _q.UseAbility();
                            Utils.Sleep(150, "Q");
                        }
                        //urn of shadow
                        if ((_urn != null && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name)) &&
                            _urn.CanBeCasted() && Utils.SleepCheck("urn"))
                        {
                            _urn.UseAbility(E);
                            Utils.Sleep(150, "urn");
                        }
                        //medal
                        if ((_medal != null && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medal.Name)) &&
                            _medal.CanBeCasted() && (E.Position.Distance2D(Me.Position) < 300) &&
                            Utils.SleepCheck("medal"))
                        {
                            _medal.UseAbility(E);
                            Utils.Sleep(150, "medal");
                        }
                        //shiva
                        if ((_shiva != null && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name)) &&
                            _shiva.CanBeCasted() && (E.Position.Distance2D(Me.Position) <= 800) &&
                            Utils.SleepCheck("shiva"))
                        {
                            _shiva.UseAbility();
                            Utils.Sleep(150, "shiva");
                        }
                        //manta
                        if ((_manta != null && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_manta.Name)) &&
                            _manta.CanBeCasted() && (E.Position.Distance2D(Me.Position) <= 450) &&
                            Utils.SleepCheck("manta"))
                        {
                            _manta.UseAbility();
                            Utils.Sleep(150, "manta");
                        }
                        //ULTIMATE: R
                        if ((_r != null && Menu.Item("Skills: ").GetValue <AbilityToggler>().IsEnabled(_r.Name)) &&
                            _r.CanBeCasted() && (E.Position.Distance2D(Me.Position) < 500) &&
                            (E.Health > (E.MaximumHealth * 0.35)) && !_q.CanBeCasted() && !_orchid.CanBeCasted() &&
                            !_necronomicon.CanBeCasted() && !_urn.CanBeCasted() && !_medal.CanBeCasted() &&
                            !_shiva.CanBeCasted() && !_manta.CanBeCasted() && Utils.SleepCheck("R"))
                        {
                            _r.UseAbility();
                            Utils.Sleep(1000, "R");
                        }
                        //Moving+Attaking
                        if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                        {
                            Orbwalking.Orbwalk(E, 0, 1600, true, true);
                        }
                    }
                }
            }
            var targets =
                ObjectManager.GetEntities <Hero>()
                .Where(
                    enemy =>
                    enemy.Team == Me.GetEnemyTeam() && !enemy.IsIllusion() && enemy.IsVisible && enemy.IsAlive &&
                    enemy.Health > 0)
                .ToList();


            if (Game.IsKeyDown(Menu.Item("Combo Key").GetValue <KeyBind>().Key))
            {
                if (E.IsAlive && !E.IsInvul() &&
                    (Game.MousePosition.Distance2D(E) <= 1000 || E.Distance2D(Me) <= 600))
                {
                    var checkDrunken = E.HasModifier("modifier_brewmaster_drunken_haze");
                    var checkClap    = E.HasModifier("modifier_brewmaster_thunder_clap");


                    var necronomicons =
                        ObjectManager.GetEntities <Creep>().Where(x => (x.ClassId == ClassId.CDOTA_BaseNPC_Creep) &&
                                                                  x.IsAlive && x.IsControllable);
                    if (necronomicons == null)
                    {
                        return;
                    }
                    foreach (var v in necronomicons)
                    {
                        var archer =
                            ObjectManager.GetEntities <Unit>()
                            .Where(
                                unit =>
                                unit.Name == "npc_dota_necronomicon_archer" && unit.IsAlive &&
                                unit.IsControllable)
                            .ToList();
                        if (archer != null && E.Position.Distance2D(v.Position) <= 650 &&
                            v.Spellbook.SpellQ.CanBeCasted() &&
                            Utils.SleepCheck(v.Handle.ToString()))

                        {
                            v.Spellbook.SpellQ.UseAbility(E);
                            Utils.Sleep(300, v.Handle.ToString());
                        }

                        if (E.Position.Distance2D(v.Position) < 1550 &&
                            Utils.SleepCheck(v.Handle.ToString()))
                        {
                            v.Attack(E);
                            Utils.Sleep(700, v.Handle.ToString());
                        }
                    }

                    //Necronomicon Warrior
                    var necrowarrior =
                        ObjectManager.GetEntities <Creep>().Where(x => (x.ClassId == ClassId.CDOTA_BaseNPC_Creep) &&
                                                                  x.IsAlive && x.IsControllable);
                    if (necrowarrior == null)
                    {
                        return;
                    }
                    foreach (var v in necrowarrior)
                    {
                        if (!(E.Position.Distance2D(v.Position) < 1550) || !Utils.SleepCheck(v.Handle.ToString()))
                        {
                            continue;
                        }
                        v.Attack(E);
                        Utils.Sleep(700, v.Handle.ToString());
                    }
                    //Illusions
                    var illus =
                        ObjectManager.GetEntities <Hero>()
                        .Where(x => x.IsAlive && x.IsControllable && x.Team == Me.Team && x.IsIllusion)
                        .ToList();
                    if (illus == null)
                    {
                        return;
                    }
                    foreach (Hero illusion in illus.TakeWhile(illusion => Utils.SleepCheck("illu")))
                    {
                        illusion.Attack(E);
                        Utils.Sleep(1000, "illu");
                    }

                    var primalstorm =
                        ObjectManager.GetEntities <Unit>()
                        .Where(x => x.ClassId == ClassId.CDOTA_Unit_Brewmaster_PrimalStorm && x.IsAlive);
                    var primalearth =
                        ObjectManager.GetEntities <Unit>()
                        .Where(x => (x.ClassId == ClassId.CDOTA_Unit_Brewmaster_PrimalEarth && x.IsAlive));
                    var primalfire =
                        ObjectManager.GetEntities <Unit>()
                        .Where(x => (x.ClassId == ClassId.CDOTA_Unit_Brewmaster_PrimalFire && x.IsAlive));
                    if (primalearth == null)
                    {
                        return;
                    }
                    foreach (var v in primalearth)
                    {
                        if (E.Position.Distance2D(v.Position) < 850 && v.Spellbook.SpellQ.CanBeCasted() &&
                            Utils.SleepCheck(v.Handle.ToString()))
                        {
                            v.Spellbook.SpellQ.UseAbility(E);
                            Utils.Sleep(400, v.Handle.ToString());
                        }
                        if (E.Position.Distance2D(v.Position) < 300 && v.Spellbook.SpellR.CanBeCasted() &&
                            !checkClap &&
                            Utils.SleepCheck(v.Handle.ToString()))
                        {
                            v.Spellbook.SpellR.UseAbility();
                            Utils.Sleep(400, v.Handle.ToString());
                        }

                        if (E.Position.Distance2D(v.Position) < 1550 &&
                            Utils.SleepCheck(v.Handle.ToString()))
                        {
                            v.Attack(E);
                            Utils.Sleep(700, v.Handle.ToString());
                        }
                    }

                    if (primalstorm == null)
                    {
                        return;
                    }


                    var enumerable = primalstorm as Unit[] ?? primalstorm.ToArray();
                    foreach (var v in enumerable)
                    {
                        if (E.Position.Distance2D(v.Position) < 500 && v.Spellbook.SpellQ.CanBeCasted() &&
                            (Menu.Item("Primalstorm: Use Dispel Magic").GetValue <bool>()) &&
                            (!(Menu.Item("Save mana for Cyclone").GetValue <bool>()) ||
                             (v.Mana > (v.Spellbook.SpellQ.ManaCost + v.Spellbook.SpellW.ManaCost))) &&
                            Utils.SleepCheck(v.Handle.ToString()))
                        {
                            v.Spellbook.SpellQ.UseAbility(E.Position);
                            Utils.Sleep(400, v.Handle.ToString());
                        }
                        if (E.Position.Distance2D(v.Position) < 900 && v.Spellbook.SpellE.CanBeCasted() &&
                            (!(Menu.Item("Save mana for Cyclone").GetValue <bool>()) ||
                             (v.Mana > (v.Spellbook.SpellE.ManaCost + v.Spellbook.SpellW.ManaCost))) &&
                            Utils.SleepCheck(v.Handle.ToString()))
                        {
                            v.Spellbook.SpellE.UseAbility();
                            Utils.Sleep(400, v.Handle.ToString());
                        }
                        if (E.Position.Distance2D(v.Position) < 850 && v.Spellbook.SpellR.CanBeCasted() &&
                            !checkDrunken &&
                            (!(Menu.Item("Save mana for Cyclone").GetValue <bool>()) ||
                             (v.Mana > (v.Spellbook.SpellR.ManaCost + v.Spellbook.SpellW.ManaCost))) &&
                            Utils.SleepCheck(v.Handle.ToString()))
                        {
                            v.Spellbook.SpellR.UseAbility(E);
                            Utils.Sleep(400, v.Handle.ToString());
                        }
                        if (E.Position.Distance2D(v.Position) < 1550 &&
                            Utils.SleepCheck(v.Handle.ToString()))
                        {
                            v.Attack(E);
                            Utils.Sleep(700, v.Handle.ToString());
                        }
                    }
                    // 2 Skill

                    foreach (var target1 in targets)
                    {
                        if ((target1.Health > (target1.MaximumHealth * 0.85)) || ((target1.IsChanneling())))
                        {
                            foreach (var v in enumerable)
                            {
                                _w = v.Spellbook.SpellW;
                                if (v.Spellbook.SpellW.CanBeCasted() &&
                                    ((target1.Position.Distance2D(v.Position) < 600) || (target1.IsChanneling())) &&
                                    (target1.Position.Distance2D(v.Position) < 1550) &&
                                    ((Menu.Item("Primalstorm: Use Cyclone").GetValue <bool>()) ||
                                     (target1.IsChanneling())) &&
                                    ((target1.Position != E.Position) || (target1.IsChanneling())) &&
                                    Utils.SleepCheck("ulti"))
                                {
                                    v.Spellbook.SpellW.UseAbility(target1);
                                    Utils.Sleep(700, "ulti");
                                }
                            }
                        }
                    }
                    //

                    if (primalfire == null)
                    {
                        return;
                    }
                    foreach (var v in primalfire)
                    {
                        if (E.Position.Distance2D(v.Position) < 1550 &&
                            Utils.SleepCheck(v.Handle.ToString()))
                        {
                            v.Attack(E);
                            Utils.Sleep(700, v.Handle.ToString());
                        }
                    }
                }
            }
        }
Ejemplo n.º 16
0
        public async void Combo()
        {
            if (!Game.IsInGame || Game.IsPaused || Game.IsWatchingGame)
            {
                return;
            }

            if (!Menu.Item("enabled").IsActive())
            {
                return;
            }

            E = Toolset.ClosestToMouse(Me);

            if (E == null)
            {
                return;
            }
            _q = Me.Spellbook.SpellQ;

            _w = Me.Spellbook.SpellW;

            _r        = Me.Spellbook.SpellR;
            _mom      = Me.FindItem("item_mask_of_madness");
            _urn      = Me.FindItem("item_urn_of_shadows");
            _dagon    = Me.Inventory.Items.FirstOrDefault(x => x.Name.Contains("item_dagon"));
            _ethereal = Me.FindItem("item_ethereal_blade");
            _halberd  = Me.FindItem("item_heavens_halberd");
            _mjollnir = Me.FindItem("item_mjollnir");
            _armlet   = Me.FindItem("item_armlet");
            _orchid   = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            _abyssal  = Me.FindItem("item_abyssal_blade");
            _mail     = Me.FindItem("item_blade_mail");
            _bkb      = Me.FindItem("item_black_king_bar");
            _blink    = Me.FindItem("item_blink");
            _satanic  = Me.FindItem("item_satanic");
            _medall   = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            var invisModif = Toolset.invUnit(Me);



            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key);

            if (invisModif)
            {
                return;
            }
            if (!Active)
            {
                return;
            }
            {
                if (E != null && (!E.IsValid || !E.IsVisible || !E.IsAlive))
                {
                    E = null;
                }
                if (E == null || !E.IsAlive || E.IsInvul() || E.IsIllusion)
                {
                    return;
                }
                if (!Me.CanCast() || Me.IsChanneling())
                {
                    return;
                }
                var angle = Me.FindAngleBetween(E.Position, true);
                var pos   = new Vector3((float)(E.Position.X - 100 * Math.Cos(angle)), (float)(E.Position.Y - 100 * Math.Sin(angle)), 0);

                if (_blink != null &&
                    _blink.Cooldown <= 0 &&
                    Me.Distance2D(pos) <= 1180 &&
                    Me.Distance2D(E) >= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name))
                {
                    _blink.UseAbility(pos);
                }
                if (_w != null && _w.CanBeCasted() &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name))
                {
                    if (E.NetworkActivity == NetworkActivity.Move)
                    {
                        var vectorOfMovement = new Vector2((float)Math.Cos(E.RotationRad) * E.MovementSpeed, (float)Math.Sin(E.RotationRad) * E.MovementSpeed);
                        var hitPosition      = Interception(E.Position, vectorOfMovement, Me.Position, 933.33f);
                        var hitPosMod        = hitPosition + new Vector3(vectorOfMovement.X * (TimeToTurn(Me, hitPosition)), vectorOfMovement.Y * (TimeToTurn(Me, hitPosition)), 0);
                        var hitPosMod2       = hitPosition + new Vector3(vectorOfMovement.X * (TimeToTurn(Me, hitPosMod)), vectorOfMovement.Y * (TimeToTurn(Me, hitPosMod)), 0);

                        if (GetDistance2D(Me, hitPosMod2) > (755 + E.HullRadius))
                        {
                            return;
                        }
                        if (IsFacing(Me, hitPosMod2))
                        {
                            _w.UseAbility();
                            Trying = true;
                            await Task.Delay(400);         //Avoid trying to W multiple times.

                            Trying = false;
                        }
                        else
                        {
                            Me.Move((hitPosMod2 - Me.Position) * 50 / (float)GetDistance2D(hitPosMod2, Me) + Me.Position);
                        }
                    }
                    else
                    {
                        if (GetDistance2D(Me, E) > (755 + E.HullRadius))
                        {
                            return;
                        }
                        if (IsFacing(Me, E))
                        {
                            _w.UseAbility();
                            Trying = true;
                            await Task.Delay(400);

                            Trying = false;
                        }
                        else
                        {
                            Me.Move((E.Position - Me.Position) * 50 / (float)GetDistance2D(E, Me) + Me.Position);
                        }
                    }
                }
                if (_w != null && (!_w.CanBeCasted() || !Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name)))
                {
                    if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                    {
                        Orbwalking.Orbwalk(E, 0, 1600, true, true);
                    }
                }
                if (_q != null &&
                    _q.CanBeCasted() &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                    Me.Distance2D(E) <= 325 &&
                    Utils.SleepCheck("Q"))
                {
                    _q.UseAbility();
                    Utils.Sleep(200, "Q");
                }
                if (_orchid != null &&
                    _orchid.CanBeCasted() &&
                    Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                    Utils.SleepCheck("orchid"))
                {
                    _orchid.UseAbility(E);
                    Utils.Sleep(100, "orchid");
                }
                if (_r != null &&
                    _r.IsValid &&
                    _r.CanBeCasted() &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                    Me.Health <= Me.MaximumHealth / 100 * Menu.Item("healUlt").GetValue <Slider>().Value &&
                    Utils.SleepCheck("R"))
                {
                    _r.UseAbility();
                    Utils.Sleep(200, "R");
                }

                if (         // MOM
                    _mom != null &&
                    _mom.CanBeCasted() &&
                    Me.CanCast() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mom.Name) &&
                    Utils.SleepCheck("mom") &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _mom.UseAbility();
                    Utils.Sleep(250, "mom");
                }
                if (         // Mjollnir
                    _mjollnir != null &&
                    _mjollnir.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                    Utils.SleepCheck("mjollnir") &&
                    Me.Distance2D(E) <= 900
                    )
                {
                    _mjollnir.UseAbility(Me);
                    Utils.Sleep(250, "mjollnir");
                }         // Mjollnir Item end
                if (      // Medall
                    _medall != null &&
                    _medall.CanBeCasted() &&
                    Utils.SleepCheck("Medall") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _medall.UseAbility(E);
                    Utils.Sleep(250, "Medall");
                }         // Medall Item end
                if (_armlet != null && !_armlet.IsToggled &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_armlet.Name) &&
                    Utils.SleepCheck("armlet"))
                {
                    _armlet.ToggleAbility();
                    Utils.Sleep(300, "armlet");
                }


                if (_ethereal != null && _ethereal.CanBeCasted() &&
                    Me.Distance2D(E) <= 700 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                    Utils.SleepCheck("ethereal"))
                {
                    _ethereal.UseAbility(E);
                    Utils.Sleep(100, "ethereal");
                }

                if (_dagon != null &&
                    _dagon.CanBeCasted() &&
                    Me.Distance2D(E) <= 500 &&
                    Utils.SleepCheck("dagon"))
                {
                    _dagon.UseAbility(E);
                    Utils.Sleep(100, "dagon");
                }
                if (         // Abyssal Blade
                    _abyssal != null &&
                    _abyssal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsStunned() &&
                    !E.IsHexed() &&
                    Utils.SleepCheck("abyssal") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                    Me.Distance2D(E) <= 400
                    )
                {
                    _abyssal.UseAbility(E);
                    Utils.Sleep(250, "abyssal");
                }         // Abyssal Item end
                if (_urn != null && _urn.CanBeCasted() && _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("urn"))
                {
                    _urn.UseAbility(E);
                    Utils.Sleep(240, "urn");
                }
                if (         // Hellbard
                    _halberd != null &&
                    _halberd.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    (E.NetworkActivity == NetworkActivity.Attack ||
                     E.NetworkActivity == NetworkActivity.Crit ||
                     E.NetworkActivity == NetworkActivity.Attack2) &&
                    Utils.SleepCheck("halberd") &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                    )
                {
                    _halberd.UseAbility(E);
                    Utils.Sleep(250, "halberd");
                }
                if (         // Satanic
                    _satanic != null &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    _satanic.CanBeCasted() &&
                    Me.Distance2D(E) <= Me.AttackRange + 50 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                    Utils.SleepCheck("satanic")
                    )
                {
                    _satanic.UseAbility();
                    Utils.Sleep(240, "satanic");
                }         // Satanic Item end
                var v = ObjectManager.GetEntities <Hero>().Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && !x.IsMagicImmune())
                        .ToList();
                if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                             (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                {
                    _mail.UseAbility();
                    Utils.Sleep(100, "mail");
                }
                if (_bkb == null || !_bkb.CanBeCasted() ||
                    (v.Count(x => x.Distance2D(Me) <= 650) < (Menu.Item("Heel").GetValue <Slider>().Value)) ||
                    !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) || !Utils.SleepCheck("bkb"))
                {
                    return;
                }
                _bkb.UseAbility();
                Utils.Sleep(100, "bkb");
            }
        }
Ejemplo n.º 17
0
        public void Combo()
        {
            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key);

            _q = Me.Spellbook.SpellQ;
            _w = Me.Spellbook.SpellW;
            _r = Me.Spellbook.SpellR;


            _mom      = Me.FindItem("item_mask_of_madness");
            _urn      = Me.FindItem("item_urn_of_shadows");
            _dagon    = Me.Inventory.Items.FirstOrDefault(x => x.Name.Contains("item_dagon"));
            _ethereal = Me.FindItem("item_ethereal_blade");
            _halberd  = Me.FindItem("item_heavens_halberd");
            _mjollnir = Me.FindItem("item_mjollnir");
            _armlet   = Me.FindItem("item_armlet");
            _abyssal  = Me.FindItem("item_abyssal_blade");
            _mail     = Me.FindItem("item_blade_mail");
            _bkb      = Me.FindItem("item_black_king_bar");
            _satanic  = Me.FindItem("item_satanic");
            _medall   = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            _shiva    = Me.FindItem("item_shivas_guard");
            var v =
                ObjectManager.GetEntities <Hero>()
                .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && !x.IsMagicImmune())
                .ToList();

            if (_r != null && _r.CanBeCasted() &&
                Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name))
            {
                _dayTime = 190;
                for (int i = 0; i <= 15; ++i)
                {
                    if ((int)Game.GameTime == _dayTime)
                    {
                        _time = _dayTime;
                    }
                    _dayTime += 480;
                }
                //night
                _nightTime = 480;
                for (int i = 0; i <= 15; ++i)
                {
                    if ((int)Game.GameTime == _nightTime)
                    {
                        _time = _nightTime;
                    }
                    else
                    {
                        _nightTime += 480;
                    }
                }
                if ((((int)(Game.GameTime)) == _time))
                {
                    if (_count == 0)
                    {
                        _count = 1;
                        _r.UseAbility();
                        Utils.Sleep(1000, "time");
                    }
                    else if (Utils.SleepCheck("time") && _count == 1)
                    {
                        _count = 0;
                    }
                }
            }
            E = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }
            if (Active)
            {
                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
            }

            if (Active && Me.Distance2D(E) <= 1400 && E != null && E.IsAlive && !Toolset.invUnit(Me))
            {
                if (
                    _w != null && _w.CanBeCasted() && Me.Distance2D(E) <= 700 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                    !E.IsSilenced() &&
                    Utils.SleepCheck("W")
                    )
                {
                    _w.UseAbility(E);
                    Utils.Sleep(200, "W");
                }
                if (
                    _q != null && _q.CanBeCasted() && Me.Distance2D(E) <= 900 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                    Utils.SleepCheck("Q")
                    )
                {
                    _q.UseAbility(E);
                    Utils.Sleep(200, "Q");
                }
                if (                 // MOM
                    _mom != null &&
                    _mom.CanBeCasted() &&
                    Me.CanCast() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mom.Name) &&
                    Utils.SleepCheck("mom") &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _mom.UseAbility();
                    Utils.Sleep(250, "mom");
                }
                if (                 // Mjollnir
                    _mjollnir != null &&
                    _mjollnir.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                    Utils.SleepCheck("mjollnir") &&
                    Me.Distance2D(E) <= 900
                    )
                {
                    _mjollnir.UseAbility(Me);
                    Utils.Sleep(250, "mjollnir");
                }                 // Mjollnir Item end
                if (              // Medall
                    _medall != null &&
                    _medall.CanBeCasted() &&
                    Utils.SleepCheck("Medall") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _medall.UseAbility(E);
                    Utils.Sleep(250, "Medall");
                }                 // Medall Item end
                if (_armlet != null && !_armlet.IsToggled &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_armlet.Name) &&
                    Utils.SleepCheck("armlet"))
                {
                    _armlet.ToggleAbility();
                    Utils.Sleep(300, "armlet");
                }

                if (_shiva != null && _shiva.CanBeCasted() && Me.Distance2D(E) <= 600 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                    !E.IsMagicImmune() && Utils.SleepCheck("Shiva"))
                {
                    _shiva.UseAbility();
                    Utils.Sleep(100, "Shiva");
                }

                if (_ethereal != null && _ethereal.CanBeCasted() &&
                    Me.Distance2D(E) <= 700 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                    Utils.SleepCheck("ethereal"))
                {
                    _ethereal.UseAbility(E);
                    Utils.Sleep(100, "ethereal");
                }

                if (_dagon != null &&
                    _dagon.CanBeCasted() &&
                    Me.Distance2D(E) <= 500 &&
                    Utils.SleepCheck("dagon"))
                {
                    _dagon.UseAbility(E);
                    Utils.Sleep(100, "dagon");
                }
                if (                 // Abyssal Blade
                    _abyssal != null &&
                    _abyssal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsStunned() &&
                    !E.IsHexed() &&
                    Utils.SleepCheck("abyssal") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                    Me.Distance2D(E) <= 400
                    )
                {
                    _abyssal.UseAbility(E);
                    Utils.Sleep(250, "abyssal");
                }                 // Abyssal Item end
                if (_urn != null && _urn.CanBeCasted() && _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("urn"))
                {
                    _urn.UseAbility(E);
                    Utils.Sleep(240, "urn");
                }
                if (                 // Hellbard
                    _halberd != null &&
                    _halberd.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    (E.NetworkActivity == NetworkActivity.Attack ||
                     E.NetworkActivity == NetworkActivity.Crit ||
                     E.NetworkActivity == NetworkActivity.Attack2) &&
                    Utils.SleepCheck("halberd") &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                    )
                {
                    _halberd.UseAbility(E);
                    Utils.Sleep(250, "halberd");
                }
                if (                 // Satanic
                    _satanic != null &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    _satanic.CanBeCasted() &&
                    Me.Distance2D(E) <= Me.AttackRange + 50 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                    Utils.SleepCheck("satanic")
                    )
                {
                    _satanic.UseAbility();
                    Utils.Sleep(240, "satanic");
                }                 // Satanic Item end
                if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                             (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                {
                    _mail.UseAbility();
                    Utils.Sleep(100, "mail");
                }
                if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                           (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("bkb"))
                {
                    _bkb.UseAbility();
                    Utils.Sleep(100, "bkb");
                }
            }
        }
Ejemplo n.º 18
0
        public void Combo()
        {
            if (!Menu.Item("enabled").GetValue <bool>())
            {
                return;
            }

            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key);
            _q     = Me.Spellbook.SpellQ;
            _w     = Me.Spellbook.SpellW;
            _r     = Me.Spellbook.SpellR;

            _mom      = Me.FindItem("item_mask_of_madness");
            _urn      = Me.FindItem("item_urn_of_shadows");
            _dagon    = Me.Inventory.Items.FirstOrDefault(x => x.Name.Contains("item_dagon"));
            _ethereal = Me.FindItem("item_ethereal_blade");
            _halberd  = Me.FindItem("item_heavens_halberd");
            _mjollnir = Me.FindItem("item_mjollnir");
            _blink    = Me.FindItem("item_blink");
            _orchid   = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            _abyssal  = Me.FindItem("item_abyssal_blade");
            _mail     = Me.FindItem("item_blade_mail");
            _bkb      = Me.FindItem("item_black_king_bar");
            _satanic  = Me.FindItem("item_satanic");
            _medall   = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            _shiva    = Me.FindItem("item_shivas_guard");
            var v = ObjectManager.GetEntities <Hero>()
                    .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion)
                    .ToList();

            E = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }
            if (Active)
            {
                if (Menu.Item("orbwalk").GetValue <bool>())
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
            }
            if (Active && Me.Distance2D(E) <= 1400 && E.IsAlive && !Me.IsInvisible())
            {
                if (Menu.Item("orbwalk").GetValue <bool>())
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
                if (
                    _w != null && _w.CanBeCasted() && v.Count(x => x.Distance2D(Me) <= 725 + Me.HullRadius)
                    >= (Menu.Item("time_dilation").GetValue <Slider>().Value) &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                    (_r == null || !_r.CanBeCasted() || !Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) || v.Count(x => x.Distance2D(Me) <= 425 + Me.HullRadius)
                     < Menu.Item("v").GetValue <Slider>().Value) &&
                    Utils.SleepCheck("W") &&
                    (_r == null || !_r.IsInAbilityPhase) &&
                    !E.HasModifier("modifier_faceless_void_chronosphere_freeze")
                    )
                {
                    _w.UseAbility();
                    Utils.Sleep(100, "W");
                }
                if (
                    _blink != null &&
                    Me.CanCast() &&
                    _blink.CanBeCasted() &&
                    Me.Distance2D(E) < 1190 &&
                    v.Count(x => x.Distance2D(E) <= 525) <= 1 &&
                    Me.Distance2D(E) > Me.AttackRange + 150 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                    Utils.SleepCheck("blink")
                    )
                {
                    _blink.UseAbility(E.Position);
                    Utils.Sleep(250, "blink");
                }
                if (
                    _q != null && _q.CanBeCasted() &&
                    Me.Distance2D(E) <= _q.GetCastRange() + Me.HullRadius + 24 &&
                    Me.Distance2D(E) >= 450 &&
                    Me.CanAttack() &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                    Utils.SleepCheck("Q")
                    )
                {
                    _q.UseAbility(E.Position);
                    Utils.Sleep(100, "Q");
                }

                if (                 // MOM
                    _mom != null &&
                    _mom.CanBeCasted() &&
                    Me.CanCast() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mom.Name) &&
                    Utils.SleepCheck("mom") &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _mom.UseAbility();
                    Utils.Sleep(250, "mom");
                }
                if (                 // Mjollnir
                    _mjollnir != null &&
                    _mjollnir.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                    Utils.SleepCheck("mjollnir") &&
                    Me.Distance2D(E) <= 900
                    )
                {
                    _mjollnir.UseAbility(Me);
                    Utils.Sleep(250, "mjollnir");
                }                 // Mjollnir Item end
                if (              // Medall
                    _medall != null &&
                    _medall.CanBeCasted() &&
                    Utils.SleepCheck("Medall") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _medall.UseAbility(E);
                    Utils.Sleep(250, "Medall");
                }                 // Medall Item end
                if (              // orchid
                    _orchid != null &&
                    _orchid.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsLinkensProtected() &&
                    !E.IsMagicImmune() &&
                    Me.Distance2D(E) <= Me.AttackRange + 40 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                    Utils.SleepCheck("orchid")
                    )
                {
                    _orchid.UseAbility(E);
                    Utils.Sleep(250, "orchid");
                }                 // orchid Item end

                if (_shiva != null && _shiva.CanBeCasted() && Me.Distance2D(E) <= 600 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                    !E.IsMagicImmune() && Utils.SleepCheck("Shiva"))
                {
                    _shiva.UseAbility();
                    Utils.Sleep(100, "Shiva");
                }

                if (_ethereal != null && _ethereal.CanBeCasted() &&
                    Me.Distance2D(E) <= 700 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                    Utils.SleepCheck("ethereal"))
                {
                    _ethereal.UseAbility(E);
                    Utils.Sleep(100, "ethereal");
                }

                if (_dagon != null &&
                    _dagon.CanBeCasted() &&
                    Me.Distance2D(E) <= 500 &&
                    Utils.SleepCheck("dagon"))
                {
                    _dagon.UseAbility(E);
                    Utils.Sleep(100, "dagon");
                }
                if (                 // Abyssal Blade
                    _abyssal != null &&
                    _abyssal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsStunned() &&
                    !E.IsHexed() &&
                    Utils.SleepCheck("abyssal") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                    Me.Distance2D(E) <= 400
                    )
                {
                    _abyssal.UseAbility(E);
                    Utils.Sleep(250, "abyssal");
                }                 // Abyssal Item end
                if (_urn != null && _urn.CanBeCasted() && _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("urn"))
                {
                    _urn.UseAbility(E);
                    Utils.Sleep(240, "urn");
                }
                if (                 // Hellbard
                    _halberd != null &&
                    _halberd.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    (E.NetworkActivity == NetworkActivity.Attack ||
                     E.NetworkActivity == NetworkActivity.Crit ||
                     E.NetworkActivity == NetworkActivity.Attack2) &&
                    Utils.SleepCheck("halberd") &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                    )
                {
                    _halberd.UseAbility(E);
                    Utils.Sleep(250, "halberd");
                }
                if (                 // Satanic
                    _satanic != null &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    _satanic.CanBeCasted() &&
                    Me.Distance2D(E) <= Me.AttackRange + 50 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                    Utils.SleepCheck("satanic")
                    )
                {
                    _satanic.UseAbility();
                    Utils.Sleep(240, "satanic");
                }                 // Satanic Item end
                if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                             (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                {
                    _mail.UseAbility();
                    Utils.Sleep(100, "mail");
                }
                if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                           (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("bkb"))
                {
                    _bkb.UseAbility();
                    Utils.Sleep(100, "bkb");
                }
            }
            OnTimedEvent();
            if (Active)
            {
                //TODO test
                var ally = ObjectManager.GetEntities <Hero>()
                           .Where(x => x.Team == Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && !x.Equals(Me)).ToList();
                for (int i = 0; i < v.Count; ++i)
                {
                    if ((v.Count(x => x.Distance2D(v[i]) <= 425 + Me.HullRadius) >=
                         (Menu.Item("v").GetValue <Slider>().Value)) &&
                        (ally.Count(x => x.Distance2D(Me) <= 425 + Me.HullRadius) <=
                         (Menu.Item("ally").GetValue <Slider>().Value)))
                    {
                        if (_blink != null && _blink.CanBeCasted() && Me.Distance2D(v[i]) <= _blink.GetCastRange() && Me.Distance2D(v[i]) > _r.GetCastRange() + Me.HullRadius &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) && Utils.SleepCheck("blink"))
                        {
                            _blink.UseAbility(v[i].Position);
                            Utils.Sleep(100, "blink");
                        }
                        if (_q != null && _q.CanBeCasted() && Me.Distance2D(v[i]) <= _q.GetCastRange() + Me.HullRadius && Me.Distance2D(v[i]) > _r.GetCastRange() + Me.HullRadius &&
                            Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) && Utils.SleepCheck("Q"))
                        {
                            _q.UseAbility(v[i].Position);
                            Utils.Sleep(100, "Q");
                        }
                        if (_r != null && _r.CanBeCasted() && Me.Distance2D(v[i]) <= _r.GetCastRange() + Me.HullRadius &&
                            Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) && Utils.SleepCheck("Q"))
                        {
                            _r.UseAbility(v[i].Position);
                            Utils.Sleep(100, "Q");
                        }
                    }
                }
            }
        }
Ejemplo n.º 19
0
        public void Combo()
        {
            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key);

            _q = Me.Spellbook.SpellQ;
            _e = Me.Spellbook.SpellE;
            _r = Me.Spellbook.SpellR;


            _urn      = Me.FindItem("item_urn_of_shadows");
            _dagon    = Me.Inventory.Items.FirstOrDefault(x => x.Name.Contains("item_dagon"));
            _halberd  = Me.FindItem("item_heavens_halberd");
            _mjollnir = Me.FindItem("item_mjollnir");
            _armlet   = Me.FindItem("item_armlet");
            _abyssal  = Me.FindItem("item_abyssal_blade");
            _mail     = Me.FindItem("item_blade_mail");
            _bkb      = Me.FindItem("item_black_king_bar");
            _blink    = Me.FindItem("item_blink");
            _satanic  = Me.FindItem("item_satanic");
            _medall   = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            _shiva    = Me.FindItem("item_shivas_guard");
            var v =
                ObjectManager.GetEntities <Hero>()
                .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && !x.IsMagicImmune())
                .ToList();

            E = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }
            if (Active)
            {
                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
            }
            if (Active && Me.Distance2D(E) <= 1400 && E != null && E.IsAlive && !Toolset.invUnit(Me))
            {
                float   angle = Me.FindAngleBetween(E.Position, true);
                Vector3 pos   = new Vector3((float)(E.Position.X - 70 * Math.Cos(angle)), (float)(E.Position.Y - 70 * Math.Sin(angle)), 0);
                if (
                    _blink != null &&
                    _q.CanBeCasted() &&
                    Me.CanCast() &&
                    _blink.CanBeCasted() &&
                    Me.Distance2D(E) >= 490 &&
                    Me.Distance2D(pos) <= 1180 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                    Utils.SleepCheck("blink")
                    )
                {
                    _blink.UseAbility(pos);
                    Utils.Sleep(250, "blink");
                }
                if (
                    _q != null &&
                    _q.CanBeCasted() &&
                    Me.Distance2D(E) <= 900 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                    Utils.SleepCheck("Q")
                    )
                {
                    _q.UseAbility(E);
                    Utils.Sleep(200, "Q");
                }
                if (
                    _r != null &&
                    _r.CanBeCasted() &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                    Utils.SleepCheck("R")
                    )
                {
                    _r.UseAbility();
                    Utils.Sleep(200, "R");
                }
                if (
                    _e != null &&
                    _e.CanBeCasted() &&
                    (Me.Distance2D(E) <= 700 ||
                     (_blink != null &&
                      _blink.CanBeCasted() &&
                      Me.Distance2D(E) <= 1190)
                    ) &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_e.Name) &&
                    Utils.SleepCheck("E")
                    )
                {
                    _e.UseAbility();
                    Utils.Sleep(200, "E");
                }
                if (                 // Mjollnir
                    _mjollnir != null &&
                    _mjollnir.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                    Utils.SleepCheck("mjollnir") &&
                    Me.Distance2D(E) <= 900
                    )
                {
                    _mjollnir.UseAbility(Me);
                    Utils.Sleep(250, "mjollnir");
                }                 // Mjollnir Item end
                if (              // Medall
                    _medall != null &&
                    _medall.CanBeCasted() &&
                    Utils.SleepCheck("Medall") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _medall.UseAbility(E);
                    Utils.Sleep(250, "Medall");
                }                 // Medall Item end
                if (_armlet != null &&
                    !_armlet.IsToggled &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_armlet.Name) &&
                    Utils.SleepCheck("armlet"))
                {
                    _armlet.ToggleAbility();
                    Utils.Sleep(300, "armlet");
                }

                if (_shiva != null &&
                    _shiva.CanBeCasted() &&
                    Me.Distance2D(E) <= 600 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                    !E.IsMagicImmune() &&
                    Utils.SleepCheck("Shiva"))
                {
                    _shiva.UseAbility();
                    Utils.Sleep(100, "Shiva");
                }
                if (_dagon != null &&
                    _dagon.CanBeCasted() &&
                    Me.Distance2D(E) <= 500 &&
                    Utils.SleepCheck("dagon"))
                {
                    _dagon.UseAbility(E);
                    Utils.Sleep(100, "dagon");
                }
                if (                 // Abyssal Blade
                    _abyssal != null &&
                    _abyssal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsStunned() &&
                    !E.IsHexed() &&
                    Utils.SleepCheck("abyssal") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                    Me.Distance2D(E) <= 400
                    )
                {
                    _abyssal.UseAbility(E);
                    Utils.Sleep(250, "abyssal");
                }                 // Abyssal Item end
                if (_urn != null &&
                    _urn.CanBeCasted() &&
                    _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("urn"))
                {
                    _urn.UseAbility(E);
                    Utils.Sleep(240, "urn");
                }
                if (                 // Hellbard
                    _halberd != null &&
                    _halberd.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    (E.NetworkActivity == NetworkActivity.Attack ||
                     E.NetworkActivity == NetworkActivity.Crit ||
                     E.NetworkActivity == NetworkActivity.Attack2) &&
                    Utils.SleepCheck("halberd") &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                    )
                {
                    _halberd.UseAbility(E);
                    Utils.Sleep(250, "halberd");
                }
                if (                 // Satanic
                    _satanic != null &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    _satanic.CanBeCasted() &&
                    Me.Distance2D(E) <= Me.AttackRange + 50 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                    Utils.SleepCheck("satanic")
                    )
                {
                    _satanic.UseAbility();
                    Utils.Sleep(240, "satanic");
                }                 // Satanic Item end
                if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                             (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                {
                    _mail.UseAbility();
                    Utils.Sleep(100, "mail");
                }
                if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                           (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("bkb"))
                {
                    _bkb.UseAbility();
                    Utils.Sleep(100, "bkb");
                }
            }
        }
Ejemplo n.º 20
0
        public void Combo()
        {
            E = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }

            //spell
            _q = Me.Spellbook.SpellQ;

            _w = Me.Spellbook.SpellW;

            _e = Me.Spellbook.SpellE;

            _r = Me.Spellbook.SpellR;

            // Item
            _ethereal = Me.FindItem("item_ethereal_blade");

            _sheep = E.ClassId == ClassId.CDOTA_Unit_Hero_Tidehunter ? null : Me.FindItem("item_sheepstick");

            _vail = Me.FindItem("item_veil_of_discord");

            _cheese = Me.FindItem("item_cheese");

            _ghost = Me.FindItem("item_ghost");

            _orchid = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");

            _atos = Me.FindItem("item_rod_of_atos");

            _soul = Me.FindItem("item_soul_ring");

            _arcane = Me.FindItem("item_arcane_boots");

            _blink = Me.FindItem("item_blink");

            _shiva = Me.FindItem("item_shivas_guard");

            _dagon = Me.Inventory.Items.FirstOrDefault(item => item.Name.Contains("item_dagon"));


            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key) && !Game.IsChatOpen;

            var modifEther = E.HasModifier("modifier_item_ethereal_blade_slow");
            var stoneModif = E.HasModifier("modifier_medusa_stone_gaze_stone");
            var v          =
                ObjectManager.GetEntities <Hero>()
                .Where(x => x.IsVisible && x.IsAlive && x.Team != Me.GetEnemyTeam() && !x.IsIllusion);


            if (Active && Me.IsAlive && E.IsAlive && Utils.SleepCheck("activated"))
            {
                var noBlade = E.HasModifier("modifier_item_blade_mail_reflect");
                if (E.IsVisible && Me.Distance2D(E) <= 2300 && !noBlade)
                {
                    if (
                        _q != null &&
                        _q.CanBeCasted() &&
                        Me.CanCast() &&
                        Me.Distance2D(E) < 1400 &&
                        !stoneModif &&
                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                        Utils.SleepCheck("Q")
                        )
                    {
                        _q.UseAbility(E.Position);
                        Utils.Sleep(200, "Q");
                    }
                    if (                     // atos Blade
                        _atos != null &&
                        _atos.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsLinkensProtected() &&
                        !E.IsMagicImmune() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_atos.Name) &&
                        Me.Distance2D(E) <= 2000 &&
                        Utils.SleepCheck("atos")
                        )
                    {
                        _atos.UseAbility(E);

                        Utils.Sleep(250 + Game.Ping, "atos");
                    }                     // atos Item end

                    if (
                        _blink != null &&
                        _q.CanBeCasted() &&
                        Me.CanCast() &&
                        _blink.CanBeCasted() &&
                        Me.Distance2D(E) > 1000 &&
                        !stoneModif &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                        Utils.SleepCheck("blink")
                        )
                    {
                        _blink.UseAbility(E.Position);

                        Utils.Sleep(250, "blink");
                    }
                    if (
                        _e != null &&
                        _e.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsLinkensProtected() &&
                        Me.Position.Distance2D(E) < 1400 &&
                        !stoneModif &&
                        Utils.SleepCheck("E"))
                    {
                        _e.UseAbility(E);
                        Utils.Sleep(200, "E");
                    }
                    if (!_e.CanBeCasted() || _e == null)
                    {
                        if (                         // orchid
                            _orchid != null &&
                            _orchid.CanBeCasted() &&
                            Me.CanCast() &&
                            !E.IsLinkensProtected() &&
                            !E.IsMagicImmune() &&
                            Me.Distance2D(E) <= 1400 &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                            !stoneModif &&
                            Utils.SleepCheck("orchid")
                            )
                        {
                            _orchid.UseAbility(E);
                            Utils.Sleep(250, "orchid");
                        }                         // orchid Item end
                        if (!_orchid.CanBeCasted() || _orchid == null ||
                            !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name))
                        {
                            if (                             // vail
                                _vail != null &&
                                _vail.CanBeCasted() &&
                                Me.CanCast() &&
                                !E.IsMagicImmune() &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                                Me.Distance2D(E) <= 1500 &&
                                Utils.SleepCheck("vail")
                                )
                            {
                                _vail.UseAbility(E.Position);
                                Utils.Sleep(250, "vail");
                            }                             // orchid Item end
                            if (!_vail.CanBeCasted() || _vail == null ||
                                !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name))
                            {
                                if (                                 // ethereal
                                    _ethereal != null &&
                                    _ethereal.CanBeCasted() &&
                                    Me.CanCast() &&
                                    !E.IsLinkensProtected() &&
                                    !E.IsMagicImmune() &&
                                    !stoneModif &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                                    Utils.SleepCheck("ethereal")
                                    )
                                {
                                    _ethereal.UseAbility(E);
                                    Utils.Sleep(200, "ethereal");
                                }                                 // ethereal Item end
                                if (!_ethereal.CanBeCasted() || _ethereal == null ||
                                    !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name))
                                {
                                    if (
                                        _r != null &&
                                        _r.CanBeCasted() &&
                                        Me.CanCast() &&
                                        (v.Count(x => x.Distance2D(Me) <= 700) >=
                                         (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                                        Utils.SleepCheck("R"))
                                    {
                                        _r.UseAbility();
                                        Utils.Sleep(330, "R");
                                    }

                                    if (                                     // SoulRing Item
                                        _soul != null &&
                                        _soul.CanBeCasted() &&
                                        Me.CanCast() &&
                                        Me.Health <= (Me.MaximumHealth * 0.5) &&
                                        Me.Mana <= _r.ManaCost &&
                                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_soul.Name)
                                        )
                                    {
                                        _soul.UseAbility();
                                    }                                     // SoulRing Item end

                                    if (                                  // Arcane Boots Item
                                        _arcane != null &&
                                        _arcane.CanBeCasted() &&
                                        Me.CanCast() &&
                                        Me.Mana <= _r.ManaCost &&
                                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_arcane.Name)
                                        )
                                    {
                                        _arcane.UseAbility();
                                    }                                     // Arcane Boots Item end

                                    if (                                  //Ghost
                                        _ghost != null &&
                                        _ghost.CanBeCasted() &&
                                        Me.CanCast() &&
                                        ((Me.Position.Distance2D(E) < 300 &&
                                          Me.Health <= (Me.MaximumHealth * 0.7)) ||
                                         Me.Health <= (Me.MaximumHealth * 0.3)) &&
                                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ghost.Name) &&
                                        Utils.SleepCheck("Ghost"))
                                    {
                                        _ghost.UseAbility();
                                        Utils.Sleep(250, "Ghost");
                                    }


                                    if (                                     // Shiva Item
                                        _shiva != null &&
                                        _shiva.CanBeCasted() &&
                                        Me.CanCast() &&
                                        !E.IsMagicImmune() &&
                                        Utils.SleepCheck("shiva") &&
                                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                                        Me.Distance2D(E) <= 600
                                        )

                                    {
                                        _shiva.UseAbility();
                                        Utils.Sleep(250, "shiva");
                                    }                                     // Shiva Item end


                                    if (                                     // sheep
                                        _sheep != null &&
                                        _sheep.CanBeCasted() &&
                                        Me.CanCast() &&
                                        !E.IsLinkensProtected() &&
                                        !E.IsMagicImmune() &&
                                        Me.Distance2D(E) <= 1400 &&
                                        !stoneModif &&
                                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) &&
                                        Utils.SleepCheck("sheep")
                                        )
                                    {
                                        _sheep.UseAbility(E);
                                        Utils.Sleep(250, "sheep");
                                    }                                     // sheep Item end

                                    if (                                  // Dagon
                                        Me.CanCast() &&
                                        _dagon != null &&
                                        (_ethereal == null ||
                                         (modifEther ||
                                          _ethereal.Cooldown < 17)) &&
                                        !E.IsLinkensProtected() &&
                                        _dagon.CanBeCasted() &&
                                        !E.IsMagicImmune() &&
                                        !stoneModif &&
                                        Utils.SleepCheck("dagon")
                                        )
                                    {
                                        _dagon.UseAbility(E);
                                        Utils.Sleep(200, "dagon");
                                    }                                     // Dagon Item end

                                    if (
                                        // cheese
                                        _cheese != null &&
                                        _cheese.CanBeCasted() &&
                                        Me.Health <= (Me.MaximumHealth * 0.3) &&
                                        Me.Distance2D(E) <= 700 &&
                                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_cheese.Name) &&
                                        Utils.SleepCheck("cheese")
                                        )
                                    {
                                        _cheese.UseAbility();
                                        Utils.Sleep(200, "cheese");
                                    }                                     // cheese Item end
                                }
                            }
                        }
                    }
                }
                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name))
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
                else if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900 &&
                         !Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name))
                {
                    Orbwalking.Orbwalk(E, 0, 1600, false, true);
                }
                Utils.Sleep(200, "activated");
            }
            A();
        }
Ejemplo n.º 21
0
        public void Combo()
        {
            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key);

            Push    = Game.IsKeyDown(Menu.Item("keyEscape").GetValue <KeyBind>().Key);
            _wKey   = Game.IsKeyDown(Menu.Item("wKey").GetValue <KeyBind>().Key);
            _oneUlt = Menu.Item("oneult").IsActive();
            if (!Menu.Item("enabled").IsActive())
            {
                return;
            }

            E = Toolset.ClosestToMouse(Me);
            if (Push)
            {
                Unit fount   = ObjectManager.GetEntities <Unit>().FirstOrDefault(x => x.Team == Me.Team && x.ClassId == ClassId.CDOTA_Unit_Fountain);
                var  remnant = ObjectManager.GetEntities <Unit>().Where(unit => unit.IsValid && unit.IsAlive && unit.Team == Me.Team && unit.Name == "npc_dota_ember_spirit_remnant").ToList();

                if (fount != null)
                {
                    float   angle = Me.FindAngleBetween(fount.Position, true);
                    Vector3 pos   = new Vector3((float)(Me.Position.X + _r.GetCastRange() * Math.Cos(angle)),
                                                (float)(Me.Position.Y + _r.GetCastRange() * Math.Sin(angle)), 0);

                    if (remnant.Count(x => x.Distance2D(Me) <= 10000) == 0)
                    {
                        if (_r != null && _r.CanBeCasted() &&
                            Me.FindModifier("modifier_ember_spirit_fire_remnant_charge_counter").StackCount >= 1 &&
                            Utils.SleepCheck("z"))
                        {
                            _r.UseAbility(pos);
                            Utils.Sleep(1000, "z");
                        }
                    }
                    if (remnant.Count(x => x.Distance2D(Me) <= 10000) > 0)
                    {
                        if (_d != null && _d.CanBeCasted())
                        {
                            for (int i = 0; i < remnant.Count; ++i)
                            {
                                var kill =
                                    remnant[i].Modifiers.Where(y => y.Name == "modifier_ember_spirit_fire_remnant_thinker")
                                    .DefaultIfEmpty(null)
                                    .FirstOrDefault();

                                if (kill != null &&
                                    kill.RemainingTime < 44 &&
                                    Utils.SleepCheck("Rem"))
                                {
                                    _d.UseAbility(fount.Position);
                                    Utils.Sleep(300, "Rem");
                                }
                            }
                        }
                    }
                }
            }

            _q = Me.Spellbook.SpellQ;

            _w = Me.Spellbook.SpellW;

            _e = Me.Spellbook.SpellE;

            _r = Me.Spellbook.SpellR;

            _d = Me.Spellbook.SpellD;

            _ethereal = Me.FindItem("item_ethereal_blade");
            _mom      = Me.FindItem("item_mask_of_madness");
            _urn      = Me.FindItem("item_urn_of_shadows");
            _dagon    =
                Me.Inventory.Items.FirstOrDefault(
                    item =>
                    item.Name.Contains("item_dagon"));
            _halberd  = Me.FindItem("item_heavens_halberd");
            _mjollnir = Me.FindItem("item_mjollnir");
            _orchid   = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            _abyssal  = Me.FindItem("item_abyssal_blade");
            _mail     = Me.FindItem("item_blade_mail");
            _bkb      = Me.FindItem("item_black_king_bar");
            _satanic  = Me.FindItem("item_satanic");
            _blink    = Me.FindItem("item_blink");
            _medall   = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            if (E == null)
            {
                return;
            }
            _sheep  = E.ClassId == ClassId.CDOTA_Unit_Hero_Tidehunter ? null : Me.FindItem("item_sheepstick");
            _vail   = Me.FindItem("item_veil_of_discord");
            _cheese = Me.FindItem("item_cheese");
            _ghost  = Me.FindItem("item_ghost");
            _atos   = Me.FindItem("item_rod_of_atos");
            _soul   = Me.FindItem("item_soul_ring");
            _arcane = Me.FindItem("item_arcane_boots");
            _stick  = Me.FindItem("item_magic_stick") ?? Me.FindItem("item_magic_wand");
            _shiva  = Me.FindItem("item_shivas_guard");


            var stoneModif = E.HasModifier("modifier_medusa_stone_gaze_stone");



            var v =
                ObjectManager.GetEntities <Hero>()
                .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && !x.IsMagicImmune())
                .ToList();



            if ((Active || _wKey) && Me.Distance2D(E) <= 1400 && E != null && E.IsAlive)
            {
                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
            }

            if (Active && Me.Distance2D(E) <= 1400 && E != null && E.IsAlive && !Toolset.invUnit(E))
            {
                if (stoneModif)
                {
                    return;
                }
                if (                 // MOM
                    _mom != null &&
                    _mom.CanBeCasted() &&
                    Me.CanCast() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mom.Name) &&
                    Utils.SleepCheck("mom") &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _mom.UseAbility();
                    Utils.Sleep(250, "mom");
                }
                if (                 // Hellbard
                    _halberd != null &&
                    _halberd.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    (E.NetworkActivity == NetworkActivity.Attack ||
                     E.NetworkActivity == NetworkActivity.Crit ||
                     E.NetworkActivity == NetworkActivity.Attack2) &&
                    Utils.SleepCheck("halberd") &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                    )
                {
                    _halberd.UseAbility(E);
                    Utils.Sleep(250, "halberd");
                }
                if (                 //Ghost
                    _ghost != null &&
                    _ghost.CanBeCasted() &&
                    Me.CanCast() &&
                    ((Me.Position.Distance2D(E) < 300 &&
                      Me.Health <= (Me.MaximumHealth * 0.7)) ||
                     Me.Health <= (Me.MaximumHealth * 0.3)) &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_ghost.Name) &&
                    Utils.SleepCheck("Ghost"))
                {
                    _ghost.UseAbility();
                    Utils.Sleep(250, "Ghost");
                }
                if (                 // Arcane Boots Item
                    _arcane != null &&
                    Me.Mana <= _w.ManaCost &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_arcane.Name) &&
                    _arcane.CanBeCasted() &&
                    Utils.SleepCheck("arcane")
                    )
                {
                    _arcane.UseAbility();
                    Utils.Sleep(250, "arcane");
                }                 // Arcane Boots Item end
                if (              // Mjollnir
                    _mjollnir != null &&
                    _mjollnir.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                    Utils.SleepCheck("mjollnir") &&
                    Me.Distance2D(E) <= 900
                    )
                {
                    _mjollnir.UseAbility(Me);
                    Utils.Sleep(250, "mjollnir");
                }                 // Mjollnir Item end
                if (
                    // cheese
                    _cheese != null &&
                    _cheese.CanBeCasted() &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_cheese.Name) &&
                    Utils.SleepCheck("cheese")
                    )
                {
                    _cheese.UseAbility();
                    Utils.Sleep(200, "cheese");
                }                 // cheese Item end
                if (              // Medall
                    _medall != null &&
                    _medall.CanBeCasted() &&
                    Utils.SleepCheck("Medall") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _medall.UseAbility(E);
                    Utils.Sleep(250, "Medall");
                }                 // Medall Item end
                if (
                    _w != null && _w.CanBeCasted() && Me.Distance2D(E) <= 700 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                    Utils.SleepCheck("W")
                    )
                {
                    _w.UseAbility(E.Predict(300));
                    Utils.Sleep(200, "W");
                }
                if (                 // Q Skill
                    _q != null &&
                    _q.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                    Me.Distance2D(E) <= 150 &&
                    Utils.SleepCheck("Q")
                    )

                {
                    _q.UseAbility();
                    Utils.Sleep(50, "Q");
                }                 // Q Skill end

                if (              // W Skill
                    _w != null &&
                    _w.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                    Utils.SleepCheck("W")
                    )
                {
                    _w.UseAbility(E.Position);
                    Utils.Sleep(200, "W");
                }                 // W Skill end
                if (              // E Skill
                    _e != null &&
                    _e.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Utils.SleepCheck("E") &&
                    Me.Distance2D(E) <= 400 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_e.Name)
                    )
                {
                    _e.UseAbility();
                    Utils.Sleep(350, "E");
                }                 // E Skill end
                if (              //R Skill
                    _r != null &&
                    !_oneUlt &&
                    _r.CanBeCasted() &&
                    Me.CanCast() &&
                    Me.Distance2D(E) <= 1100 &&
                    Utils.SleepCheck("R")
                    )
                {
                    _r.UseAbility(E.Predict(700));
                    Utils.Sleep(110, "R");
                }                 // R Skill end
                if (              //R Skill
                    _r != null &&
                    _oneUlt &&
                    _r.CanBeCasted() &&
                    Me.CanCast() &&
                    Me.Distance2D(E) <= 1100 &&
                    Utils.SleepCheck("R")
                    )
                {
                    _r.UseAbility(E.Predict(700));
                    Utils.Sleep(5000, "R");
                }                 // R Skill end
                if (              // sheep
                    _sheep != null &&
                    _sheep.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsLinkensProtected() &&
                    !E.IsMagicImmune() &&
                    Me.Distance2D(E) <= 1400 &&
                    !stoneModif &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) &&
                    Utils.SleepCheck("sheep")
                    )
                {
                    _sheep.UseAbility(E);
                    Utils.Sleep(250, "sheep");
                }                 // sheep Item end
                if (              // Abyssal Blade
                    _abyssal != null &&
                    _abyssal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsStunned() &&
                    !E.IsHexed() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                    Utils.SleepCheck("abyssal") &&
                    Me.Distance2D(E) <= 400
                    )
                {
                    _abyssal.UseAbility(E);
                    Utils.Sleep(250, "abyssal");
                }                 // Abyssal Item end
                if (_orchid != null && _orchid.CanBeCasted() && Me.Distance2D(E) <= 900 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                    Utils.SleepCheck("orchid"))
                {
                    _orchid.UseAbility(E);
                    Utils.Sleep(100, "orchid");
                }

                if (_shiva != null && _shiva.CanBeCasted() && Me.Distance2D(E) <= 600 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                    !E.IsMagicImmune() && Utils.SleepCheck("Shiva"))
                {
                    _shiva.UseAbility();
                    Utils.Sleep(100, "Shiva");
                }
                if (                 // ethereal
                    _ethereal != null &&
                    _ethereal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsLinkensProtected() &&
                    !E.IsMagicImmune() &&
                    !stoneModif &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                    Utils.SleepCheck("ethereal")
                    )
                {
                    _ethereal.UseAbility(E);
                    Utils.Sleep(200, "ethereal");
                }                 // ethereal Item end
                if (
                    _blink != null &&
                    Me.CanCast() &&
                    _blink.CanBeCasted() &&
                    Me.Distance2D(E) >= 450 &&
                    Me.Distance2D(E) <= 1150 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                    Utils.SleepCheck("blink")
                    )
                {
                    _blink.UseAbility(E.Position);
                    Utils.Sleep(250, "blink");
                }

                if (                 // SoulRing Item
                    _soul != null &&
                    _soul.CanBeCasted() &&
                    Me.CanCast() &&
                    Me.Health >= (Me.MaximumHealth * 0.5) &&
                    Me.Mana <= _r.ManaCost &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_soul.Name)
                    )
                {
                    _soul.UseAbility();
                }                 // SoulRing Item end
                if (              // Dagon
                    Me.CanCast() &&
                    _dagon != null &&
                    (_ethereal == null ||
                     (E.HasModifier("modifier_item_ethereal_blade_slow") ||
                      _ethereal.Cooldown < 17)) &&
                    !E.IsLinkensProtected() &&
                    _dagon.CanBeCasted() &&
                    !E.IsMagicImmune() &&
                    !stoneModif &&
                    Utils.SleepCheck("dagon")
                    )
                {
                    _dagon.UseAbility(E);
                    Utils.Sleep(200, "dagon");
                }                 // Dagon Item end
                if (              // atos Blade
                    _atos != null &&
                    _atos.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsLinkensProtected() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_atos.Name) &&
                    Me.Distance2D(E) <= 2000 &&
                    Utils.SleepCheck("atos")
                    )
                {
                    _atos.UseAbility(E);

                    Utils.Sleep(250, "atos");
                }                 // atos Item end
                if (_urn != null && _urn.CanBeCasted() && _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("urn"))
                {
                    _urn.UseAbility(E);
                    Utils.Sleep(240, "urn");
                }
                if (                 // vail
                    _vail != null &&
                    _vail.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                    Me.Distance2D(E) <= 1500 &&
                    Utils.SleepCheck("vail")
                    )
                {
                    _vail.UseAbility(E.Position);
                    Utils.Sleep(250, "vail");
                }                 // orchid Item end

                /*	if (
                 *      force != null
                 *      && force.CanBeCasted()
                 *      && Me.Distance2D(e) < force.GetCastRange()
                 *      && Utils.SleepCheck(e.Handle.ToString()))
                 * {
                 *      force.UseAbility(e);
                 *      Utils.Sleep(500, e.Handle.ToString());
                 * }
                 */
                if (
                    _stick != null &&
                    _stick.CanBeCasted() &&
                    _stick.CurrentCharges != 0 &&
                    Me.Distance2D(E) <= 700 &&
                    (Me.Health <= (Me.MaximumHealth * 0.5) ||
                     Me.Mana <= (Me.MaximumMana * 0.5)) &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_stick.Name))
                {
                    _stick.UseAbility();
                    Utils.Sleep(200, "mana_items");
                }
                if (                 // Satanic
                    _satanic != null &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    _satanic.CanBeCasted() &&
                    Me.Distance2D(E) <= Me.AttackRange + 50 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                    Utils.SleepCheck("satanic")
                    )
                {
                    _satanic.UseAbility();
                    Utils.Sleep(240, "satanic");
                }                 // Satanic Item end
                if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                             (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                {
                    _mail.UseAbility();
                    Utils.Sleep(100, "mail");
                }
                if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                           (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("bkb"))
                {
                    _bkb.UseAbility();
                    Utils.Sleep(100, "bkb");
                }

                var remnant = ObjectManager.GetEntities <Unit>().Where(unit => unit.Name == "npc_dota_ember_spirit_remnant").ToList();

                if (remnant.Count <= 0)
                {
                    return;
                }
                for (int i = 0; i < remnant.Count; ++i)
                {
                    if (                    //D Skill
                        remnant != null &&
                        _d.CanBeCasted() &&
                        Me.CanCast() &&
                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_d.Name) &&
                        remnant[i].Distance2D(E) <= 500 &&
                        Utils.SleepCheck("D")
                        )
                    {
                        _d.UseAbility(E.Position);
                        Utils.Sleep(400, "D");
                    }
                }
            }
            if (_wKey && Me.Distance2D(E) <= 1400 && E != null && E.IsAlive)
            {
                if (                 // Q Skill
                    _q != null &&
                    _q.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                    Me.Distance2D(E) <= 150 &&
                    Utils.SleepCheck("Q")
                    )

                {
                    _q.UseAbility();
                    Utils.Sleep(50, "Q");
                }                 // Q Skill end

                if (              // W Skill
                    _w != null &&
                    _w.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                    Utils.SleepCheck("W")
                    )
                {
                    _w.UseAbility(E.Position);
                    Utils.Sleep(200, "W");
                }                 // W Skill end
            }
            else if (_wKey && Me.Distance2D(E) <= 1400 && E != null && E.IsAlive && !Toolset.invUnit(E))
            {
                if (                 // MOM
                    _mom != null &&
                    _mom.CanBeCasted() &&
                    Me.CanCast() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mom.Name) &&
                    Utils.SleepCheck("mom") &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _mom.UseAbility();
                    Utils.Sleep(250, "mom");
                }
                if (                 // Hellbard
                    _halberd != null &&
                    _halberd.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    (E.NetworkActivity == NetworkActivity.Attack ||
                     E.NetworkActivity == NetworkActivity.Crit ||
                     E.NetworkActivity == NetworkActivity.Attack2) &&
                    Utils.SleepCheck("halberd") &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                    )
                {
                    _halberd.UseAbility(E);
                    Utils.Sleep(250, "halberd");
                }
                if (                 //Ghost
                    _ghost != null &&
                    _ghost.CanBeCasted() &&
                    Me.CanCast() &&
                    ((Me.Position.Distance2D(E) < 300 &&
                      Me.Health <= (Me.MaximumHealth * 0.7)) ||
                     Me.Health <= (Me.MaximumHealth * 0.3)) &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_ghost.Name) &&
                    Utils.SleepCheck("Ghost"))
                {
                    _ghost.UseAbility();
                    Utils.Sleep(250, "Ghost");
                }
                if (                 // Arcane Boots Item
                    _arcane != null &&
                    Me.Mana <= _w.ManaCost &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_arcane.Name) &&
                    _arcane.CanBeCasted() &&
                    Utils.SleepCheck("arcane")
                    )
                {
                    _arcane.UseAbility();
                    Utils.Sleep(250, "arcane");
                }                 // Arcane Boots Item end
                if (              // Mjollnir
                    _mjollnir != null &&
                    _mjollnir.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                    Utils.SleepCheck("mjollnir") &&
                    Me.Distance2D(E) <= 900
                    )
                {
                    _mjollnir.UseAbility(Me);
                    Utils.Sleep(250, "mjollnir");
                }                 // Mjollnir Item end
                if (
                    // cheese
                    _cheese != null &&
                    _cheese.CanBeCasted() &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_cheese.Name) &&
                    Utils.SleepCheck("cheese")
                    )
                {
                    _cheese.UseAbility();
                    Utils.Sleep(200, "cheese");
                }                 // cheese Item end
                if (              // Medall
                    _medall != null &&
                    _medall.CanBeCasted() &&
                    Utils.SleepCheck("Medall") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _medall.UseAbility(E);
                    Utils.Sleep(250, "Medall");
                }                 // Medall Item end

                if (              // Q Skill
                    _q != null &&
                    _q.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                    Me.Distance2D(E) <= 150 &&
                    Utils.SleepCheck("Q")
                    )

                {
                    _q.UseAbility();
                    Utils.Sleep(50, "Q");
                }                 // Q Skill end

                if (              // W Skill
                    _w != null &&
                    _w.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                    Utils.SleepCheck("W")
                    )
                {
                    _w.UseAbility(E.Position);
                    Utils.Sleep(200, "W");
                }                 // W Skill end

                if (              // sheep
                    _sheep != null &&
                    _sheep.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsLinkensProtected() &&
                    !E.IsMagicImmune() &&
                    Me.Distance2D(E) <= 1400 &&
                    !stoneModif &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) &&
                    Utils.SleepCheck("sheep")
                    )
                {
                    _sheep.UseAbility(E);
                    Utils.Sleep(250, "sheep");
                }                 // sheep Item end
                if (              // Abyssal Blade
                    _abyssal != null &&
                    _abyssal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsStunned() &&
                    !E.IsHexed() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                    Utils.SleepCheck("abyssal") &&
                    Me.Distance2D(E) <= 400
                    )
                {
                    _abyssal.UseAbility(E);
                    Utils.Sleep(250, "abyssal");
                }                 // Abyssal Item end
                if (_orchid != null && _orchid.CanBeCasted() && Me.Distance2D(E) <= 900 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                    Utils.SleepCheck("orchid"))
                {
                    _orchid.UseAbility(E);
                    Utils.Sleep(100, "orchid");
                }

                if (_shiva != null && _shiva.CanBeCasted() && Me.Distance2D(E) <= 600 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                    !E.IsMagicImmune() && Utils.SleepCheck("Shiva"))
                {
                    _shiva.UseAbility();
                    Utils.Sleep(100, "Shiva");
                }
                if (                 // ethereal
                    _ethereal != null &&
                    _ethereal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsLinkensProtected() &&
                    !E.IsMagicImmune() &&
                    !stoneModif &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                    Utils.SleepCheck("ethereal")
                    )
                {
                    _ethereal.UseAbility(E);
                    Utils.Sleep(200, "ethereal");
                }                 // ethereal Item end
                if (
                    _blink != null &&
                    Me.CanCast() &&
                    _blink.CanBeCasted() &&
                    Me.Distance2D(E) >= 450 &&
                    Me.Distance2D(E) <= 1150 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                    Utils.SleepCheck("blink")
                    )
                {
                    _blink.UseAbility(E.Position);
                    Utils.Sleep(250, "blink");
                }

                if (                 // SoulRing Item
                    _soul != null &&
                    _soul.CanBeCasted() &&
                    Me.CanCast() &&
                    Me.Health >= (Me.MaximumHealth * 0.5) &&
                    Me.Mana <= _r.ManaCost &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_soul.Name)
                    )
                {
                    _soul.UseAbility();
                }                 // SoulRing Item end
                if (              // Dagon
                    Me.CanCast() &&
                    _dagon != null &&
                    (_ethereal == null ||
                     (E.HasModifier("modifier_item_ethereal_blade_slow") ||
                      _ethereal.Cooldown < 17)) &&
                    !E.IsLinkensProtected() &&
                    _dagon.CanBeCasted() &&
                    !E.IsMagicImmune() &&
                    !stoneModif &&
                    Utils.SleepCheck("dagon")
                    )
                {
                    _dagon.UseAbility(E);
                    Utils.Sleep(200, "dagon");
                }                 // Dagon Item end
                if (              // atos Blade
                    _atos != null &&
                    _atos.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsLinkensProtected() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_atos.Name) &&
                    Me.Distance2D(E) <= 2000 &&
                    Utils.SleepCheck("atos")
                    )
                {
                    _atos.UseAbility(E);

                    Utils.Sleep(250, "atos");
                }                 // atos Item end
                if (_urn != null && _urn.CanBeCasted() && _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("urn"))
                {
                    _urn.UseAbility(E);
                    Utils.Sleep(240, "urn");
                }
                if (                 // vail
                    _vail != null &&
                    _vail.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                    Me.Distance2D(E) <= 1500 &&
                    Utils.SleepCheck("vail")
                    )
                {
                    _vail.UseAbility(E.Position);
                    Utils.Sleep(250, "vail");
                }                 // orchid Item end

                if (
                    _stick != null &&
                    _stick.CanBeCasted() &&
                    _stick.CurrentCharges != 0 &&
                    Me.Distance2D(E) <= 700 &&
                    (Me.Health <= (Me.MaximumHealth * 0.5) ||
                     Me.Mana <= (Me.MaximumMana * 0.5)) &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_stick.Name))
                {
                    _stick.UseAbility();
                    Utils.Sleep(200, "mana_items");
                }
                if (                 // Satanic
                    _satanic != null &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    _satanic.CanBeCasted() &&
                    Me.Distance2D(E) <= Me.AttackRange + 50 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                    Utils.SleepCheck("satanic")
                    )
                {
                    _satanic.UseAbility();
                    Utils.Sleep(240, "satanic");
                }
            }
        }
Ejemplo n.º 22
0
        public void A()
        {
            if (!Me.IsAlive)
            {
                return;
            }
            var v =
                ObjectManager.GetEntities <Hero>()
                .Where(x => x.IsVisible && x.IsAlive && x.Team != Me.Team && !x.IsIllusion).ToList();

            if (v.Count <= 0)
            {
                return;
            }
            if (_ult.Item("AutoUlt").GetValue <AbilityToggler>().IsEnabled(_r.Name))
            {
                if (
                    _r != null &&
                    _r.CanBeCasted() &&
                    Me.CanCast() &&
                    (v.Count(x => x.Distance2D(Me) <= 700) >=
                     (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                    Utils.SleepCheck("R"))
                {
                    _r.UseAbility();
                    Utils.Sleep(330, "R");
                }
            }
            _force   = Me.FindItem("item_force_staff");
            _cyclone = Me.FindItem("item_cyclone");
            _orchid  = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");

            foreach (var e in v)
            {
                if (e.IsLinkensProtected() && (Me.IsVisibleToEnemies || Active))
                {
                    if (_force != null && _force.CanBeCasted() && Me.Distance2D(e) < _force.GetCastRange() &&
                        Menu.Item("Link").GetValue <AbilityToggler>().IsEnabled(_force.Name) &&
                        Utils.SleepCheck(e.Handle.ToString()))
                    {
                        _force.UseAbility(e);
                        Utils.Sleep(500, e.Handle.ToString());
                    }
                    else if (_cyclone != null && _cyclone.CanBeCasted() && Me.Distance2D(e) < _cyclone.GetCastRange() &&
                             Menu.Item("Link").GetValue <AbilityToggler>().IsEnabled(_cyclone.Name) &&
                             Utils.SleepCheck(e.Handle.ToString()))
                    {
                        _cyclone.UseAbility(e);
                        Utils.Sleep(500, e.Handle.ToString());
                    }
                    else if (_orchid != null && _orchid.CanBeCasted() && Me.Distance2D(e) < _orchid.GetCastRange() &&
                             Menu.Item("Link").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                             Utils.SleepCheck(e.Handle.ToString()))
                    {
                        _orchid.UseAbility(e);
                        Utils.Sleep(500, e.Handle.ToString());
                    }
                    else if (_dagon != null && _dagon.CanBeCasted() && Me.Distance2D(e) < _dagon.GetCastRange() &&
                             Menu.Item("Link").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                             Utils.SleepCheck(e.Handle.ToString()))
                    {
                        _dagon.UseAbility(e);
                        Utils.Sleep(500, e.Handle.ToString());
                    }
                }
            }
        }
Ejemplo n.º 23
0
        public void Combo()
        {
            // Target initialization

            // Spells initialization
            _q = Me.Spellbook.SpellQ;
            _w = Me.Spellbook.SpellW;
            _e = Me.Spellbook.SpellE;
            _r = Me.Spellbook.SpellR;
            // Items initialization
            _ethereal = Me.FindItem("item_ethereal_blade");
            _vail     = Me.FindItem("item_veil_of_discord");
            _cheese   = Me.FindItem("item_cheese");
            _ghost    = Me.FindItem("item_ghost");
            _orchid   = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            _atos     = Me.FindItem("item_rod_of_atos");
            _soul     = Me.FindItem("item_soul_ring");
            _arcane   = Me.FindItem("item_arcane_boots");
            _blink    = Me.FindItem("item_blink");
            _shiva    = Me.FindItem("item_shivas_guard");
            _dagon    = Me.Inventory.Items.FirstOrDefault(item => item.Name.Contains("item_dagon"));

            // State of keys initialization
            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key) && !Game.IsChatOpen;
            Push   = Game.IsKeyDown(Menu.Item("keyQ").GetValue <KeyBind>().Key) && !Game.IsChatOpen;

            _enemies = ObjectManager.GetEntities <Hero>()
                       .Where(x => x.IsVisible && x.IsAlive && x.Team != Me.Team && !x.IsFullMagicResist() && !x.IsIllusion).ToList();
            // OnUpdateEvent::END

            // [VickTheRock]

            if (Push)
            {
                if (_q == null)
                {
                    return;
                }

                var unitsList = ObjectManager.GetEntities <Unit>().Where(creep =>
                                                                         (creep.ClassId == ClassId.CDOTA_BaseNPC_Creep_Neutral ||
                                                                          creep.ClassId == ClassId.CDOTA_BaseNPC_Invoker_Forged_Spirit ||
                                                                          creep.ClassId == ClassId.CDOTA_BaseNPC_Warlock_Golem ||
                                                                          creep.ClassId == ClassId.CDOTA_BaseNPC_Creep ||
                                                                          creep.ClassId == ClassId.CDOTA_BaseNPC_Creep_Lane ||
                                                                          creep.ClassId == ClassId.CDOTA_Unit_Hero_Beastmaster_Boar ||
                                                                          creep.ClassId == ClassId.CDOTA_Unit_SpiritBear ||
                                                                          creep.ClassId == ClassId.CDOTA_Unit_Broodmother_Spiderling
                                                                         ) &&
                                                                         creep.IsAlive &&
                                                                         creep.Distance2D(Me) <= _q.GetCastRange() + Me.HullRadius &&
                                                                         creep.IsSpawned &&
                                                                         creep.Team != Me.Team
                                                                         ).ToList();


                foreach (var v in unitsList)
                {
                    var damageQ = _qDmg[_q.Level];
                    if (Me.Distance2D(v) < 1200)
                    {
                        damageQ += _e.GetAbilityData("damage_health_pct") * 0.01 * v.Health;
                    }

                    var lens           = Me.HasModifier("modifier_item_aether_lens");
                    var spellamplymult = 1 + (Me.TotalIntelligence / 16 / 100);
                    if (lens)
                    {
                        damageQ *= 1.08;
                    }
                    damageQ *= spellamplymult;
                    damageQ *= (1 - v.MagicDamageResist);
                    if (_q.CanBeCasted() && v.Distance2D(Me) <= _q.GetCastRange() + Me.HullRadius && v.Health <= damageQ && Utils.SleepCheck("qq"))
                    {
                        _q.UseAbility(v);
                        Utils.Sleep(250, "qq");
                    }
                }
            } // if(Push)::END

            E = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }

            var modifEther = E.HasModifier("modifier_item_ethereal_blade_slow");
            var stoneModif = E.HasModifier("modifier_medusa_stone_gaze_stone");

            _sheep = E.Name == "npc_dota_hero_tidehunter" ? null : Me.FindItem("item_sheepstick");

            if (Active && Me.IsAlive && E.IsAlive && Utils.SleepCheck("activated"))
            {
                var noBlade = E.HasModifier("modifier_item_blade_mail_reflect");
                if (E.IsVisible && Me.Distance2D(E) <= 2300 && !noBlade)
                {
                    if ( // atos Blade
                        _atos != null &&
                        _atos.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsLinkensProtected() &&
                        !E.IsMagicImmune() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_atos.Name) &&
                        Me.Distance2D(E) <= 2000 &&
                        Utils.SleepCheck("atos")
                        )
                    {
                        _atos.UseAbility(E);
                        Utils.Sleep(250, "atos");
                    } // atos Item end

                    if (
                        _blink != null &&
                        _q.CanBeCasted() &&
                        Me.CanCast() &&
                        _blink.CanBeCasted() &&
                        Me.Distance2D(E) > 1000 &&
                        !stoneModif &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                        Utils.SleepCheck("blink")
                        )
                    {
                        _blink.UseAbility(E.Position);
                        Utils.Sleep(250, "blink");
                    }
                    if ( // orchid
                        _orchid != null &&
                        _orchid.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsLinkensProtected() &&
                        !E.IsMagicImmune() &&
                        Me.Distance2D(E) <= 1400 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                        !stoneModif &&
                        Utils.SleepCheck("orchid")
                        )
                    {
                        _orchid.UseAbility(E);
                        Utils.Sleep(250, "orchid");
                    } // orchid Item end
                    if (!_orchid.CanBeCasted() || _orchid == null ||
                        !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name))
                    {
                        if ( // vail
                            _vail != null &&
                            _vail.CanBeCasted() &&
                            Me.CanCast() &&
                            !E.IsMagicImmune() &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                            Me.Distance2D(E) <= 1500 &&
                            Utils.SleepCheck("vail")
                            )
                        {
                            _vail.UseAbility(E.Position);
                            Utils.Sleep(250, "vail");
                        } // orchid Item end
                        if (!_vail.CanBeCasted() || _vail == null ||
                            !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name))
                        {
                            if ( // ethereal
                                _ethereal != null &&
                                _ethereal.CanBeCasted() &&
                                Me.CanCast() &&
                                !E.IsLinkensProtected() &&
                                !E.IsMagicImmune() &&
                                !stoneModif &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                                Utils.SleepCheck("ethereal")
                                )
                            {
                                _ethereal.UseAbility(E);
                                Utils.Sleep(200, "ethereal");
                            } // ethereal Item end
                            if (!_ethereal.CanBeCasted() || _ethereal == null ||
                                !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name))
                            {
                                if (
                                    _w != null &&
                                    _w.CanBeCasted() &&
                                    Me.CanCast() &&
                                    Me.Distance2D(E) < _w.GetCastRange() + Me.HullRadius &&
                                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                    Utils.SleepCheck("W"))
                                {
                                    _w.UseAbility(E.Position);
                                    Utils.Sleep(200, "W");
                                }
                                float   angle = Me.FindAngleBetween(_e.Position, true);
                                Vector3 pos   = new Vector3((float)(E.Position.X - 290 * Math.Cos(angle)), (float)(E.Position.Y - 290 * Math.Sin(angle)), 0);
                                var     units = ObjectManager.GetEntities <Hero>().Where(x =>
                                                                                         !x.Equals(E) &&
                                                                                         x.IsAlive &&
                                                                                         x.Distance2D(pos) < E.Distance2D(pos) &&
                                                                                         x.Distance2D(E) <= 320 &&
                                                                                         x.Team != Me.Team
                                                                                         ).ToList();
                                if (
                                    _w != null &&
                                    _w.CanBeCasted() &&
                                    Me.CanCast() &&
                                    units.Count(x => x.Distance2D(pos) <= 290) == 0 &&
                                    Me.Distance2D(E) > _w.GetCastRange() + Me.HullRadius &&
                                    Me.Distance2D(E) < _w.GetCastRange() + 300 &&
                                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                    Utils.SleepCheck("W"))
                                {
                                    _w.UseAbility(E.Position);
                                    Utils.Sleep(200, "W");
                                }
                                if (
                                    _q != null &&
                                    _q.CanBeCasted() &&
                                    (!_w.CanBeCasted() || E.Health <= (E.MaximumHealth * 0.5)) &&
                                    (E.IsLinkensProtected() ||
                                     !E.IsLinkensProtected()) &&
                                    Me.CanCast() &&
                                    Me.Distance2D(E) < 1400 &&
                                    !stoneModif &&
                                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                                    Utils.SleepCheck("Q")
                                    )
                                {
                                    _q.UseAbility(E);
                                    Utils.Sleep(330, "Q");
                                }
                                if (
                                    _r != null &&
                                    _r.CanBeCasted() &&
                                    !_q.CanBeCasted() &&
                                    !_w.CanBeCasted() &&
                                    Me.CanCast() &&
                                    Me.Position.Distance2D(E) < 1200 &&
                                    E.Health <= (E.MaximumHealth * 0.5) &&
                                    !stoneModif &&
                                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                                    Utils.SleepCheck("R"))
                                {
                                    _r.UseAbility();
                                    Utils.Sleep(330, "R");
                                }
                                if ( // SoulRing Item
                                    _soul != null &&
                                    _soul.CanBeCasted() &&
                                    Me.CanCast() &&
                                    Me.Health >= (Me.MaximumHealth * 0.6) &&
                                    Me.Mana <= _r.ManaCost &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_soul.Name)
                                    )
                                {
                                    _soul.UseAbility();
                                } // SoulRing Item end

                                if ( // Arcane Boots Item
                                    _arcane != null &&
                                    _arcane.CanBeCasted() &&
                                    Me.CanCast() &&
                                    Me.Mana <= _r.ManaCost &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_arcane.Name)
                                    )
                                {
                                    _arcane.UseAbility();
                                } // Arcane Boots Item end

                                if ( //Ghost
                                    _ghost != null &&
                                    _ghost.CanBeCasted() &&
                                    Me.CanCast() &&
                                    ((Me.Position.Distance2D(E) < 300 &&
                                      Me.Health <= (Me.MaximumHealth * 0.7)) ||
                                     Me.Health <= (Me.MaximumHealth * 0.3)) &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ghost.Name) &&
                                    Utils.SleepCheck("Ghost"))
                                {
                                    _ghost.UseAbility();
                                    Utils.Sleep(250, "Ghost");
                                }


                                if ( // Shiva Item
                                    _shiva != null &&
                                    _shiva.CanBeCasted() &&
                                    Me.CanCast() &&
                                    !E.IsMagicImmune() &&
                                    Utils.SleepCheck("shiva") &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                                    Me.Distance2D(E) <= 600
                                    )

                                {
                                    _shiva.UseAbility();
                                    Utils.Sleep(250, "shiva");
                                } // Shiva Item end
                                if ( // sheep
                                    _sheep != null &&
                                    _sheep.CanBeCasted() &&
                                    Me.CanCast() &&
                                    !E.IsLinkensProtected() &&
                                    !E.IsMagicImmune() &&
                                    Me.Distance2D(E) <= 1400 &&
                                    !stoneModif &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) &&
                                    Utils.SleepCheck("sheep")
                                    )
                                {
                                    _sheep.UseAbility(E);
                                    Utils.Sleep(250, "sheep");
                                } // sheep Item end

                                if ( // Dagon
                                    Me.CanCast() &&
                                    _dagon != null &&
                                    (_ethereal == null ||
                                     (modifEther ||
                                      _ethereal.Cooldown < 17)) &&
                                    !E.IsLinkensProtected() &&
                                    _dagon.CanBeCasted() &&
                                    Me.Distance2D(E) <= 1400 &&
                                    !E.IsMagicImmune() &&
                                    !stoneModif &&
                                    Utils.SleepCheck("dagon")
                                    )
                                {
                                    _dagon.UseAbility(E);
                                    Utils.Sleep(200, "dagon");
                                } // Dagon Item end

                                if (
                                    // cheese
                                    _cheese != null &&
                                    _cheese.CanBeCasted() &&
                                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                                    Me.Distance2D(E) <= 700 &&
                                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_cheese.Name) &&
                                    Utils.SleepCheck("cheese")
                                    )
                                {
                                    _cheese.UseAbility();
                                    Utils.Sleep(200, "cheese");
                                } // cheese Item end
                            }
                        }
                    }
                    Utils.Sleep(200, "activated");
                } // if(e.IsVisible)::END

                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
            } // if(Active)::END

            // Run real-time modules
            AutoSpells();
        } // Combo::END
Ejemplo n.º 24
0
        public void Combo()
        {
            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key);

            _q = Me.Spellbook.SpellQ;
            _w = Me.Spellbook.SpellW;
            _r = Me.Spellbook.SpellR;


            _mom      = Me.FindItem("item_mask_of_madness");
            _urn      = Me.FindItem("item_urn_of_shadows");
            _dagon    = Me.Inventory.Items.FirstOrDefault(x => x.Name.Contains("item_dagon"));
            _halberd  = Me.FindItem("item_heavens_halberd");
            _mjollnir = Me.FindItem("item_mjollnir");
            _armlet   = Me.FindItem("item_armlet");
            _abyssal  = Me.FindItem("item_abyssal_blade");
            _mail     = Me.FindItem("item_blade_mail");
            _bkb      = Me.FindItem("item_black_king_bar");
            _blink    = Me.FindItem("item_blink");
            _satanic  = Me.FindItem("item_satanic");
            _medall   = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            _shiva    = Me.FindItem("item_shivas_guard");
            _manta    = Me.FindItem("item_manta");
            var v =
                ObjectManager.GetEntities <Hero>()
                .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && !x.IsMagicImmune())
                .ToList();

            E = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }
            var a = ObjectManager.GetEntities <Hero>()
                    .Where(x => x.Team == Me.Team && x.IsAlive && x.IsVisible && x.IsIllusion && x.IsControllable).ToList();
            var illy = a.Count;

            if (illy >= 1)
            {
                for (int i = 0; i < illy; ++i)
                {
                    if (a[i].Distance2D(E) <= a[i].GetAttackRange() + a[i].HullRadius && !E.IsAttackImmune() &&
                        !a[i].IsAttacking() && a[i].CanAttack() && Utils.SleepCheck(a[i].Handle + "Attack")
                        )
                    {
                        a[i].Attack(E);
                        Utils.Sleep(330, a[i].Handle + "Attack");
                    }
                    else if (a[i].Distance2D(E) <= 1000)
                    {
                        if ((!a[i].CanAttack() || a[i].Distance2D(E) >= 0) &&
                            !a[i].IsAttacking() &&
                            a[i].CanMove() && Utils.SleepCheck(a[i].Handle + "Move")
                            )
                        {
                            a[i].Move(Prediction.InFront(E, 100));
                            Utils.Sleep(400, a[i].Handle + "Move");
                        }
                    }
                }
            }
            if (Active)
            {
                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
            }
            if (!Active || !(Me.Distance2D(E) <= 1400) || E == null || !E.IsAlive || Toolset.InvUnit(Me))
            {
                return;
            }
            {
                var angle = Me.FindAngleBetween(E.Position, true);
                var pos   = new Vector3((float)(E.Position.X - 70 * Math.Cos(angle)), (float)(E.Position.Y - 70 * Math.Sin(angle)),
                                        0);
                if (
                    _blink != null &&
                    _q.CanBeCasted() &&
                    Me.CanCast() &&
                    _blink.CanBeCasted() &&
                    Me.Distance2D(E) >= 490 &&
                    Me.Distance2D(pos) <= 1180 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                    Utils.SleepCheck("blink")
                    )
                {
                    _blink.UseAbility(pos);
                    Utils.Sleep(250, "blink");
                }
                if (
                    _q != null &&
                    _q.CanBeCasted() &&
                    Me.Distance2D(E) <= 900 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                    Utils.SleepCheck("Q")
                    )
                {
                    _q.UseAbility(E);
                    Utils.Sleep(200, "Q");
                }
                if (_armlet != null &&
                    !_armlet.IsToggled &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_armlet.Name) &&
                    Utils.SleepCheck("armlet"))
                {
                    _armlet.ToggleAbility();
                    Utils.Sleep(300, "armlet");
                }
                if ((_manta != null &&
                     Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_manta.Name)) &&
                    _manta.CanBeCasted() && Me.IsSilenced() && Utils.SleepCheck("manta"))
                {
                    _manta.UseAbility();
                    Utils.Sleep(400, "manta");
                }
                if ((_manta != null && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_manta.Name)) &&
                    _manta.CanBeCasted() && (E.Position.Distance2D(Me.Position) <= Me.GetAttackRange() + Me.HullRadius) &&
                    Utils.SleepCheck("manta"))
                {
                    _manta.UseAbility();
                    Utils.Sleep(150, "manta");
                }
                if (
                    _r != null &&
                    _r.CanBeCasted() &&
                    Me.Distance2D(E) <= 300 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                    (_armlet == null || _armlet.IsToggled) &&
                    Utils.SleepCheck("R")
                    )
                {
                    _r.UseAbility();
                    Utils.Sleep(200, "R");
                }
                if (
                    _w != null &&
                    _w.CanBeCasted() &&
                    (Me.Distance2D(E) <= _w.GetCastRange() + 300 &&
                     (Me.Distance2D(E) >= Me.GetAttackRange() ||
                      Me.Distance2D(E) <= Me.GetAttackRange() &&
                      E.NetworkActivity == NetworkActivity.Attack)
                    ) &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                    Utils.SleepCheck("W")
                    )
                {
                    _w.UseAbility(E);
                    Utils.Sleep(200, "W");
                }
                if (         // MOM
                    _mom != null &&
                    _mom.CanBeCasted() &&
                    Me.CanCast() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mom.Name) &&
                    Utils.SleepCheck("mom") &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _mom.UseAbility();
                    Utils.Sleep(250, "mom");
                }
                if (         // Mjollnir
                    _mjollnir != null &&
                    _mjollnir.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                    Utils.SleepCheck("mjollnir") &&
                    Me.Distance2D(E) <= 900
                    )
                {
                    _mjollnir.UseAbility(Me);
                    Utils.Sleep(250, "mjollnir");
                }         // Mjollnir Item end
                if (      // Medall
                    _medall != null &&
                    _medall.CanBeCasted() &&
                    Utils.SleepCheck("Medall") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _medall.UseAbility(E);
                    Utils.Sleep(250, "Medall");
                }         // Medall Item end

                if (_shiva != null &&
                    _shiva.CanBeCasted() &&
                    Me.Distance2D(E) <= 600 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                    !E.IsMagicImmune() &&
                    Utils.SleepCheck("Shiva"))
                {
                    _shiva.UseAbility();
                    Utils.Sleep(100, "Shiva");
                }
                if (_dagon != null &&
                    _dagon.CanBeCasted() &&
                    Me.Distance2D(E) <= 500 &&
                    Utils.SleepCheck("dagon"))
                {
                    _dagon.UseAbility(E);
                    Utils.Sleep(100, "dagon");
                }
                if (         // Abyssal Blade
                    _abyssal != null &&
                    _abyssal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsStunned() &&
                    !E.IsHexed() &&
                    Utils.SleepCheck("abyssal") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                    Me.Distance2D(E) <= 400
                    )
                {
                    _abyssal.UseAbility(E);
                    Utils.Sleep(250, "abyssal");
                }         // Abyssal Item end
                if (_urn != null &&
                    _urn.CanBeCasted() &&
                    _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("urn"))
                {
                    _urn.UseAbility(E);
                    Utils.Sleep(240, "urn");
                }
                if (         // Hellbard
                    _halberd != null &&
                    _halberd.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    (E.NetworkActivity == NetworkActivity.Attack ||
                     E.NetworkActivity == NetworkActivity.Crit ||
                     E.NetworkActivity == NetworkActivity.Attack2) &&
                    Utils.SleepCheck("halberd") &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                    )
                {
                    _halberd.UseAbility(E);
                    Utils.Sleep(250, "halberd");
                }
                if (         // Satanic
                    _satanic != null &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    _satanic.CanBeCasted() &&
                    Me.Distance2D(E) <= Me.GetAttackRange() + Me.HullRadius &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                    Utils.SleepCheck("satanic")
                    )
                {
                    _satanic.UseAbility();
                    Utils.Sleep(240, "satanic");
                }         // Satanic Item end
                if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                             (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                {
                    _mail.UseAbility();
                    Utils.Sleep(100, "mail");
                }
                if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                           (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("bkb"))
                {
                    _bkb.UseAbility();
                    Utils.Sleep(100, "bkb");
                }
            }
        }
Ejemplo n.º 25
0
        public void Combo()
        {
            Active   = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key);
            CastQ    = Game.IsKeyDown(Menu.Item("qKey").GetValue <KeyBind>().Key);
            CastW    = Game.IsKeyDown(Menu.Item("wKey").GetValue <KeyBind>().Key);
            CastE    = Game.IsKeyDown(Menu.Item("eKey").GetValue <KeyBind>().Key);
            _autoUlt = Menu.Item("oneult").IsActive();
            if (!Menu.Item("enabled").IsActive())
            {
                return;
            }
            E = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }

            _q = Me.FindSpell("earth_spirit_boulder_smash");
            _e = Me.FindSpell("earth_spirit_geomagnetic_grip");
            _w = Me.FindSpell("earth_spirit_rolling_boulder");
            Me.FindSpell("earth_spirit_petrify");
            _r = Me.FindSpell("earth_spirit_magnetize");
            _d = Me.FindSpell("earth_spirit_stone_caller");

            _wmod = Me.HasModifier("modifier_earth_spirit_rolling_boulder_caster");

            _ethereal = Me.FindItem("item_ethereal_blade");
            _urn      = Me.FindItem("item_urn_of_shadows");
            _dagon    =
                Me.Inventory.Items.FirstOrDefault(
                    item =>
                    item.Name.Contains("item_dagon"));
            _halberd = Me.FindItem("item_heavens_halberd");
            _orchid  = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            _abyssal = Me.FindItem("item_abyssal_blade");
            _mail    = Me.FindItem("item_blade_mail");
            _bkb     = Me.FindItem("item_black_king_bar");
            _blink   = Me.FindItem("item_blink");
            _medall  = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            _sheep   = E.ClassId == ClassId.CDOTA_Unit_Hero_Tidehunter ? null : Me.FindItem("item_sheepstick");
            _vail    = Me.FindItem("item_veil_of_discord");
            _cheese  = Me.FindItem("item_cheese");
            _ghost   = Me.FindItem("item_ghost");
            _atos    = Me.FindItem("item_rod_of_atos");
            _soul    = Me.FindItem("item_soul_ring");
            _arcane  = Me.FindItem("item_arcane_boots");
            _stick   = Me.FindItem("item_magic_stick") ?? Me.FindItem("item_magic_wand");
            _shiva   = Me.FindItem("item_shivas_guard");
            var stoneModif = E.Modifiers.Any(y => y.Name == "modifier_medusa_stone_gaze_stone");
            var charge     = Me.Modifiers.FirstOrDefault(y => y.Name == "modifier_earth_spirit_stone_caller_charge_counter");

            var remnant      = ObjectManager.GetEntities <Unit>().Where(x => x.ClassId == ClassId.CDOTA_Unit_Earth_Spirit_Stone && x.Team == Me.Team && x.IsValid).ToList();
            var remnantCount = remnant.Count;


            if (Active && Me.Distance2D(E) <= 1300 && E.IsAlive && !Me.IsInvisible() && Utils.SleepCheck("Combo"))
            {
                if (
                    _blink != null &&
                    Me.CanCast() &&
                    _blink.CanBeCasted() &&
                    remnant.Count(x => x.Distance2D(Me) >= 350) == 0 &&
                    Me.Distance2D(E) >= 450 &&
                    Me.Distance2D(E) <= 1150 &&
                    !_wmod &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                    Utils.SleepCheck("blink")
                    )
                {
                    _blink.UseAbility(E.Position);
                    Utils.Sleep(250, "blink");
                }

                if (remnant.Count(x => x.Distance2D(Me) <= 1200) == 0)
                {
                    if (
                        _d.CanBeCasted() &&
                        _q != null &&
                        _q.CanBeCasted() &&
                        !_wmod &&
                        ((_blink == null ||
                          !_blink.CanBeCasted() ||
                          !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name)) ||
                         (_blink != null && _blink.CanBeCasted() && Me.Distance2D(E) <= 450)) &&
                        Me.Distance2D(E) <= _e.GetCastRange() - 50 &&
                        Utils.SleepCheck("Rem")
                        )
                    {
                        _d.UseAbility(Prediction.InFront(Me, 50));
                        Utils.Sleep(500, "Rem");
                    }
                    if (
                        _d.CanBeCasted() &&
                        _q != null &&
                        !_q.CanBeCasted() &&
                        _e.CanBeCasted() &&
                        Me.Distance2D(E) <= _e.GetCastRange() &&
                        !_wmod &&
                        ((_blink == null ||
                          !_blink.CanBeCasted() ||
                          !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name)) ||
                         (_blink != null && _blink.CanBeCasted() && Me.Distance2D(E) <= 450)) &&
                        Utils.SleepCheck("Rem")
                        )
                    {
                        _d.UseAbility(Prediction.InFront(E, 0));
                        Utils.Sleep(500, "Rem");
                    }
                }
                if (//Q Skill
                    _w != null &&
                    (!_q.CanBeCasted() ||
                     _q == null) &&
                    !_e.CanBeCasted() &&
                    _w.CanBeCasted() &&
                    Me.Distance2D(E) <= _e.GetCastRange() - 50 &&
                    Me.CanCast() &&
                    Utils.SleepCheck(Me.Handle + "remnantW")
                    )
                {
                    _w.CastSkillShot(E);
                    Utils.Sleep(250, Me.Handle + "remnantW");
                }
                if (remnant.Count(x => x.Distance2D(Me) <= 1200) >= 1)
                {
                    for (int i = 0; i < remnantCount; ++i)
                    {
                        var r = remnant[i];
                        if (
                            _d != null && _d.CanBeCasted() &&
                            ((_q != null && _q.CanBeCasted()) ||
                             (_w != null && _w.CanBeCasted())) &&
                            !_wmod &&
                            remnant.Count(x => x.Distance2D(Me) <= 350) == 0 &&
                            ((_blink == null ||
                              !_blink.CanBeCasted() ||
                              !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name)) ||
                             (_blink != null && Me.Distance2D(E) <= 350 && _blink.CanBeCasted()))
                            )
                        {
                            if (Me.Distance2D(E) <= _e.GetCastRange() - 50 &&
                                Utils.SleepCheck("Rem"))
                            {
                                _d.UseAbility(Prediction.InFront(Me, 50));
                                Utils.Sleep(600, "Rem");
                            }
                        }
                        if (
                            Me.Distance2D(r) >= 210 &&
                            remnant.Count(x => x.Distance2D(Me) <= 350) >= 1 &&
                            _q.CanBeCasted() &&
                            Utils.SleepCheck("RemMove"))
                        {
                            Me.Move(r.Position);
                            Utils.Sleep(250, "RemMove");
                        }
                        if (//Q Skill
                            _q != null &&
                            _q.CanBeCasted() &&
                            Me.CanCast() &&
                            Me.Distance2D(E) <= _e.GetCastRange() - 50 &&
                            Me.Distance2D(r) <= 210 &&
                            Utils.SleepCheck(r.Handle + "remnantQ")
                            )
                        {
                            _q.CastSkillShot(E);
                            Utils.Sleep(250, r.Handle + "remnantQ");
                        }
                        else
                        if (//W Skill
                            _w != null &&
                            _w.CanBeCasted() &&
                            !_q.CanBeCasted() &&
                            Me.Distance2D(E) <= _e.GetCastRange() &&
                            Utils.SleepCheck(Me.Handle + "remnantW")
                            )
                        {
                            _w.CastSkillShot(E);
                            Utils.Sleep(250, Me.Handle + "remnantW");
                        }
                        if (r != null &&
                            _e != null &&
                            _e.CanBeCasted() &&
                            Me.CanCast() &&
                            Me.Distance2D(r) < _e.GetCastRange() &&
                            Me.Distance2D(E) <= _e.GetCastRange()
                            )
                        {
                            if (//E Skill
                                E.Distance2D(r) <= 200 &&
                                Utils.SleepCheck(r.Handle + "remnantE")
                                )
                            {
                                _e.UseAbility(r.Position);
                                Utils.Sleep(220, r.Handle + "remnantE");
                            }
                            if (//E Skill
                                Me.Distance2D(E) <= 200 &&
                                E.Distance2D(r) > 0 &&
                                Me.Distance2D(r) >= E.Distance2D(r) &&
                                Utils.SleepCheck(r.Handle + "remnantE")
                                )
                            {
                                _e.UseAbility(r.Position);
                                Utils.Sleep(220, r.Handle + "remnantE");
                            }
                        }
                    }
                }


                if (//W Skill
                    _w != null &&
                    charge.StackCount == 0 &&
                    _w.CanBeCasted() &&
                    Me.Distance2D(E) <= 800 &&
                    Me.CanCast() &&
                    Utils.SleepCheck(Me.Handle + "remnantW")
                    )
                {
                    _w.CastSkillShot(E);
                    Utils.Sleep(250, Me.Handle + "remnantW");
                }
                if ( // Hellbard
                    _halberd != null &&
                    _halberd.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    (E.NetworkActivity == NetworkActivity.Attack ||
                     E.NetworkActivity == NetworkActivity.Crit ||
                     E.NetworkActivity == NetworkActivity.Attack2) &&
                    Utils.SleepCheck("halberd") &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                    )
                {
                    _halberd.UseAbility(E);
                    Utils.Sleep(250, "halberd");
                }
                if ( //Ghost
                    _ghost != null &&
                    _ghost.CanBeCasted() &&
                    Me.CanCast() &&
                    ((Me.Position.Distance2D(E) < 300 &&
                      Me.Health <= (Me.MaximumHealth * 0.7)) ||
                     Me.Health <= (Me.MaximumHealth * 0.3)) &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_ghost.Name) &&
                    Utils.SleepCheck("Ghost"))
                {
                    _ghost.UseAbility();
                    Utils.Sleep(250, "Ghost");
                }
                if ( // Arcane Boots Item
                    _arcane != null &&
                    Me.Mana <= _w.ManaCost &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_arcane.Name) &&
                    _arcane.CanBeCasted() &&
                    Utils.SleepCheck("arcane")
                    )
                {
                    _arcane.UseAbility();
                    Utils.Sleep(250, "arcane");
                } // Arcane Boots Item end
                if (
                    // cheese
                    _cheese != null &&
                    _cheese.CanBeCasted() &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_cheese.Name) &&
                    Utils.SleepCheck("cheese")
                    )
                {
                    _cheese.UseAbility();
                    Utils.Sleep(200, "cheese");
                } // cheese Item end
                if ( // Medall
                    _medall != null &&
                    _medall.CanBeCasted() &&
                    Utils.SleepCheck("Medall") &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _medall.UseAbility(E);
                    Utils.Sleep(250, "Medall");
                } // Medall Item end

                if ( //R Skill
                    _r != null &&
                    _r.CanBeCasted() &&
                    Me.CanCast() &&
                    Me.Distance2D(E) <= 200 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                    Utils.SleepCheck("R")
                    )
                {
                    _r.UseAbility();
                    Utils.Sleep(200, "R");
                } // R Skill end
                if ( // sheep
                    _sheep != null &&
                    _sheep.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsLinkensProtected() &&
                    !E.IsMagicImmune() &&
                    Me.Distance2D(E) <= 1400 &&
                    !stoneModif &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) &&
                    Utils.SleepCheck("sheep")
                    )
                {
                    _sheep.UseAbility(E);
                    Utils.Sleep(250, "sheep");
                } // sheep Item end
                if ( // Abyssal Blade
                    _abyssal != null &&
                    _abyssal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsStunned() &&
                    !E.IsHexed() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                    Utils.SleepCheck("abyssal") &&
                    Me.Distance2D(E) <= 400
                    )
                {
                    _abyssal.UseAbility(E);
                    Utils.Sleep(250, "abyssal");
                } // Abyssal Item end
                if (_orchid != null && _orchid.CanBeCasted() && Me.Distance2D(E) <= 900 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                    Utils.SleepCheck("orchid"))
                {
                    _orchid.UseAbility(E);
                    Utils.Sleep(100, "orchid");
                }

                if (_shiva != null && _shiva.CanBeCasted() && Me.Distance2D(E) <= 600 &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                    !E.IsMagicImmune() && Utils.SleepCheck("Shiva"))
                {
                    _shiva.UseAbility();
                    Utils.Sleep(100, "Shiva");
                }
                if ( // ethereal
                    _ethereal != null &&
                    _ethereal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsLinkensProtected() &&
                    !E.IsMagicImmune() &&
                    !stoneModif &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                    Utils.SleepCheck("ethereal")
                    )
                {
                    _ethereal.UseAbility(E);
                    Utils.Sleep(200, "ethereal");
                } // ethereal Item end

                if ( // SoulRing Item
                    _soul != null &&
                    _soul.CanBeCasted() &&
                    Me.CanCast() &&
                    Me.Health >= (Me.MaximumHealth * 0.5) &&
                    Me.Mana <= _r.ManaCost &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_soul.Name)
                    )
                {
                    _soul.UseAbility();
                } // SoulRing Item end
                if (// Dagon
                    Me.CanCast() &&
                    _dagon != null &&
                    (_ethereal == null ||
                     (E.HasModifier("modifier_item_ethereal_blade_slow") ||
                      _ethereal.Cooldown < 17)) &&
                    !E.IsLinkensProtected() &&
                    _dagon.CanBeCasted() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                    !E.IsMagicImmune() &&
                    Utils.SleepCheck("dagon")
                    )
                {
                    _dagon.UseAbility(E);
                    Utils.Sleep(200, "dagon");
                } // Dagon Item end
                if ( // atos Blade
                    _atos != null &&
                    _atos.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsLinkensProtected() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_atos.Name) &&
                    Me.Distance2D(E) <= 2000 &&
                    Utils.SleepCheck("atos")
                    )
                {
                    _atos.UseAbility(E);

                    Utils.Sleep(250, "atos");
                } // atos Item end
                if (_urn != null && _urn.CanBeCasted() && _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("urn"))
                {
                    _urn.UseAbility(E);
                    Utils.Sleep(240, "urn");
                }
                if ( // vail
                    _vail != null &&
                    _vail.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                    Me.Distance2D(E) <= 1500 &&
                    Utils.SleepCheck("vail")
                    )
                {
                    _vail.UseAbility(E.Position);
                    Utils.Sleep(250, "vail");
                } // orchid Item end
                if (
                    _stick != null &&
                    _stick.CanBeCasted() &&
                    _stick.CurrentCharges != 0 &&
                    Me.Distance2D(E) <= 700 &&
                    (Me.Health <= (Me.MaximumHealth * 0.5) ||
                     Me.Mana <= (Me.MaximumMana * 0.5)) &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_stick.Name))
                {
                    _stick.UseAbility();
                    Utils.Sleep(200, "mana_items");
                }

                var v =
                    ObjectManager.GetEntities <Hero>()
                    .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && x.Distance2D(Me) <= 700)
                    .ToList();
                if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                             (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                {
                    _mail.UseAbility();
                    Utils.Sleep(100, "mail");
                }
                if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                           (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("bkb"))
                {
                    _bkb.UseAbility();
                    Utils.Sleep(100, "bkb");
                }
                Utils.Sleep(50, "Combo");
            }
        }
Ejemplo n.º 26
0
        public void Combo()
        {
            if (!Menu.Item("enabled").IsActive())
            {
                return;
            }
            //spell
            _q     = Me.Spellbook.SpellQ;
            _w     = Me.Spellbook.SpellW;
            _e     = Me.Spellbook.SpellE;
            _r     = Me.Spellbook.SpellR;
            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key);
            var s = ObjectManager.GetEntities <Hero>()
                    .Where(x => x.IsVisible && x.IsAlive && x.Team != Me.Team && !x.IsIllusion && x.Distance2D(Me) <= 1500).ToList();

            if (Active)
            {
                E = Toolset.ClosestToMouse(Me);
                if (E == null)
                {
                    return;
                }
                if (E.IsAlive && !E.IsInvul())
                {
                    if (Me.IsAlive && Me.Distance2D(E) <= 1900)
                    {
                        // item
                        _satanic  = Me.FindItem("item_satanic");
                        _shiva    = Me.FindItem("item_shivas_guard");
                        _dagon    = Me.Inventory.Items.FirstOrDefault(item => item.Name.Contains("item_dagon"));
                        _arcane   = Me.FindItem("item_arcane_boots");
                        _mom      = Me.FindItem("item_mask_of_madness");
                        _medall   = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
                        _ethereal = Me.FindItem("item_ethereal_blade");
                        _blink    = Me.FindItem("item_blink");
                        _soulring = Me.FindItem("item_soul_ring");
                        _cheese   = Me.FindItem("item_cheese");
                        _halberd  = Me.FindItem("item_heavens_halberd");
                        _abyssal  = Me.FindItem("item_abyssal_blade");
                        _mjollnir = Me.FindItem("item_mjollnir");
                        _manta    = Me.FindItem("item_manta");
                        _mail     = Me.FindItem("item_blade_mail");
                        _orchid   = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
                        _bkb      = Me.FindItem("item_black_king_bar");
                        _phase    = Me.FindItem("item_phase_boots");
                        _sheep    = E.ClassId == ClassId.CDOTA_Unit_Hero_Tidehunter ? null : Me.FindItem("item_sheepstick");
                        var linkens = E.IsLinkensProtected();

                        if (
                            (_r.CanBeCasted() ||
                             Me.Health >= (Me.MaximumHealth * 0.4)) &&
                            _blink.CanBeCasted() &&
                            Me.Position.Distance2D(E) > 300 &&
                            Me.Position.Distance2D(E) < 1180 &&
                            Utils.SleepCheck("blink"))
                        {
                            _blink.UseAbility(E.Position);
                            Utils.Sleep(250, "blink");
                        }
                        if (
                            _q.CanBeCasted() &&
                            ((_dagon != null && !_dagon.CanBeCasted()) ||
                             (_r.CanBeCasted() &&
                              Me.Health >= (Me.MaximumHealth * 0.3)) ||
                             (!_r.CanBeCasted() && Me.Health <= (Me.MaximumHealth * 0.3))) &&
                            Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                            Me.Position.Distance2D(E) < _q.GetCastRange() &&
                            Utils.SleepCheck("Q"))
                        {
                            _q.UseAbility();
                            Utils.Sleep(150, "Q");
                        }
                        if (_e.CanBeCasted() &&
                            !_q.CanBeCasted() &&
                            Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_e.Name) &&
                            Me.Position.Distance2D(E) < Me.GetAttackRange() &&
                            Utils.SleepCheck("_e"))
                        {
                            _e.UseAbility();
                            Utils.Sleep(150, "_e");
                        }
                        if (_w.CanBeCasted() &&
                            !_q.CanBeCasted() &&
                            (_e == null || !_e.CanBeCasted() || !Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_e.Name)) &&
                            Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                            Me.Position.Distance2D(E) < Me.GetAttackRange() &&
                            Utils.SleepCheck("W"))
                        {
                            _w.UseAbility();
                            Utils.Sleep(150, "W");
                        }
                        if (                         // sheep
                            _sheep != null &&
                            _sheep.CanBeCasted() &&
                            Me.CanCast() &&
                            !E.IsLinkensProtected() &&
                            !E.IsMagicImmune() &&
                            Me.Distance2D(E) <= 1400 &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) &&
                            Utils.SleepCheck("sheep")
                            )
                        {
                            _sheep.UseAbility(E);
                            Utils.Sleep(250, "sheep");
                        }                         // sheep Item end
                        var stoneModif = E.HasModifier("modifier_medusa_stone_gaze_stone");
                        if (_phase != null &&
                            _phase.CanBeCasted() &&
                            Utils.SleepCheck("phase") &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_phase.Name) &&
                            !_blink.CanBeCasted() &&
                            Me.Distance2D(E) >= Me.GetAttackRange() + 20)
                        {
                            _phase.UseAbility();
                            Utils.Sleep(200, "phase");
                        }
                        if (                         // Dagon
                            _dagon != null &&
                            (E.Health <= (E.MaximumHealth * 0.4) ||
                             !_r.CanBeCasted()) &&
                            _dagon.CanBeCasted() &&
                            Me.CanCast() &&
                            Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                            !E.IsMagicImmune() &&
                            Utils.SleepCheck("dagon"))
                        {
                            _dagon.UseAbility(E);
                            Utils.Sleep(150, "dagon");
                        }                         // Dagon Item end
                        if ((_manta != null && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_manta.Name)) &&
                            _manta.CanBeCasted() && Me.IsSilenced() && Utils.SleepCheck("manta"))
                        {
                            _manta.UseAbility();
                            Utils.Sleep(400, "manta");
                        }
                        if ((_manta != null && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_manta.Name)) &&
                            _manta.CanBeCasted() && (E.Position.Distance2D(Me.Position) <= Me.GetAttackRange() + Me.HullRadius) &&
                            (_e == null || !_e.CanBeCasted() || !Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_e.Name)) &&
                            Utils.SleepCheck("manta"))
                        {
                            _manta.UseAbility();
                            Utils.Sleep(150, "manta");
                        }
                        if (                         // orchid
                            _orchid != null &&
                            _orchid.CanBeCasted() &&
                            Me.CanCast() &&
                            !E.IsLinkensProtected() &&
                            !E.IsMagicImmune() &&
                            Me.Distance2D(E) <= Me.GetAttackRange() &&
                            Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                            !stoneModif &&
                            Utils.SleepCheck("orchid")
                            )
                        {
                            _orchid.UseAbility(E);
                            Utils.Sleep(250, "orchid");
                        }                         // orchid Item end
                        if (_ethereal != null &&
                            _ethereal.CanBeCasted() &&
                            Me.Distance2D(E) <= 700 &&
                            Me.Distance2D(E) <= 400 &&
                            Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                            Utils.SleepCheck("ethereal"))
                        {
                            _ethereal.UseAbility(E);
                            Utils.Sleep(100, "ethereal");
                        }
                        var q = (_q != null && _q.Cooldown <= 0 && _q.ManaCost < Me.Mana);
                        var w = (_w != null && _w.Cooldown <= 0 && _w.ManaCost < Me.Mana);
                        var e = (_e != null && _e.Cooldown <= 0 && _e.ManaCost < Me.Mana);
                        var r = (_r != null && _r.Cooldown <= 0 && _r.ManaCost < Me.Mana && _r.Level <= 2);
                        var d = (_dagon != null && _dagon.Cooldown <= 0 && _dagon.ManaCost < Me.Mana);


                        if (                         // SoulRing Item
                            _soulring != null &&
                            Me.Health >= (Me.MaximumHealth * 0.3) &&
                            (q || w || e || d) &&
                            _soulring.CanBeCasted() &&
                            Utils.SleepCheck("soulring"))
                        {
                            _soulring.UseAbility();
                            Utils.Sleep(150, "soulring");
                        }                         // SoulRing Item end

                        if (                      // Arcane Boots Item
                            _arcane != null &&
                            (q || w || e || d) &&
                            _arcane.CanBeCasted() &&
                            Utils.SleepCheck("arcane"))
                        {
                            _arcane.UseAbility();
                            Utils.Sleep(150, "arcane");
                        }                         // Arcane Boots Item end

                        if (                      // Shiva Item
                            _shiva != null &&
                            _shiva.CanBeCasted() &&
                            Me.CanCast() &&
                            Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                            !E.IsMagicImmune() &&
                            (_shiva.CanBeCasted() &&
                             Utils.SleepCheck("shiva") &&
                             Me.Distance2D(E) <= 600)
                            )
                        {
                            _shiva.UseAbility();
                            Utils.Sleep(250, "shiva");
                        }                         // Shiva Item end
                        if (_mail != null && _mail.CanBeCasted() && (s.Count(x => x.Distance2D(Me) <= 650) >=
                                                                     (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                        {
                            _mail.UseAbility();
                            Utils.Sleep(100, "mail");
                        }
                        if (                         // Medall
                            _medall != null &&
                            _medall.CanBeCasted() &&
                            Me.CanCast() &&
                            !E.IsMagicImmune() &&
                            Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                            Utils.SleepCheck("Medall") &&
                            Me.Distance2D(E) <= Me.GetAttackRange() + Me.HullRadius
                            )
                        {
                            _medall.UseAbility(E);
                            Utils.Sleep(250, "Medall");
                        }                         // Medall Item end

                        if (                      // MOM
                            _mom != null &&
                            _mom.CanBeCasted() &&
                            Me.CanCast() &&
                            Utils.SleepCheck("mom") &&
                            Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_mom.Name) &&
                            Me.Distance2D(E) <= Me.GetAttackRange() + Me.HullRadius
                            )
                        {
                            _mom.UseAbility();
                            Utils.Sleep(250, "mom");
                        }                         // MOM Item end

                        if (                      // Abyssal Blade
                            _abyssal != null &&
                            _abyssal.CanBeCasted() &&
                            Me.CanCast() &&
                            !linkens &&
                            Utils.SleepCheck("abyssal") &&
                            Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                            Me.Distance2D(E) <= 400
                            )
                        {
                            _abyssal.UseAbility(E);
                            Utils.Sleep(250, "abyssal");
                        }                         // Abyssal Item end

                        if (                      // Hellbard
                            _halberd != null &&
                            _halberd.CanBeCasted() &&
                            Me.CanCast() &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name) &&
                            !E.IsMagicImmune() &&
                            Utils.SleepCheck("halberd") &&
                            Me.Distance2D(E) <= 700
                            )
                        {
                            _halberd.UseAbility(E);
                            Utils.Sleep(250, "halberd");
                        }                         // Hellbard Item end

                        if (                      // Mjollnir
                            _mjollnir != null &&
                            _mjollnir.CanBeCasted() &&
                            Me.CanCast() &&
                            !E.IsMagicImmune() &&
                            Utils.SleepCheck("mjollnir") &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                            Me.Distance2D(E) <= 900
                            )
                        {
                            _mjollnir.UseAbility(Me);
                            Utils.Sleep(250, "mjollnir");
                        }                         // Mjollnir Item end

                        if (                      // Satanic
                            _satanic != null &&
                            Me.Health <= (Me.MaximumHealth * 0.4) &&
                            (!_r.CanBeCasted() || Me.IsSilenced() ||
                             E.Health <= (E.MaximumHealth * 0.4)) &&
                            _satanic.CanBeCasted() &&
                            Me.Distance2D(E) <= Me.GetAttackRange() + Me.HullRadius &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                            Utils.SleepCheck("Satanic")
                            )
                        {
                            _satanic.UseAbility();
                            Utils.Sleep(350, "Satanic");
                        }                         // Satanic Item end
                        if (                      // cheese
                            _cheese != null &&
                            _cheese.CanBeCasted() &&
                            Me.Health <= (Me.MaximumHealth * 0.3) &&
                            (!_r.CanBeCasted() ||
                             !Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name)) &&
                            Me.Distance2D(E) <= Me.GetAttackRange() + Me.HullRadius &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_cheese.Name) &&
                            Utils.SleepCheck("cheese")
                            )
                        {
                            _cheese.UseAbility();
                            Utils.Sleep(200, "cheese");
                        }                         // cheese Item end
                        if (_bkb != null && _bkb.CanBeCasted() && (s.Count(x => x.Distance2D(Me) <= 650) >=
                                                                   (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("bkb"))
                        {
                            _bkb.UseAbility();
                            Utils.Sleep(100, "bkb");
                        }

                        if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                        {
                            Orbwalking.Orbwalk(E, 0, 1600, true, true);
                        }
                    }
                    var illu = ObjectManager.GetEntities <Unit>().Where(x => (x.ClassId == ClassId.CDOTA_Unit_Hero_Terrorblade && x.IsIllusion) &&
                                                                        x.IsAlive && x.IsControllable).ToList();
                    if (illu.Count > 0)
                    {
                        foreach (var v in illu)
                        {
                            if (
                                v.Distance2D(E) <= v.GetAttackRange() + v.HullRadius + 24 && !E.IsAttackImmune() &&
                                v.NetworkActivity != NetworkActivity.Attack && v.CanAttack() && Utils.SleepCheck(v.Handle.ToString())
                                )
                            {
                                v.Attack(E);
                                Utils.Sleep(270, v.Handle.ToString());
                            }
                            if (
                                (!v.CanAttack() || v.Distance2D(E) >= 0) && !v.IsAttacking() &&
                                v.NetworkActivity != NetworkActivity.Attack &&
                                v.Distance2D(E) <= 1200 && Utils.SleepCheck(v.Handle.ToString())
                                )
                            {
                                v.Move(E.Predict(400));
                                Utils.Sleep(400, v.Handle.ToString());
                            }
                        }
                    }
                }
            }
            if (Menu.Item("ult").GetValue <bool>())
            {
                if (Me == null || !Me.IsAlive)
                {
                    return;
                }
                if (_r == null || !_r.CanBeCasted())
                {
                    return;
                }
                var ult = ObjectManager.GetEntities <Hero>()
                          .Where(x => x.IsVisible &&
                                 x.IsAlive &&
                                 x.IsValid &&
                                 x.Team != Me.Team &&
                                 !x.IsIllusion &&
                                 x.Distance2D(Me) <= _r.GetCastRange() + Me.HullRadius + 24).ToList().OrderBy(x => ((double)x.MaximumHealth / x.Health)).FirstOrDefault();

                var illu = ObjectManager.GetEntities <Hero>()
                           .Where(x => x.IsVisible &&
                                  x.IsAlive &&
                                  x.IsValid &&
                                  x.IsIllusion &&
                                  x.Distance2D(Me) <= _r.GetCastRange() + Me.HullRadius + 24).ToList().OrderBy(x => ((double)x.MaximumHealth / x.Health)).FirstOrDefault();

                var ally = ObjectManager.GetEntities <Hero>()
                           .Where(x =>
                                  x.IsVisible &&
                                  x.IsAlive &&
                                  x.IsValid &&
                                  x.Team == Me.Team &&
                                  !x.IsIllusion &&
                                  x.Distance2D(Me) <= _r.GetCastRange() + Me.HullRadius + 24).ToList().OrderBy(x => ((double)x.MaximumHealth / x.Health)).FirstOrDefault();

                if (ult != null && Menu.Item("ultEnem").GetValue <bool>())
                {
                    var linkens = ult.IsLinkensProtected();
                    if (!linkens &&
                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                        ult.Health > (ult.MaximumHealth / 100 * Menu.Item("heal").GetValue <Slider>().Value) &&
                        Me.Health < (Me.MaximumHealth / 100 * Menu.Item("healme").GetValue <Slider>().Value) && Utils.SleepCheck("R"))
                    {
                        _r.UseAbility(ult);
                        Utils.Sleep(500, "R");
                    }
                }
                if (ult == null || ult.Health < (ult.MaximumHealth / 100 * Menu.Item("heal").GetValue <Slider>().Value))
                {
                    if (illu != null && Menu.Item("ultIllu").GetValue <bool>())
                    {
                        if (Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                            illu.Health > (illu.MaximumHealth / 100 * Menu.Item("heal").GetValue <Slider>().Value) &&
                            Me.Health < (Me.MaximumHealth / 100 * Menu.Item("healme").GetValue <Slider>().Value) && Utils.SleepCheck("R"))
                        {
                            _r.UseAbility(illu);
                            Utils.Sleep(500, "R");
                        }
                    }
                }
                if (ult == null || ult.Health < (ult.MaximumHealth / 100 * Menu.Item("heal").GetValue <Slider>().Value) || illu == null || illu.Health < (illu.MaximumHealth / 100 * Menu.Item("heal").GetValue <Slider>().Value))
                {
                    if (ally != null && Menu.Item("ultAlly").GetValue <bool>())
                    {
                        if (Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                            ally.Health > (ally.MaximumHealth / 100 * Menu.Item("heal").GetValue <Slider>().Value) &&
                            Me.Health < (Me.MaximumHealth / 100 * Menu.Item("healme").GetValue <Slider>().Value) && Utils.SleepCheck("R"))
                        {
                            _r.UseAbility(ally);
                            Utils.Sleep(500, "R");
                        }
                    }
                }
            }
        }
Ejemplo n.º 27
0
        public void Combo()
        {
            if (!Menu.Item("enabled").IsActive())
            {
                return;
            }

            E = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }
            _w     = Me.Spellbook.SpellW;
            _r     = Me.Spellbook.SpellR;
            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key);

            _shiva    = Me.FindItem("item_shivas_guard");
            _ethereal = Me.FindItem("item_ethereal_blade");
            _mom      = Me.FindItem("item_mask_of_madness");
            _urn      = Me.FindItem("item_urn_of_shadows");
            _manta    = Me.FindItem("item_manta");
            _dagon    = Me.Inventory.Items.FirstOrDefault(item => item.Name.Contains("item_dagon"));
            _halberd  = Me.FindItem("item_heavens_halberd");
            _mjollnir = Me.FindItem("item_mjollnir");
            _orchid   = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            _abyssal  = Me.FindItem("item_abyssal_blade");
            _mail     = Me.FindItem("item_blade_mail");
            _bkb      = Me.FindItem("item_black_king_bar");
            _satanic  = Me.FindItem("item_satanic");
            _blink    = Me.FindItem("item_blink");
            _medall   = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            _sheep    = E.ClassId == ClassId.CDOTA_Unit_Hero_Tidehunter ? null : Me.FindItem("item_sheepstick");
            _cheese   = Me.FindItem("item_cheese");
            _soul     = Me.FindItem("item_soul_ring");
            _stick    = Me.FindItem("item_magic_stick") ?? Me.FindItem("item_magic_wand");
            _phase    = Me.FindItem("item_phase_boots");
            var v =
                ObjectManager.GetEntities <Hero>()
                .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && !x.IsMagicImmune())
                .ToList();

            var stoneModif = E.Modifiers.Any(y => y.Name == "modifier_medusa_stone_gaze_stone");

            if (Active && Me.Distance2D(E) <= 1400 && E != null && E.IsAlive)
            {
                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
            }
            if (Active && Me.Distance2D(E) <= 1400 && E != null && E.IsAlive && !Me.IsInvisible())
            {
                if (
                    _w != null &&
                    _w.CanBeCasted() &&
                    Me.Distance2D(E) <= _w.GetCastRange() - 100 &&
                    Me.Distance2D(E) >= Me.AttackRange + 200 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                    Utils.SleepCheck("_w")
                    )
                {
                    _w.UseAbility(Prediction.InFront(E, 230));
                    Utils.Sleep(200, "_w");
                }

                if ((_manta != null &&
                     Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_manta.Name)) &&
                    _manta.CanBeCasted() && Me.IsSilenced() && Utils.SleepCheck("_manta"))
                {
                    _manta.UseAbility();
                    Utils.Sleep(400, "_manta");
                }
                if ((_manta != null && Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_manta.Name)) &&
                    _manta.CanBeCasted() && (E.Position.Distance2D(Me.Position) <= Me.GetAttackRange() + Me.HullRadius) &&
                    Utils.SleepCheck("_manta"))
                {
                    _manta.UseAbility();
                    Utils.Sleep(150, "_manta");
                }
                if (                 // MOM
                    _mom != null &&
                    _mom.CanBeCasted() &&
                    Me.CanCast() &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_mom.Name) &&
                    Utils.SleepCheck("_mom") &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _mom.UseAbility();
                    Utils.Sleep(250, "_mom");
                }
                if ( // Hellbard
                    _halberd != null &&
                    _halberd.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    (E.NetworkActivity == NetworkActivity.Attack ||
                     E.NetworkActivity == NetworkActivity.Crit ||
                     E.NetworkActivity == NetworkActivity.Attack2) &&
                    Utils.SleepCheck("_halberd") &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                    )
                {
                    _halberd.UseAbility(E);
                    Utils.Sleep(250, "_halberd");
                }
                if ( // Mjollnir
                    _mjollnir != null &&
                    _mjollnir.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                    Utils.SleepCheck("_mjollnir") &&
                    Me.Distance2D(E) <= 900
                    )
                {
                    _mjollnir.UseAbility(Me);
                    Utils.Sleep(250, "_mjollnir");
                } // Mjollnir Item end
                if (
                    // _cheese
                    _cheese != null &&
                    _cheese.CanBeCasted() &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_cheese.Name) &&
                    Utils.SleepCheck("_cheese")
                    )
                {
                    _cheese.UseAbility();
                    Utils.Sleep(200, "_cheese");
                } // _cheese Item end
                if ( // Medall
                    _medall != null &&
                    _medall.CanBeCasted() &&
                    Utils.SleepCheck("Medall") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _medall.UseAbility(E);
                    Utils.Sleep(250, "Medall");
                } // Medall Item end

                if ( // _sheep
                    _sheep != null &&
                    _sheep.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsLinkensProtected() &&
                    !E.IsMagicImmune() &&
                    Me.Distance2D(E) <= 1400 &&
                    !stoneModif &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) &&
                    Utils.SleepCheck("_sheep")
                    )
                {
                    _sheep.UseAbility(E);
                    Utils.Sleep(250, "_sheep");
                } // _sheep Item end
                if ( // Abyssal Blade
                    _abyssal != null &&
                    _abyssal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsStunned() &&
                    !E.IsHexed() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                    Utils.SleepCheck("_abyssal") &&
                    Me.Distance2D(E) <= 400
                    )
                {
                    _abyssal.UseAbility(E);
                    Utils.Sleep(250, "_abyssal");
                } // Abyssal Item end
                if (_orchid != null && _orchid.CanBeCasted() && Me.Distance2D(E) <= 900 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                    Utils.SleepCheck("_orchid"))
                {
                    _orchid.UseAbility(E);
                    Utils.Sleep(100, "_orchid");
                }

                if (_shiva != null && _shiva.CanBeCasted() && Me.Distance2D(E) <= 600 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                    !E.IsMagicImmune() && Utils.SleepCheck("_shiva"))
                {
                    _shiva.UseAbility();
                    Utils.Sleep(100, "_shiva");
                }
                if ( // _ethereal
                    _ethereal != null &&
                    _ethereal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsLinkensProtected() &&
                    !E.IsMagicImmune() &&
                    !stoneModif &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                    Utils.SleepCheck("_ethereal")
                    )
                {
                    _ethereal.UseAbility(E);
                    Utils.Sleep(200, "_ethereal");
                } // _ethereal Item end
                if (
                    _blink != null &&
                    Me.CanCast() &&
                    _blink.CanBeCasted() &&
                    Me.Distance2D(E) >= 450 &&
                    Me.Distance2D(E) <= 1150 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                    Utils.SleepCheck("_blink")
                    )
                {
                    _blink.UseAbility(E.Position);
                    Utils.Sleep(250, "_blink");
                }

                if ( // SoulRing Item
                    _soul != null &&
                    _soul.CanBeCasted() &&
                    Me.CanCast() &&
                    Me.Health >= (Me.MaximumHealth * 0.5) &&
                    Me.Mana <= _r.ManaCost &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_soul.Name)
                    )
                {
                    _soul.UseAbility();
                } // SoulRing Item end
                if ( // Dagon
                    Me.CanCast() &&
                    _dagon != null &&
                    (_ethereal == null ||
                     (E.Modifiers.Any(y => y.Name == "modifier_item_ethereal_blade_slow") ||
                      _ethereal.Cooldown < 17)) &&
                    !E.IsLinkensProtected() &&
                    _dagon.CanBeCasted() &&
                    !E.IsMagicImmune() &&
                    !stoneModif &&
                    Utils.SleepCheck("_dagon")
                    )
                {
                    _dagon.UseAbility(E);
                    Utils.Sleep(200, "_dagon");
                } // Dagon Item end
                if (_phase != null &&
                    _phase.CanBeCasted() &&
                    Utils.SleepCheck("_phase") &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_phase.Name) &&
                    !_blink.CanBeCasted() &&
                    Me.Distance2D(E) >= Me.AttackRange + 20)
                {
                    _phase.UseAbility();
                    Utils.Sleep(200, "_phase");
                }
                if (_urn != null && _urn.CanBeCasted() && _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("_urn"))
                {
                    _urn.UseAbility(E);
                    Utils.Sleep(240, "_urn");
                }
                if (
                    _stick != null &&
                    _stick.CanBeCasted() &&
                    _stick.CurrentCharges != 0 &&
                    Me.Distance2D(E) <= 700 &&
                    (Me.Health <= (Me.MaximumHealth * 0.5) ||
                     Me.Mana <= (Me.MaximumMana * 0.5)) &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_stick.Name))
                {
                    _stick.UseAbility();
                    Utils.Sleep(200, "mana_items");
                }
                if ( // Satanic
                    _satanic != null &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    _satanic.CanBeCasted() &&
                    Me.Distance2D(E) <= Me.AttackRange + 50 &&
                    Menu.Item("Item").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                    Utils.SleepCheck("_satanic")
                    )
                {
                    _satanic.UseAbility();
                    Utils.Sleep(240, "_satanic");
                } // Satanic Item end
                if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                             (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("_mail"))
                {
                    _mail.UseAbility();
                    Utils.Sleep(100, "_mail");
                }
                if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                           (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("_bkb"))
                {
                    _bkb.UseAbility();
                    Utils.Sleep(100, "_bkb");
                }
            }
            if (Menu.Item("autoUlt").GetValue <bool>() && Me.IsAlive)
            {
                double[] penitence = { 0, 1.15, 1.2, 1.25, 1.3 };
                double[] souls     = { 0, 1.2, 1.3, 1.4, 1.5 };

                _r = Me.Spellbook.SpellR;
                var ultLvl = _r.Level;
                var enemy  =
                    ObjectManager.GetEntities <Hero>()
                    .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion)
                    .ToList();
                if (enemy.Count == 0)
                {
                    return;
                }
                foreach (var z in enemy)
                {
                    if (!z.IsVisible || !z.IsAlive)
                    {
                        continue;
                    }
                    var manna  = (z.MaximumMana - z.Mana);
                    var damage = Math.Floor((manna * _ult[ultLvl]) * (1 - z.MagicDamageResist));

                    var lens = Me.HasModifier("modifier_item_aether_lens");

                    if (z.NetworkName == "CDOTA_Unit_Hero_Spectre" && z.Spellbook.Spell3.Level > 0)
                    {
                        damage =
                            Math.Floor((manna * _ult[ultLvl]) *
                                       (1 - (0.10 + z.Spellbook.Spell3.Level * 0.04)) * (1 - z.MagicDamageResist));
                    }
                    if (z.NetworkName == "CDOTA_Unit_Hero_SkeletonKing" &&
                        z.Spellbook.SpellR.CanBeCasted())
                    {
                        damage = 0;
                    }
                    if (lens)
                    {
                        damage = damage * 1.08;
                    }
                    if (z.HasModifier("modifier_kunkka_ghost_ship_damage_absorb"))
                    {
                        damage = damage * 0.5;
                    }
                    if (z.HasModifier("modifier_item_mask_of_madness_berserk"))
                    {
                        damage = damage * 1.3;
                    }

                    if (z.HasModifier("modifier_chen_penitence"))
                    {
                        damage = damage *
                                 penitence[
                            ObjectManager.GetEntities <Hero>()
                            .FirstOrDefault(
                                x => x.Team == Me.Team && x.ClassId == ClassId.CDOTA_Unit_Hero_Chen)
                            .Spellbook.Spell1.Level];
                    }

                    if (z.HasModifier("modifier_shadow_demon_soul_catcher"))
                    {
                        damage = damage *
                                 souls[
                            ObjectManager.GetEntities <Hero>()
                            .FirstOrDefault(
                                x => x.Team == Me.Team && x.ClassId == ClassId.CDOTA_Unit_Hero_Shadow_Demon)
                            .Spellbook.Spell2.Level];
                    }

                    if (_r != null && _r.CanBeCasted() &&
                        !z.HasModifier("modifier_tusk_snowball_movement") &&
                        !z.HasModifier("modifier_snowball_movement_friendly") &&
                        !z.HasModifier("modifier_templar_assassin_refraction_absorb") &&
                        !z.HasModifier("modifier_ember_spirit_flame_guard") &&
                        !z.HasModifier("modifier_ember_spirit_sleight_of_fist_caster_invulnerability") &&
                        !z.HasModifier("modifier_obsidian_destroyer_astral_imprisonment_prison") &&
                        !z.HasModifier("modifier_puck_phase_shift") &&
                        !z.HasModifier("modifier_eul_cyclone") &&
                        !z.HasModifier("modifier_dazzle_shallow_grave") &&
                        !z.HasModifier("modifier_shadow_demon_disruption") &&
                        !z.HasModifier("modifier_necrolyte_reapers_scythe") &&
                        !z.HasModifier("modifier_medusa_stone_gaze_stone") &&
                        !z.HasModifier("modifier_storm_spirit_ball_lightning") &&
                        !z.HasModifier("modifier_ember_spirit_fire_remnant") &&
                        !z.HasModifier("modifier_nyx_assassin_spiked_carapace") &&
                        !z.HasModifier("modifier_phantom_lancer_doppelwalk_phase") &&
                        !z.FindSpell("abaddon_borrowed_time").CanBeCasted() &&
                        !z.HasModifier("modifier_abaddon_borrowed_time_damage_redirect") &&
                        Me.Distance2D(z) <= _r.GetCastRange() + 50 &&
                        !z.IsMagicImmune() &&
                        enemy.Count(x => (x.Health - damage) <= 0 && x.Distance2D(z) <= 500)
                        >= Menu.Item("ulti").GetValue <Slider>().Value &&
                        enemy.Count(x => x.Distance2D(z) <= 500)
                        >= Menu.Item("ulti").GetValue <Slider>().Value &&
                        damage >= Menu.Item("minDMG").GetValue <Slider>().Value &&
                        Utils.SleepCheck(z.Handle.ToString()))
                    {
                        _r.UseAbility(z);
                        Utils.Sleep(150, z.Handle.ToString());
                        return;
                    }
                }
            }
        } // Combo
Ejemplo n.º 28
0
        public void Combo()
        {
            if (!Game.IsInGame || Game.IsPaused || Game.IsWatchingGame)
            {
                return;
            }

            Active = Game.IsKeyDown(Menu.Item("Combo Key").GetValue <KeyBind>().Key) && !Game.IsChatOpen;
            if (Active && Me.IsAlive)
            {
                E = Toolset.ClosestToMouse(Me);
                if (E == null)
                {
                    return;
                }
                _q = Me.Spellbook.SpellQ;

                _w = Me.Spellbook.SpellW;

                _r = Me.Spellbook.SpellR;

                // item
                _sheep = E.ClassId == ClassId.CDOTA_Unit_Hero_Tidehunter ? null : Me.FindItem("item_sheepstick");

                _satanic = Me.FindItem("item_satanic");

                _shiva = Me.FindItem("item_shivas_guard");

                _dagon = Me.Inventory.Items.FirstOrDefault(item => item.Name.Contains("item_dagon"));

                _arcane = Me.FindItem("item_arcane_boots");

                _orchid = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");

                _mom = Me.FindItem("item_mask_of_madness");

                _vail = Me.FindItem("item_veil_of_discord");

                _medall = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");

                _ethereal = Me.FindItem("item_ethereal_blade");

                _blink = Me.FindItem("item_blink");

                _soul = Me.FindItem("item_soul_ring");

                _cheese = Me.FindItem("item_cheese");

                _halberd = Me.FindItem("item_heavens_halberd");

                _abyssal = Me.FindItem("item_abyssal_blade");

                _mjollnir = Me.FindItem("item_mjollnir");
                var stoneModif = E.HasModifier("modifier_medusa_stone_gaze_stone");
                var linkens    = E.IsLinkensProtected();
                var noBlade    = E.HasModifier("modifier_item_blade_mail_reflect");
                if (E.IsVisible && Me.Distance2D(E) <= 2300 && !noBlade)
                {
                    if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                    {
                        Orbwalking.Orbwalk(E, 0, 1600, true, true);
                    }
                    if (
                        _r != null &&
                        _r.CanBeCasted() &&
                        !Me.HasModifier("modifier_nyx_assassin_vendetta") &&
                        Me.Distance2D(E) <= 1400 &&
                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name) &&
                        Utils.SleepCheck("R")
                        )
                    {
                        _r.UseAbility();
                        Utils.Sleep(200, "R");
                    }

                    if (_r != null && (_r.IsInAbilityPhase || Me.HasModifier("modifier_nyx_assassin_vendetta") || _r.IsChanneling))
                    {
                        return;
                    }
                    if (_r == null || !_r.CanBeCasted() && !Me.HasModifier("modifier_nyx_assassin_vendetta") ||
                        !Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name))
                    {
                        if (stoneModif)
                        {
                            return;
                        }
                        var angle = Me.FindAngleBetween(E.Position, true);
                        var pos   = new Vector3((float)(E.Position.X - 100 * Math.Cos(angle)), (float)(E.Position.Y - 100 * Math.Sin(angle)), 0);
                        if (
                            _blink != null &&
                            _q.CanBeCasted() &&
                            Me.CanCast() &&
                            _blink.CanBeCasted() &&
                            Me.Distance2D(E) >= 300 &&
                            Me.Distance2D(pos) <= 1180 &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                            Utils.SleepCheck("blink")
                            )
                        {
                            _blink.UseAbility(pos);
                            Utils.Sleep(250, "blink");
                        }
                        if ( // orchid
                            _orchid != null &&
                            _orchid.CanBeCasted() &&
                            Me.CanCast() &&
                            !E.IsLinkensProtected() &&
                            !E.IsMagicImmune() &&
                            Me.Distance2D(E) <= Me.AttackRange + Me.HullRadius + 50 &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                            Utils.SleepCheck("orchid")
                            )
                        {
                            _orchid.UseAbility(E);
                            Utils.Sleep(250, "orchid");
                        } // orchid Item end
                        if ( // vail
                            _vail != null &&
                            _vail.CanBeCasted() &&
                            Me.CanCast() &&
                            Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                            !E.IsMagicImmune() &&
                            Utils.SleepCheck("vail") &&
                            Me.Distance2D(E) <= 1500
                            )
                        {
                            _vail.UseAbility(E.Position);
                            Utils.Sleep(250, "vail");
                        }

                        if ( // ethereal
                            _ethereal != null &&
                            _ethereal.CanBeCasted() &&
                            (!_vail.CanBeCasted() ||
                             _vail == null) &&
                            Me.CanCast() &&
                            !linkens &&
                            !E.IsMagicImmune() &&
                            Utils.SleepCheck("ethereal")
                            )
                        {
                            _ethereal.UseAbility(E);
                            Utils.Sleep(150, "ethereal");
                        }

                        if ((_vail == null || !_vail.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name)) && (_ethereal == null || !_ethereal.CanBeCasted() || !Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name)))
                        {
                            if ( // sheep
                                _sheep != null &&
                                _sheep.CanBeCasted() &&
                                Me.CanCast() &&
                                !E.IsLinkensProtected() &&
                                !E.IsMagicImmune() &&
                                !E.IsStunned() &&
                                !E.IsHexed() &&
                                Me.Distance2D(E) <= 1400 &&
                                !stoneModif &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) &&
                                Utils.SleepCheck("sheep")
                                )
                            {
                                _sheep.UseAbility(E);
                                Utils.Sleep(250, "sheep");
                            } // sheep Item end
                            if (
                                _q != null &&
                                _q.CanBeCasted() &&
                                _q.Cooldown <= 0 &&
                                Me.Mana >= _q.ManaCost &&
                                !E.IsStunned() &&
                                !E.IsHexed() &&
                                Me.Distance2D(E) <= _q.GetCastRange() + Me.HullRadius &&
                                !E.IsMagicImmune() &&
                                Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                                Utils.SleepCheck("Q"))
                            {
                                _q.CastSkillShot(E);
                                Utils.Sleep(100, "Q");
                            }
                            if (
                                _w != null &&
                                _w.CanBeCasted() &&
                                Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                                E.Mana >= (E.MaximumMana * 0.2) &&
                                Me.Position.Distance2D(E.Position) < _w.GetCastRange() &&
                                Utils.SleepCheck("W"))
                            {
                                _w.UseAbility(E);
                                Utils.Sleep(100, "W");
                            }

                            if ( // SoulRing Item
                                _soul != null &&
                                Me.Health >= (Me.MaximumHealth * 0.5) &&
                                Me.Mana <= _r.ManaCost &&
                                _soul.CanBeCasted() &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_soul.Name) &&
                                Utils.SleepCheck("soul"))
                            {
                                _soul.UseAbility();
                                Utils.Sleep(100, "soul");
                            } // SoulRing Item end

                            if ( // Arcane Boots Item
                                _arcane != null &&
                                Me.Mana <= _q.ManaCost &&
                                _arcane.CanBeCasted() &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_arcane.Name) &&
                                Utils.SleepCheck("arcane"))
                            {
                                _arcane.UseAbility();
                                Utils.Sleep(100, "arcane");
                            } // Arcane Boots Item end

                            if ( // Shiva Item
                                _shiva != null &&
                                _shiva.CanBeCasted() &&
                                Me.CanCast() &&
                                !E.IsMagicImmune() &&
                                Utils.SleepCheck("shiva") &&
                                Me.Distance2D(E) <= 600 &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name)
                                )
                            {
                                _shiva.UseAbility();
                                Utils.Sleep(250, "shiva");
                            } // Shiva Item end

                            if ( // Medall
                                _medall != null &&
                                _medall.CanBeCasted() &&
                                Me.CanCast() &&
                                !E.IsMagicImmune() &&
                                Utils.SleepCheck("Medall") &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                                Me.Distance2D(E) <= 500
                                )
                            {
                                _medall.UseAbility(E);
                                Utils.Sleep(250, "Medall");
                            } // Medall Item end

                            if ( // MOM
                                _mom != null &&
                                _mom.CanBeCasted() &&
                                Me.CanCast() &&
                                Utils.SleepCheck("mom") &&
                                Me.Distance2D(E) <= 700 &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mom.Name)
                                )
                            {
                                _mom.UseAbility();
                                Utils.Sleep(250, "mom");
                            } // MOM Item end

                            if (
                                // cheese
                                _cheese != null &&
                                _cheese.CanBeCasted() &&
                                Me.Health <= (Me.MaximumHealth * 0.3) &&
                                Me.Distance2D(E) <= 700 &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_cheese.Name) &&
                                Utils.SleepCheck("cheese")
                                )
                            {
                                _cheese.UseAbility();
                                Utils.Sleep(200, "cheese");
                            } // cheese Item end
                            if ( // Abyssal Blade
                                _abyssal != null &&
                                _abyssal.CanBeCasted() &&
                                Me.CanCast() &&
                                !E.IsMagicImmune() &&
                                Utils.SleepCheck("abyssal") &&
                                Me.Distance2D(E) <= 400 &&
                                !E.IsStunned() &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name)
                                )
                            {
                                _abyssal.UseAbility(E);
                                Utils.Sleep(250, "abyssal");
                            } // Abyssal Item end

                            if ( // Hellbard
                                _halberd != null &&
                                _halberd.CanBeCasted() &&
                                Me.CanCast() &&
                                !E.IsMagicImmune() &&
                                Utils.SleepCheck("halberd") &&
                                Me.Distance2D(E) <= 700 &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                                )
                            {
                                _halberd.UseAbility(E);
                                Utils.Sleep(250, "halberd");
                            } // Hellbard Item end

                            if ( // Dagon
                                Me.CanCast() &&
                                _dagon != null &&
                                (_ethereal == null ||
                                 (E.HasModifier("modifier_item_ethereal_blade_slow") ||
                                  _ethereal.Cooldown < 18)) &&
                                !E.IsLinkensProtected() &&
                                _dagon.CanBeCasted() &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                                !E.IsMagicImmune() &&
                                !stoneModif &&
                                Utils.SleepCheck("dagon")
                                )
                            {
                                _dagon.UseAbility(E);
                                Utils.Sleep(200, "dagon");
                            } // Dagon Item end

                            if ( // Mjollnir
                                _mjollnir != null &&
                                _mjollnir.CanBeCasted() &&
                                Me.CanCast() &&
                                !E.IsMagicImmune() &&
                                Utils.SleepCheck("mjollnir") &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                                Me.Distance2D(E) <= 900
                                )
                            {
                                _mjollnir.UseAbility(Me);
                                Utils.Sleep(250, "mjollnir");
                            } // Mjollnir Item end

                            if ( // Satanic
                                _satanic != null &&
                                Me.Health <= (Me.MaximumHealth * 0.3) &&
                                _satanic.CanBeCasted() &&
                                Me.Distance2D(E) <= 700 &&
                                Utils.SleepCheck("Satanic") &&
                                Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name)
                                )
                            {
                                _satanic.UseAbility();
                                Utils.Sleep(350, "Satanic");
                            } // Satanic Item end
                        }
                    }
                }
            }
            if (!Menu.Item("Kill").GetValue <bool>() || !Me.IsAlive ||
                (!Me.IsVisibleToEnemies && Me.IsInvisible()))
            {
                return;
            }
            var enemies =
                ObjectManager.GetEntities <Hero>()
                .Where(x => x.IsVisible && x.IsAlive && x.Team != Me.Team && !x.IsIllusion).ToList();

            double[] penitence = { 0, 1.15, 1.2, 1.25, 1.3 };
            double[] bloodrage = { 0, 1.15, 1.2, 1.25, 1.3 };
            double[] soul      = { 0, 1.2, 1.3, 1.4, 1.5 };

            if (enemies.Count <= 0)
            {
                return;
            }
            foreach (var v in enemies)
            {
                if (v == null)
                {
                    return;
                }

                var wM   = new[] { 3.5, 4, 4.5, 5 };
                var wDmg = Me.TotalIntelligence * wM[_w.Level - 1];

                var damageW = Math.Floor(wDmg * (1 - v.MagicDamageResist));

                var lens           = Me.HasModifier("modifier_item_aether_lens");
                var spellamplymult = 1 + (Me.TotalIntelligence / 16 / 100);
                if (v.NetworkName == "CDOTA_Unit_Hero_Spectre" && v.Spellbook.Spell3.Level > 0)
                {
                    damageW =
                        Math.Floor(wDmg *
                                   (1 - (0.10 + v.Spellbook.Spell3.Level * 0.04)) * (1 - v.MagicDamageResist));
                }

                if (lens)
                {
                    damageW = damageW * 1.08;
                }
                if (v.HasModifier("modifier_kunkka_ghost_ship_damage_absorb"))
                {
                    damageW = damageW * 0.5;
                }
                if (v.HasModifier("modifier_item_mask_of_madness_berserk"))
                {
                    damageW = damageW * 1.3;
                }
                if (v.HasModifier("modifier_bloodseeker_bloodrage"))
                {
                    var blood =
                        ObjectManager.GetEntities <Hero>()
                        .FirstOrDefault(x => x.ClassId == ClassId.CDOTA_Unit_Hero_Bloodseeker);
                    if (blood != null)
                    {
                        damageW = damageW * bloodrage[blood.Spellbook.Spell1.Level];
                    }
                    else
                    {
                        damageW = damageW * 1.4;
                    }
                }


                if (v.HasModifier("modifier_chen_penitence"))
                {
                    var chen =
                        ObjectManager.GetEntities <Hero>()
                        .FirstOrDefault(x => x.Team == Me.Team && x.ClassId == ClassId.CDOTA_Unit_Hero_Chen);
                    if (chen != null)
                    {
                        damageW = damageW * penitence[chen.Spellbook.Spell1.Level];
                    }
                }


                if (v.HasModifier("modifier_shadow_demon_soul_catcher"))
                {
                    var demon =
                        ObjectManager.GetEntities <Hero>()
                        .FirstOrDefault(x => x.Team == Me.Team && x.ClassId == ClassId.CDOTA_Unit_Hero_Shadow_Demon);
                    if (demon != null)
                    {
                        damageW = damageW * soul[demon.Spellbook.Spell2.Level];
                    }
                }
                damageW = damageW * spellamplymult;

                if (damageW > v.Mana)
                {
                    damageW = v.Mana;
                }


                if ( // vail
                    _vail != null &&
                    _vail.CanBeCasted() &&
                    _w.CanBeCasted() &&
                    v.Health <= damageW * 1.25 &&
                    v.Health >= damageW &&
                    Me.CanCast() &&
                    !v.HasModifier("modifier_item_veil_of_discord_debuff") &&
                    !v.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                    Me.Distance2D(v) <= _w.GetCastRange() &&
                    Utils.SleepCheck("vail")
                    )
                {
                    _vail.UseAbility(v.Position);
                    Utils.Sleep(250, "vail");
                }
                var etherealdamage = (int)(((Me.TotalIntelligence * 2) + 75));
                if ( // vail
                    _ethereal != null &&
                    _ethereal.CanBeCasted() &&
                    _w != null &&
                    _w.CanBeCasted() &&
                    v.Health <= etherealdamage + damageW * 1.4 &&
                    v.Health >= damageW &&
                    Me.CanCast() &&
                    !v.HasModifier("modifier_item_ethereal_blade_slow") &&
                    !v.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                    Me.Distance2D(v) <= _ethereal.GetCastRange() + 50 &&
                    Utils.SleepCheck("ethereal")
                    )
                {
                    _ethereal.UseAbility(v);
                    Utils.Sleep(250, "ethereal");
                }

                if (_w != null && v != null && _w.CanBeCasted() &&
                    Me.AghanimState()
                    ? !(Me.Distance2D(v) <= 1050)
                    : !(Me.Distance2D(v) <= _w.GetCastRange() + 50) ||
                    v.HasModifier("modifier_tusk_snowball_movement") ||
                    v.HasModifier("modifier_snowball_movement_friendly") ||
                    v.HasModifier("modifier_templar_assassin_refraction_absorb") ||
                    v.HasModifier("modifier_ember_spirit_flame_guard") ||
                    v.HasModifier("modifier_ember_spirit_sleight_of_fist_caster_invulnerability") ||
                    v.HasModifier("modifier_obsidian_destroyer_astral_imprisonment_prison") ||
                    v.HasModifier("modifier_puck_phase_shift") || v.HasModifier("modifier_eul_cyclone") ||
                    v.HasModifier("modifier_dazzle_shallow_grave") ||
                    v.HasModifier("modifier_shadow_demon_disruption") ||
                    v.HasModifier("modifier_necrolyte_reapers_scythe") ||
                    v.HasModifier("modifier_necrolyte_reapers_scythe") ||
                    v.HasModifier("modifier_storm_spirit_ball_lightning") ||
                    v.HasModifier("modifier_ember_spirit_fire_remnant") ||
                    v.HasModifier("modifier_nyx_assassin_spiked_carapace") ||
                    v.HasModifier("modifier_phantom_lancer_doppelwalk_phase") ||
                    v.FindSpell("abaddon_borrowed_time").CanBeCasted() ||
                    v.HasModifier("modifier_abaddon_borrowed_time_damage_redirect") || v.IsMagicImmune() ||
                    !(v.Health < damageW) || !Utils.SleepCheck(v.Handle.ToString()))
                {
                    continue;
                }
                _w.UseAbility(v);
                Utils.Sleep(150, v.Handle.ToString());
                return;
            }
        }
Ejemplo n.º 29
0
        public void Combo()
        {
            if (!Menu.Item("enabled").IsActive())
            {
                return;
            }

            E = Toolset.ClosestToMouse(Me);
            if (E == null)
            {
                return;
            }
            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key);

            _q = Me.Spellbook.SpellQ;
            _w = Me.Spellbook.SpellW;

            _blink    = Me.FindItem("item_blink");
            _urn      = Me.FindItem("item_urn_of_shadows");
            _dagon    = Me.Inventory.Items.FirstOrDefault(x => x.Name.Contains("item_dagon"));
            _ethereal = Me.FindItem("item_ethereal_blade");
            _halberd  = Me.FindItem("item_heavens_halberd");
            _mjollnir = Me.FindItem("item_mjollnir");
            _orchid   = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            _abyssal  = Me.FindItem("item_abyssal_blade");
            _mail     = Me.FindItem("item_blade_mail");
            _bkb      = Me.FindItem("item_black_king_bar");
            _satanic  = Me.FindItem("item_satanic");
            _medall   = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            _shiva    = Me.FindItem("item_shivas_guard");
            _vail     = Me.FindItem("item_veil_of_discord");

            var modifEther = E.Modifiers.Any(y => y.Name == "modifier_item_ethereal_blade_slow");
            var stoneModif = E.Modifiers.Any(y => y.Name == "modifier_medusa_stone_gaze_stone");
            var v          =
                ObjectManager.GetEntities <Hero>()
                .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && !x.IsMagicImmune())
                .ToList();
            var isInvisible =
                Me.IsInvisible();

            if (Active)
            {
                if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                {
                    Orbwalking.Orbwalk(E, 0, 1600, true, true);
                }
            }
            if (Active && Me.Distance2D(E) <= 1400 && E.IsAlive && !isInvisible)
            {
                float   angle = Me.FindAngleBetween(E.Position, true);
                Vector3 pos   = new Vector3((float)(E.Position.X - 100 * Math.Cos(angle)), (float)(E.Position.Y - 100 * Math.Sin(angle)), 0);
                if (
                    _blink != null &&
                    _q.CanBeCasted() &&
                    Me.CanCast() &&
                    _blink.CanBeCasted() &&
                    Me.Distance2D(E) >= Toolset.AttackRange + 150 &&
                    Me.Distance2D(pos) <= 1180 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                    Utils.SleepCheck("blink")
                    )
                {
                    _blink.UseAbility(pos);
                    Utils.Sleep(250, "blink");
                }
                if (_orchid != null && _orchid.CanBeCasted() && Me.Distance2D(E) <= 900 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) && Utils.SleepCheck("orchid"))
                {
                    _orchid.UseAbility(E);
                    Utils.Sleep(100, "orchid");
                }
                if (                 // vail
                    _vail != null &&
                    _vail.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_vail.Name) &&
                    Me.Distance2D(E) <= 1500 &&
                    Utils.SleepCheck("vail")
                    )
                {
                    _vail.UseAbility(E.Position);
                    Utils.Sleep(250, "vail");
                }                 // orchid Item end
                if (_ethereal != null && _ethereal.CanBeCasted() &&
                    Me.Distance2D(E) <= 700 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                    Utils.SleepCheck("ethereal"))
                {
                    _ethereal.UseAbility(E);
                    Utils.Sleep(100, "ethereal");
                }

                if (                 // Dagon
                    Me.CanCast() &&
                    _dagon != null &&
                    (_ethereal == null ||
                     (modifEther ||
                      _ethereal.Cooldown < 17)) &&
                    !E.IsLinkensProtected() &&
                    _dagon.CanBeCasted() &&
                    Me.Distance2D(E) <= 1400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled("item_dagon") &&
                    !E.IsMagicImmune() &&
                    !stoneModif &&
                    Utils.SleepCheck("dagon")
                    )
                {
                    _dagon.UseAbility(E);
                    Utils.Sleep(200, "dagon");
                }                 // Dagon Item end
                if (
                    _q != null && _q.CanBeCasted() && Me.Distance2D(E) <= 1500 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                    Utils.SleepCheck("Q")
                    )
                {
                    _q.UseAbility(E.Predict(400));
                    Utils.Sleep(200, "Q");
                }
                if (
                    _w != null && _w.CanBeCasted() && Me.Distance2D(E) <= 1500 &&
                    Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name) &&
                    Utils.SleepCheck("W")
                    )
                {
                    _w.UseAbility(E);
                    Utils.Sleep(200, "W");
                }
                if (                 // Mjollnir
                    _mjollnir != null &&
                    _mjollnir.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                    Utils.SleepCheck("mjollnir") &&
                    Me.Distance2D(E) <= 900
                    )
                {
                    _mjollnir.UseAbility(Me);
                    Utils.Sleep(250, "mjollnir");
                }                 // Mjollnir Item end
                if (              // Medall
                    _medall != null &&
                    _medall.CanBeCasted() &&
                    Utils.SleepCheck("Medall") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                    Me.Distance2D(E) <= 700
                    )
                {
                    _medall.UseAbility(E);
                    Utils.Sleep(250, "Medall");
                }                 // Medall Item end


                if (_shiva != null && _shiva.CanBeCasted() && Me.Distance2D(E) <= 600 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                    !E.IsMagicImmune() && Utils.SleepCheck("Shiva"))
                {
                    _shiva.UseAbility();
                    Utils.Sleep(100, "Shiva");
                }
                if (                 // Abyssal Blade
                    _abyssal != null &&
                    _abyssal.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsStunned() &&
                    !E.IsHexed() &&
                    Utils.SleepCheck("abyssal") &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                    Me.Distance2D(E) <= 400
                    )
                {
                    _abyssal.UseAbility(E);
                    Utils.Sleep(250, "abyssal");
                }                 // Abyssal Item end
                if (_urn != null && _urn.CanBeCasted() && _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("urn"))
                {
                    _urn.UseAbility(E);
                    Utils.Sleep(240, "urn");
                }
                if (                 // Hellbard
                    _halberd != null &&
                    _halberd.CanBeCasted() &&
                    Me.CanCast() &&
                    !E.IsMagicImmune() &&
                    (E.NetworkActivity == NetworkActivity.Attack ||
                     E.NetworkActivity == NetworkActivity.Crit ||
                     E.NetworkActivity == NetworkActivity.Attack2) &&
                    Utils.SleepCheck("halberd") &&
                    Me.Distance2D(E) <= 700 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                    )
                {
                    _halberd.UseAbility(E);
                    Utils.Sleep(250, "halberd");
                }
                if (                 // Satanic
                    _satanic != null &&
                    Me.Health <= (Me.MaximumHealth * 0.3) &&
                    _satanic.CanBeCasted() &&
                    Me.Distance2D(E) <= Me.AttackRange + 50 &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                    Utils.SleepCheck("satanic")
                    )
                {
                    _satanic.UseAbility();
                    Utils.Sleep(240, "satanic");
                }                 // Satanic Item end
                if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                             (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                {
                    _mail.UseAbility();
                    Utils.Sleep(100, "mail");
                }
                if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                           (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                    Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("bkb"))
                {
                    _bkb.UseAbility();
                    Utils.Sleep(100, "bkb");
                }
            }
        }
Ejemplo n.º 30
0
        public void Combo()
        {
            Active = Game.IsKeyDown(Menu.Item("keyBind").GetValue <KeyBind>().Key);

            _q = Me.Spellbook.SpellQ;
            _w = Me.Spellbook.SpellW;
            _r = Me.Spellbook.SpellR;


            _mom      = Me.FindItem("item_mask_of_madness");
            _urn      = Me.FindItem("item_urn_of_shadows");
            _dagon    = Me.Inventory.Items.FirstOrDefault(x => x.Name.Contains("item_dagon"));
            _ethereal = Me.FindItem("item_ethereal_blade");
            _halberd  = Me.FindItem("item_heavens_halberd");
            _mjollnir = Me.FindItem("item_mjollnir");
            _orchid   = Me.FindItem("item_orchid") ?? Me.FindItem("item_bloodthorn");
            _abyssal  = Me.FindItem("item_abyssal_blade");
            _mail     = Me.FindItem("item_blade_mail");
            _bkb      = Me.FindItem("item_black_king_bar");
            _satanic  = Me.FindItem("item_satanic");
            _blink    = Me.FindItem("item_blink");
            _medall   = Me.FindItem("item_medallion_of_courage") ?? Me.FindItem("item_solar_crest");
            _shiva    = Me.FindItem("item_shivas_guard");
            var v =
                ObjectManager.GetEntities <Hero>()
                .Where(x => x.Team != Me.Team && x.IsAlive && x.IsVisible && !x.IsIllusion && !x.IsMagicImmune())
                .ToList();


            var modifInv = Me.IsInvisible();

            if (Active)
            {
                E = Toolset.ClosestToMouse(Me);
                if (E == null)
                {
                    return;
                }

                if ((_w != null && _w.CanBeCasted() && Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name)))
                {
                    if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                    {
                        Orbwalking.Orbwalk(E, 0, 1600, true, true);
                    }
                }
                _sheep = E.ClassId == ClassId.CDOTA_Unit_Hero_Tidehunter ? null : Me.FindItem("item_sheepstick");

                Console.WriteLine("3");
                if (Me.Distance2D(E) <= 1400 && E != null && E.IsAlive && !modifInv)
                {
                    if (_w != null && (!_w.CanBeCasted() || !Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name)))
                    {
                        if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                        {
                            Orbwalking.Orbwalk(E, 0, 1600, false, true);
                        }
                    }
                    Console.WriteLine("4");
                    var stoneModif = E.HasModifier("modifier_medusa_stone_gaze_stone");
                    if (stoneModif)
                    {
                        return;
                    }
                    float   angle = Me.FindAngleBetween(E.Position, true);
                    Vector3 pos   = new Vector3((float)(E.Position.X - 500 * Math.Cos(angle)), (float)(E.Position.Y - 500 * Math.Sin(angle)), 0);
                    if (
                        _blink != null &&
                        _q.CanBeCasted() &&
                        Me.CanCast() &&
                        _blink.CanBeCasted() &&
                        Me.Distance2D(E) >= 490 &&
                        Me.Distance2D(pos) <= 1180 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_blink.Name) &&
                        Utils.SleepCheck("blink")
                        )
                    {
                        _blink.UseAbility(pos);
                        Utils.Sleep(250, "blink");
                    }
                    if (                     // sheep
                        _sheep != null &&
                        _sheep.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsLinkensProtected() &&
                        !E.IsMagicImmune() &&
                        Me.Distance2D(E) <= 1400 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_sheep.Name) &&
                        Utils.SleepCheck("sheep")
                        )
                    {
                        _sheep.UseAbility(E);
                        Utils.Sleep(250, "sheep");
                    }                     // sheep Item end
                    if (
                        _q != null && _q.CanBeCasted() && Me.Distance2D(E) <= Me.AttackRange + 50 &&
                        Me.CanAttack() &&
                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_q.Name) &&
                        Utils.SleepCheck("Q")
                        )
                    {
                        _q.UseAbility();
                        Utils.Sleep(150, "Q");
                    }
                    if (_w != null && _w.CanBeCasted() &&
                        Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_w.Name))
                    {
                        if (Menu.Item("orbwalk").GetValue <bool>() && Me.Distance2D(E) <= 1900)
                        {
                            Orbwalking.Orbwalk(E, 0, 1600, true, true);
                        }
                    }
                    if (                     // MOM
                        _mom != null &&
                        _mom.CanBeCasted() &&
                        Me.CanCast() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mom.Name) &&
                        Utils.SleepCheck("mom") &&
                        Me.Distance2D(E) <= 700
                        )
                    {
                        _mom.UseAbility();
                        Utils.Sleep(250, "mom");
                    }
                    if (                     // Mjollnir
                        _mjollnir != null &&
                        _mjollnir.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsMagicImmune() &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mjollnir.Name) &&
                        Utils.SleepCheck("mjollnir") &&
                        Me.Distance2D(E) <= 900
                        )
                    {
                        _mjollnir.UseAbility(Me);
                        Utils.Sleep(250, "mjollnir");
                    }                     // Mjollnir Item end
                    if (                  // Medall
                        _medall != null &&
                        _medall.CanBeCasted() &&
                        Utils.SleepCheck("Medall") &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_medall.Name) &&
                        Me.Distance2D(E) <= 700
                        )
                    {
                        _medall.UseAbility(E);
                        Utils.Sleep(250, "Medall");
                    }                     // Medall Item end
                    if (                  // orchid
                        _orchid != null &&
                        _orchid.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsLinkensProtected() &&
                        !E.IsMagicImmune() &&
                        Me.Distance2D(E) <= Me.AttackRange + 40 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_orchid.Name) &&
                        Utils.SleepCheck("orchid")
                        )
                    {
                        _orchid.UseAbility(E);
                        Utils.Sleep(250, "orchid");
                    }                     // orchid Item end

                    if (_shiva != null && _shiva.CanBeCasted() && Me.Distance2D(E) <= 600 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_shiva.Name) &&
                        !E.IsMagicImmune() && Utils.SleepCheck("Shiva"))
                    {
                        _shiva.UseAbility();
                        Utils.Sleep(100, "Shiva");
                    }

                    if (_ethereal != null && _ethereal.CanBeCasted() &&
                        Me.Distance2D(E) <= 700 && Me.Distance2D(E) <= 400 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_ethereal.Name) &&
                        Utils.SleepCheck("ethereal"))
                    {
                        _ethereal.UseAbility(E);
                        Utils.Sleep(100, "ethereal");
                    }

                    if (_dagon != null &&
                        _dagon.CanBeCasted() &&
                        Me.Distance2D(E) <= 500 &&
                        Utils.SleepCheck("dagon"))
                    {
                        _dagon.UseAbility(E);
                        Utils.Sleep(100, "dagon");
                    }
                    if (                     // Abyssal Blade
                        _abyssal != null &&
                        _abyssal.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsStunned() &&
                        !E.IsHexed() &&
                        Utils.SleepCheck("abyssal") &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_abyssal.Name) &&
                        Me.Distance2D(E) <= 400
                        )
                    {
                        _abyssal.UseAbility(E);
                        Utils.Sleep(250, "abyssal");
                    }                     // Abyssal Item end
                    if (_urn != null && _urn.CanBeCasted() && _urn.CurrentCharges > 0 && Me.Distance2D(E) <= 400 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_urn.Name) && Utils.SleepCheck("urn"))
                    {
                        _urn.UseAbility(E);
                        Utils.Sleep(240, "urn");
                    }
                    if (                     // Hellbard
                        _halberd != null &&
                        _halberd.CanBeCasted() &&
                        Me.CanCast() &&
                        !E.IsMagicImmune() &&
                        (E.NetworkActivity == NetworkActivity.Attack ||
                         E.NetworkActivity == NetworkActivity.Crit ||
                         E.NetworkActivity == NetworkActivity.Attack2) &&
                        Utils.SleepCheck("halberd") &&
                        Me.Distance2D(E) <= 700 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_halberd.Name)
                        )
                    {
                        _halberd.UseAbility(E);
                        Utils.Sleep(250, "halberd");
                    }
                    if (                     // Satanic
                        _satanic != null &&
                        Me.Health <= (Me.MaximumHealth * 0.3) &&
                        _satanic.CanBeCasted() &&
                        Me.Distance2D(E) <= Me.AttackRange + 50 &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_satanic.Name) &&
                        Utils.SleepCheck("satanic")
                        )
                    {
                        _satanic.UseAbility();
                        Utils.Sleep(240, "satanic");
                    }                     // Satanic Item end
                    if (_mail != null && _mail.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                                 (Menu.Item("Heelm").GetValue <Slider>().Value)) &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_mail.Name) && Utils.SleepCheck("mail"))
                    {
                        _mail.UseAbility();
                        Utils.Sleep(100, "mail");
                    }
                    if (_bkb != null && _bkb.CanBeCasted() && (v.Count(x => x.Distance2D(Me) <= 650) >=
                                                               (Menu.Item("Heel").GetValue <Slider>().Value)) &&
                        Menu.Item("Items").GetValue <AbilityToggler>().IsEnabled(_bkb.Name) && Utils.SleepCheck("bkb"))
                    {
                        _bkb.UseAbility();
                        Utils.Sleep(100, "bkb");
                    }
                }
            }
            if (Menu.Item("Skills").GetValue <AbilityToggler>().IsEnabled(_r.Name))
            {
                var units = ObjectManager.GetEntities <Unit>().Where(creep =>
                                                                     (creep.ClassId == ClassId.CDOTA_BaseNPC_Creep_Neutral ||
                                                                      creep.ClassId == ClassId.CDOTA_BaseNPC_Invoker_Forged_Spirit ||
                                                                      creep.ClassId == ClassId.CDOTA_BaseNPC_Creep ||
                                                                      creep.ClassId == ClassId.CDOTA_BaseNPC_Creep_Lane ||
                                                                      creep.ClassId == ClassId.CDOTA_BaseNPC_Creep_Siege ||
                                                                      creep.ClassId == ClassId.CDOTA_Unit_Hero_Beastmaster_Boar
                                                                     ) &&
                                                                     creep.Health >= (creep.MaximumHealth * 0.7) &&
                                                                     creep.IsAlive &&
                                                                     creep.Distance2D(Me) <= _r.GetCastRange() + 300 &&
                                                                     creep.IsSpawned &&
                                                                     creep.Team != Me.Team).ToList();

                if (_r != null && _r.CanBeCasted() &&
                    Utils.SleepCheck("R") &&
                    !Me.HasModifier("modifier_clinkz_death_pact") &&
                    !Me.IsInvisible())
                {
                    if (units.Count > 0)
                    {
                        _r.UseAbility(units.OrderBy(x => x.Health).LastOrDefault());
                    }
                    Utils.Sleep(1000, "R");
                }
            }
        }