public void OnUpdate() { if (!Utils.SleepCheck("AbilityLeveling.Sleep")) { return; } Utils.Sleep(1000, "AbilityLeveling.Sleep"); if (hero.AbilityPoints <= 0 || !menuManager.IsEnabled || Game.IsPaused) { return; } var learnableAbilities = abilities.OrderByDescending(x => menuManager.GetAbilityPriority(x.StoredName())) .Where( x => menuManager.AbilityActive(x.StoredName()) && IsLearnable(x) // x.IsLearnable ).ToList(); var upgrade = learnableAbilities.FirstOrDefault(ForceLearn) ?? learnableAbilities.FirstOrDefault(x => !IsLocked(x, learnableAbilities)); Player.UpgradeAbility(hero, upgrade ?? learnableAbilities.FirstOrDefault()); }
public void OnUpdate() { if (sleeper.Sleeping) { return; } sleeper.Sleep(1000); if (hero.AbilityPoints <= 0 || Game.IsPaused) { return; } if (menuManager.IsEnabledAuto) { var ability = abilitylBuilder.GetAbility(hero.Level); if (ability == null || ability.IsHidden) { return; } if (!IsLearnable(ability)) { ability = abilities.FirstOrDefault(IsLearnable); } Player.UpgradeAbility(hero, ability); } else if (menuManager.IsEnabledManual && !menuManager.IsLevelIgnored(hero.Level)) { var learnableAbilities = abilities.OrderByDescending(x => menuManager.GetAbilityPriority(x.StoredName())) .Where( x => menuManager.AbilityActive(x.StoredName()) && IsLearnable(x) // x.IsLearnable ).ToList(); var upgrade = learnableAbilities.FirstOrDefault(ForceLearn) ?? learnableAbilities.FirstOrDefault(x => !IsLocked(x, learnableAbilities)); Player.UpgradeAbility(hero, upgrade ?? learnableAbilities.FirstOrDefault()); } }