Beispiel #1
0
        public ArmletOfMordiggian(Ability ability, AbilityType type, AbilityCastTarget target = AbilityCastTarget.Self)
            : base(ability, type, target)
        {
            attacking = new MultiSleeper();
            attackStart = new MultiSleeper();
            delay = new Sleeper();

            delay.Sleep(1000);

            Game.OnUpdate += OnUpdate;
            Player.OnExecuteOrder += OnExecuteOrder;
        }
Beispiel #2
0
        public static void Game_OnUpdate(EventArgs args)
        {
            if (!IsEnable)
                return;

            if (_rangeEfeectMaster == null)
                _rangeEfeectMaster = new EfeectMaster();

            if (_spellSleeper == null)
                _spellSleeper = new MultiSleeper();

            if (!MyHero.IsAlive)
                return;

            if (IsRangeEnable)
            {
                DrawPsiBladeStuff();
            }
        }
Beispiel #3
0
 public static void Game_OnUpdate(EventArgs args)
 {
     if (!IsEnable)
         return;
     /*var rem = Helper.FindRemnant(Game.MousePosition);
     if (rem != null && rem.IsAlive)
     {
         Printer.Print("-----------");
         foreach (var modifier in rem.Modifiers)
         {
             Printer.Print(modifier.Name);
         }
     }*/
     if (_attacker == null)
         _attacker = new Sleeper();
     if (_spellSleeper == null)
         _spellSleeper = new MultiSleeper();
     if (_ethereal == null)
         _ethereal = new Sleeper();
     if (!IsComboHero)
     {
         GlobalTarget = null;
         return;
     }
     if (GlobalTarget == null || !GlobalTarget.IsValid || !GlobalTarget.IsAlive)
     {
         GlobalTarget = Helper.ClosestToMouse(Members.MyHero);
         return;
     }
     if (AutoAttack)
         if (UseOrbWalkker)
         {
             Orbwalking.Orbwalk(GlobalTarget, followTarget: true);
         }
         else if (!Members.MyHero.IsAttacking() && !_attacker.Sleeping && !GlobalTarget.IsAttackImmune())
         {
             Members.MyHero.Attack(GlobalTarget);
             _attacker.Sleep(250);
         }
     CastCombo();
 }
 /// <summary>
 ///     The init.
 /// </summary>
 public static void Init()
 {
     sleeper = new MultiSleeper();
     rotationDictionary = new Dictionary<uint, float>();
 }
 /// <summary>
 ///     The initialize.
 /// </summary>
 internal static void Init()
 {
     hitDelayDictionary = new Dictionary<string, double>();
     dataDictionary = new Dictionary<string, AbilitySpecialData>();
     channelDictionary = new Dictionary<string, float>();
     castRangeDictionary = new Dictionary<string, float>();
     castPointDictionary = new Dictionary<string, double>();
     boolDictionary = new Dictionary<string, bool>();
     abilityBehaviorDictionary = new Dictionary<string, AbilityBehavior>();
     speedDictionary = new Dictionary<string, float>();
     radiusDictionary = new Dictionary<string, float>();
     delayDictionary = new Dictionary<string, double>();
     canHitDictionary = new Dictionary<uint, bool>();
     sleeper = new MultiSleeper();
 }
Beispiel #6
0
        public void OnLoad()
        {
            hero = ObjectManager.LocalHero;
            menuManager = new MenuManager(hero.Name);
            treeFactory = new TreeFactory();
            orbwalker = new Orbwalker(hero);
            sleeper = new MultiSleeper();

            TimberPrediction.OnLoad();

            whirlingDeath = new WhirlingDeath(hero.Spellbook.SpellQ);
            timberChain = new TimberChain(hero.Spellbook.SpellW);

            chakrams.Add(
                new Chakram(
                    hero.Spellbook.Spells.First(x => x.Name == "shredder_chakram"),
                    hero.Spellbook.Spells.First(x => x.Name == "shredder_return_chakram")));
        }
Beispiel #7
0
        public void OnLoad()
        {
            Variables.Hero = ObjectManager.LocalHero;
            Variables.HeroTeam = Hero.Team;
            Variables.EnemyTeam = Hero.GetEnemyTeam();
            Variables.Menu = new MenuManager();
            Variables.Pathfinder = new Pathfinder();

            sleeper = new MultiSleeper();
            statusDrawer = new StatusDrawer();
            abilityUpdater = new AbilityUpdater();
            randomiser = new Random();
            abilityModifiers = new AbilityModifiers();
            fountain =
                ObjectManager.GetEntities<Unit>()
                    .First(x => x.ClassID == ClassID.CDOTA_Unit_Fountain && x.Team == HeroTeam);
        }
Beispiel #8
0
 public void OnLoad()
 {
     Hero = ObjectManager.LocalHero;
     enemyTeam = Hero.GetEnemyTeam();
     heroTeam = Hero.Team;
     Menu = new MenuManager();
     Sleeper = new MultiSleeper();
     fountain = new Fountain(heroTeam);
     itemManager = new ItemManager();
     abilityUpdater = new AbilityUpdater();
 }
        public static void Game_OnUpdate(EventArgs args)
        {
            if (!IsEnable)
                return;
            if (!Members.MyHero.IsAlive)
                return;
            //CalculateDamage();
            if (_attacker == null)
                _attacker = new Sleeper();
            if (_spellSleeper == null)
                _spellSleeper = new MultiSleeper();
            if (_ethereal == null)
                _ethereal = new Sleeper();
            var laser = Abilities.FindAbility("tinker_laser");
            var rockets = Abilities.FindAbility("tinker_heat_seeking_missile");
            if (_spellSleeper.Sleeping(Abilities.FindAbility("tinker_rearm")))
                return;
            if (IsEnableKillSteal && !IsComboHero)
            {
                foreach (var x in Heroes.GetByTeam(Members.MyHero.GetEnemyTeam())
                    .Where(x => x.IsAlive && x.IsVisible && !x.IsIllusion() && !x.IsMagicImmune())
                    .Where(x => Helper.CalculateMyCurrentDamage(x, true) < 0))
                {
                    CastCombo(x, laser, rockets, true);
                }
            }

            if (!IsComboHero)
            {
                if (_globalTarget!=null)
                    Helper.UnHandleEffect(_globalTarget);
                _globalTarget = null;
                return;
            }
            if (_globalTarget == null || !_globalTarget.IsValid)
            {
                _globalTarget = Helper.ClosestToMouse(Members.MyHero);
                return;
            }
            Helper.HandleEffect(_globalTarget);
            if (Members.MyHero.IsChanneling() || _globalTarget.Distance2D(Members.MyHero) > 2500)
            {
                return;
            }
            if (AutoAttack)
                if (UseOrbWalkker)
                {
                    Orbwalking.Orbwalk(_globalTarget, followTarget: true);
                }
                else if (!Members.MyHero.IsAttacking() && !_attacker.Sleeping && !_globalTarget.IsAttackImmune())
                {
                    Members.MyHero.Attack(_globalTarget);
                    _attacker.Sleep(250);
                }
            CastCombo(_globalTarget,laser, rockets);
        }
Beispiel #10
0
 private static void Load()
 {
     if (ObjectManager.LocalHero.ClassID != ClassID.CDOTA_Unit_Hero_Wisp)
         return;
     if (Members.MyHero == null || !Members.MyHero.IsValid)
     {
         Members.MyHero = ObjectManager.LocalHero;
         Members.MyTeam = ObjectManager.LocalHero.Team;
     }
     _attacker = new Sleeper();
     _updater = new Sleeper();
     _multiSleeper = new MultiSleeper();
     Orbwalking.Load();
     Members.Items = new List<string>();
     Members.Menu.AddToMainMenu();
     Game.OnUpdate += Game_OnUpdate;
     Game.OnUpdate += AutoSaver;
     Game.OnUpdate += AutoTeaser;
     Drawing.OnDraw += Drawing_OnDraw;
     Entity.OnParticleEffectAdded += EntityOnOnParticleEffectAdded;
 }
        public static void Game_OnUpdate(EventArgs args)
        {
            if (!IsEnable)
                return;
            if (_combos==null)
                _combos=new MultiSleeper();
            var smash = Abilities.FindAbility("earth_spirit_boulder_smash");
            var geomagneticGrip = Abilities.FindAbility("earth_spirit_geomagnetic_grip");
            var magnetize = Abilities.FindAbility("earth_spirit_magnetize");
            var rollingBoulder = Abilities.FindAbility("earth_spirit_rolling_boulder");
            var stoneCaller = Abilities.FindAbility("earth_spirit_stone_caller");
            var petrify = Abilities.FindAbility("earth_spirit_petrify");
            if (Combo1)
            {
                if (smash.CanBeCasted() && !_combos.Sleeping(smash))
                {
                    var remnant = Helper.FindRemnant();
                    if (stoneCaller.CanBeCasted() && remnant == null)
                        stoneCaller.UseAbility(Prediction.InFront(Members.MyHero, 75));
                    //stoneCaller.UseAbility(Members.MyHero.Position);
                    smash.UseAbility(Game.MousePosition);
                    _combos.Sleep(500, smash);
                }
            }
            else if (Combo2)
            {
                if (rollingBoulder.CanBeCasted() && !_combos.Sleeping(rollingBoulder))
                {
                    var myPos = Members.MyHero.Position;
                    var mousePos = Game.MousePosition;

                    var angle = Members.MyHero.FindAngleBetween(mousePos, true);
                    var point = new Vector3(
                        (float)
                            (myPos.X +
                             75 *
                             Math.Cos(angle)),
                        (float)
                            (myPos.Y +
                             75 *
                             Math.Sin(angle)),
                        0);
                    var remnant = Helper.FindRemnant(range:100);
                    if (stoneCaller.CanBeCasted() && remnant == null)
                        stoneCaller.UseAbility(point);
                    rollingBoulder.UseAbility(Game.MousePosition);
                    _combos.Sleep(500, rollingBoulder);
                }
            }
            else if (Combo3)
            {
                var myPos = Members.MyHero.Position;
                var mousePos = Game.MousePosition;
                var distance = myPos.Distance2D(mousePos);
                var myInventory = Members.MyHero.Inventory.Items.ToList();
                var extraRange = myInventory.Any(x => x.StoredName() == "item_aether_lens") ? 200 : 0;
                if (geomagneticGrip.CanBeCasted() && !_combos.Sleeping(geomagneticGrip) &&
                    distance <= 1100 + extraRange)
                {
                    var remnant = Helper.FindRemnant(mousePos);
                    if (stoneCaller.CanBeCasted() && remnant == null)
                    {
                        stoneCaller.UseAbility(mousePos);
                        geomagneticGrip.UseAbility(mousePos);
                    }
                    else
                    {
                        geomagneticGrip.UseAbility(remnant.NetworkPosition);
                    }

                    _combos.Sleep(500, geomagneticGrip);
                }
            }
            if (Combo4)
            {
                var myPos = Members.MyHero.Position;
                var mousePos = Game.MousePosition;
                var distance = myPos.Distance2D(mousePos);
                var myInventory = Members.MyHero.Inventory.Items.ToList();
                var extraRange = myInventory.Any(x => x.StoredName() == "item_aether_lens") ? 200 : 0;
                /*Printer.Print(
                    $"{rollingBoulder.CanBeCasted()}/{geomagneticGrip.CanBeCasted()}/{!_combos.Sleeping(stoneCaller)}/{distance <= 1000 + extraRange}");*/
                if (rollingBoulder.CanBeCasted() && geomagneticGrip.CanBeCasted() && !_combos.Sleeping(stoneCaller) &&
                    distance <= 11000 + extraRange)
                {
                    var remnant = Helper.FindRemnant(mousePos);
                    if (remnant != null)
                    {
                        geomagneticGrip.UseAbility(remnant.NetworkPosition);
                        rollingBoulder.UseAbility(mousePos);
                        _combos.Sleep(500, stoneCaller);
                    }
                }
            }
        }
Beispiel #12
0
 public void OnLoad()
 {
     hero = ObjectManager.LocalHero;
     heroTeam = hero.Team;
     creeepTexture =
         Drawing.GetTexture(
             "materials/ensage_ui/heroes_horizontal/creep_" + (heroTeam == Team.Radiant ? "dire" : "radiant"));
     creepsData = new CreepsData(heroTeam);
     sleeper = new MultiSleeper();
 }
 /// <summary>
 ///     The init.
 /// </summary>
 public static void Init()
 {
     modifierSleeper = new MultiSleeper();
     modifierDictionary = new Dictionary<string, bool>();
     doubleDictionary = new Dictionary<uint, double>();
 }