Пример #1
0
 // Token: 0x06000027 RID: 39 RVA: 0x00007E3C File Offset: 0x0000603C
 public void ExecuteMoveCombo(MoveComboModeMenu comboModeMenu)
 {
     foreach (ControllableUnit controllableUnit in this.ControllableUnits)
     {
         if (!controllableUnit.ComboSleeper.IsSleeping && controllableUnit.MoveCombo(this.targetManager, comboModeMenu))
         {
             controllableUnit.LastMovePosition = Vector3.Zero;
         }
     }
 }
Пример #2
0
 protected void AddMoveComboAbility(ActiveAbility ability, MoveComboModeMenu moveMenu)
 {
     if (this.MoveComboAbilities.TryGetValue(ability.Id, out var func2))
     {
         var usableAbility = func2(ability);
         usableAbility.Sleeper        = this.abilitySleeper[usableAbility.Ability.Handle];
         usableAbility.OrbwalkSleeper = this.OrbwalkSleeper;
         moveMenu.AddComboAbility(usableAbility);
     }
 }
        // Token: 0x06000718 RID: 1816 RVA: 0x0002187C File Offset: 0x0001FA7C
        protected void AddMoveComboAbility(ActiveAbility ability, MoveComboModeMenu moveMenu)
        {
            Func <ActiveAbility, UsableAbility> func;

            if (this.MoveComboAbilities.TryGetValue(ability.Id, out func))
            {
                UsableAbility usableAbility = func(ability);
                usableAbility.Sleeper        = this.abilitySleeper[usableAbility.Ability.Handle];
                usableAbility.OrbwalkSleeper = this.OrbwalkSleeper;
                moveMenu.AddComboAbility(usableAbility);
            }
        }
Пример #4
0
        public virtual bool MoveCombo(TargetManager targetManager, MoveComboModeMenu comboModeMenu)
        {
            if (!this.Owner.CanUseAbilities || this.Owner.IsInvisible)
            {
                return(false);
            }

            if (this.Owner.IsMyHero)
            {
                var target = targetManager.EnemyHeroes.Where(x => !x.IsStunned && !x.IsHexed && !x.IsSilenced && !x.IsRooted)
                             .OrderBy(x => x.Distance(this.Owner))
                             .FirstOrDefault(x => x.Distance(this.Owner) < 1000);

                if (target != null)
                {
                    targetManager.ForceSetTarget(target);
                }
            }

            var abilityHelper = new AbilityHelper(targetManager, comboModeMenu, this);

            if (this.MoveComboUseBlinks(abilityHelper))
            {
                return(true);
            }

            if (targetManager.HasValidTarget)
            {
                if (this.MoveComboUseDisables(abilityHelper))
                {
                    return(true);
                }
            }

            if (this.MoveComboUseBuffs(abilityHelper))
            {
                return(true);
            }

            if (targetManager.HasValidTarget && targetManager.Target.Distance(this.Owner) < 600)
            {
                if (this.MoveComboUseShields(abilityHelper))
                {
                    return(true);
                }
            }

            return(false);
        }
Пример #5
0
        public void ExecuteMoveCombo(MoveComboModeMenu comboModeMenu)
        {
            foreach (var controllable in this.ControllableUnits)
            {
                if (controllable.ComboSleeper.IsSleeping)
                {
                    continue;
                }

                if (controllable.MoveCombo(this.targetManager, comboModeMenu))
                {
                    controllable.LastMovePosition = Vector3.Zero;
                    continue;
                }
            }
        }
        // Token: 0x06000713 RID: 1811 RVA: 0x000215D4 File Offset: 0x0001F7D4
        public virtual bool MoveCombo(TargetManager targetManager, MoveComboModeMenu comboModeMenu)
        {
            if (!this.Owner.CanUseAbilities || this.Owner.IsInvisible)
            {
                return(false);
            }
            if (this.Owner.IsMyHero)
            {
                Unit9 unit = (from x in targetManager.EnemyHeroes
                              where !x.IsStunned && !x.IsHexed && !x.IsSilenced && !x.IsRooted
                              orderby x.Distance(this.Owner)
                              select x).FirstOrDefault((Unit9 x) => x.Distance(this.Owner) < 1000f);
                if (unit != null)
                {
                    targetManager.ForceSetTarget(unit);
                }
            }
            AbilityHelper abilityHelper = new AbilityHelper(targetManager, comboModeMenu, this);

            return(this.MoveComboUseBlinks(abilityHelper) || (targetManager.HasValidTarget && this.MoveComboUseDisables(abilityHelper)) || this.MoveComboUseBuffs(abilityHelper) || (targetManager.HasValidTarget && targetManager.Target.Distance(this.Owner) < 600f && this.MoveComboUseShields(abilityHelper)));
        }
Пример #7
0
        public virtual void AddAbility(ActiveAbility ability, IEnumerable <ComboModeMenu> comboMenus, MoveComboModeMenu moveMenu)
        {
            if (this.ComboAbilities != null && this.ComboAbilities.TryGetValue(ability.Id, out var func1))
            {
                var usableAbility = func1(ability);
                usableAbility.Sleeper        = this.abilitySleeper[usableAbility.Ability.Handle];
                usableAbility.OrbwalkSleeper = this.OrbwalkSleeper;

                foreach (var comboMenu in comboMenus)
                {
                    comboMenu.AddComboAbility(usableAbility);
                }
            }

            this.AddMoveComboAbility(ability, moveMenu);
        }
Пример #8
0
 // Token: 0x06000844 RID: 2116 RVA: 0x00025DDC File Offset: 0x00023FDC
 public override void AddAbility(ActiveAbility ability, IEnumerable <ComboModeMenu> comboMenus, MoveComboModeMenu moveMenu)
 {
     if (this.ignoredAbilities.Contains(ability.Id))
     {
         return;
     }
     using (List <IOldAbilityGroup> .Enumerator enumerator = this.groups.GetEnumerator())
     {
         while (enumerator.MoveNext())
         {
             if (enumerator.Current.AddAbility(ability))
             {
                 foreach (ComboModeMenu comboModeMenu in comboMenus)
                 {
                     comboModeMenu.AddComboAbility(ability);
                 }
             }
         }
     }
     base.AddMoveComboAbility(ability, moveMenu);
 }
Пример #9
0
        public override void AddAbility(ActiveAbility ability, IEnumerable <ComboModeMenu> comboMenus, MoveComboModeMenu moveMenu)
        {
            if (this.ignoredAbilities.Contains(ability.Id))
            {
                return;
            }

            foreach (var group in this.groups)
            {
                if (group.AddAbility(ability))
                {
                    foreach (var comboModeMenu in comboMenus)
                    {
                        comboModeMenu.AddComboAbility(ability);
                    }
                }
            }

            this.AddMoveComboAbility(ability, moveMenu);
        }