// Token: 0x06000363 RID: 867 RVA: 0x0001B704 File Offset: 0x00019904 private static void AddCurrentAbilities() { foreach (Ability ability in ObjectManager.GetEntitiesFast <Ability>().Concat(ObjectManager.GetDormantEntities <Ability>())) { if (ability.IsValid) { EntityManager9.AddAbility(ability); } } }
// Token: 0x06000368 RID: 872 RVA: 0x0001B7FC File Offset: 0x000199FC private static void DelayedEntitiesOnUpdate() { try { for (int i = EntityManager9.delayedHeroes.Count - 1; i > -1; i--) { Hero hero = EntityManager9.delayedHeroes[i]; if (!hero.IsValid) { EntityManager9.delayedHeroes.RemoveAt(i); } else if (hero.HeroId != HeroId.npc_dota_hero_base && hero.Inventory != null) { EntityManager9.delayedHeroes.RemoveAt(i); EntityManager9.AddUnit(hero); } } for (int j = EntityManager9.delayedAbilities.Count - 1; j > -1; j--) { Ability ability = EntityManager9.delayedAbilities[j]; if (!ability.IsValid) { EntityManager9.delayedAbilities.RemoveAt(j); } else { Entity owner = ability.Owner; EntityHandle?entityHandle = (owner != null) ? new EntityHandle?(owner.Handle) : null; if (!(EntityManager9.GetUnitFast((entityHandle != null) ? new uint?(entityHandle.GetValueOrDefault()) : null) == null)) { EntityManager9.delayedAbilities.RemoveAt(j); EntityManager9.AddAbility(ability); } } } if (EntityManager9.delayedAbilities.Count == 0 && EntityManager9.delayedHeroes.Count == 0) { EntityManager9.delayedEntityHandler.IsEnabled = false; } } catch (Exception exception) { Logger.Error(exception, null); } }