private bool IsItemIgnored(IEnumerable <Ability9> currentItems, AbilityId itemId) { if (!itemId.CanBePurchased(this.owner.Team)) { return(true); } switch (itemId) { case AbilityId.item_energy_booster: { if (currentItems.Any(x => x.Id == AbilityId.item_arcane_boots)) { return(true); } break; } case AbilityId.item_tome_of_knowledge: { if (this.owner.Hero.Level >= GameData.MaxHeroLevel) { return(true); } break; } } return(false); }
private bool IsItemIgnored(Ability9[] currentItems, AbilityId itemId) { if (!itemId.CanBePurchased(this.owner.Team)) { return(true); } switch (itemId) { case AbilityId.item_clarity: case AbilityId.item_tango: case AbilityId.item_flask: case AbilityId.item_enchanted_mango: { if (GameManager.GameTime > 10 * 60) { return(true); } break; } case AbilityId.item_tpscroll: if (GetItemCharges(currentItems, itemId) >= 2) { return(true); } break; case AbilityId.item_dust: if (GetItemCharges(currentItems, itemId) >= 2 || !EntityManager9.Abilities.Any(x => x.IsInvisibility && !x.Owner.IsAlly(this.owner))) { return(true); } break; // case AbilityId.item_ward_observer: case AbilityId.item_ward_sentry: if (GetWardCharges(currentItems, itemId) >= 2) { return(true); } break; case AbilityId.item_energy_booster: if (currentItems.Any(x => x.Id == AbilityId.item_arcane_boots)) { return(true); } break; case AbilityId.item_smoke_of_deceit: if (GetItemCharges(currentItems, itemId) >= 1) { return(true); } break; case AbilityId.item_tome_of_knowledge: if (this.owner.Hero.Level >= GameData.MaxHeroLevel) { return(true); } break; } return(false); }