public Button(AbilityId id, TypeEnum type, bool isActive) { Id = id; TextureId = id.ToString(); Type = type; IsActive = isActive; }
private void Spells(Hero hero, AbilityId abilityId, Vector3 position) { try { var isDangerousSpell = DangerousAbility.DangerousSpells.Contains(abilityId); if (hero == null) { Verification.EntityVerification(position, "npc_dota_hero_default", abilityId, 0, isDangerousSpell); return; } if (hero.IsAlly(EntityManager.LocalHero)) { return; } if (!hero.IsVisible || PartialMapHackMenu.WhenIsVisibleItem && isDangerousSpell) { Verification.EntityVerification(position, hero.Name, abilityId, hero.Player.Id + 1, isDangerousSpell); } } catch (Exception e) { Log.Error(e); } }
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); }
public PowerTreadsSwitcher(Manager manager, MenuManager menu, AbilityId abilityId) { this.manager = manager; this.menu = menu.AutoActionsMenu.PowerTreadsMenu; recoveryMenu = menu.RecoveryMenu; order = new Order(); AbilityId = abilityId; Refresh(); foreach (var ability in manager.MyHero.Abilities.Where(x => x.GetManaCost(0) > 0)) { this.menu.AddAbility(ability.StoredName(), true); } manager.OnAbilityAdd += OnAbilityAdd; manager.OnAbilityRemove += OnAbilityRemove; updateHandler = UpdateManager.Subscribe(OnUpdate, 100, this.menu.IsEnabled); if (this.menu.IsEnabled) { Unit.OnModifierAdded += OnModifierAdded; Unit.OnModifierRemoved += OnModifierRemoved; Player.OnExecuteOrder += OnExecuteOrder; } this.menu.OnEnabledChange += MenuOnEnabledChange; }
public uint CountWards(AbilityId id) { var items = hero.Inventory.Items.Concat(hero.Inventory.Backpack).Where(x => x.IsValid).ToList(); return((uint)(items.Where(x => x.Id == id).Sum(x => x.CurrentCharges) + items.Where(x => x.Id == DispenserId) .Sum(x => id == AbilityId.item_ward_observer ? x.CurrentCharges : x.SecondaryCharges))); }
public static void Render(this IConsole console, Ability ability, AbilityId id) { console.WriteTitle($"{id}"); console.WriteProperty("Name", ability.Name); console.WriteProperty("Effect1", $"{ability.Effect1} ({ability.Effect1Amount})"); console.WriteProperty("Effect2", $"{ability.Effect2} ({ability.Effect2Amount})"); }
public SynthActionAttribute(ActionType type, AbilityId id, string name, uint cp) { this.type = type; this.name = name; this.cp = cp; this.id = id; }
private static Stats GetItemStats(AbilityId itemId) { if (ItemStats.TryGetValue(itemId, out var stats)) { return(stats); } var data = Ability.GetAbilityDataById(itemId).AbilitySpecialData.ToList(); if (data.Any(x => BonusAllStats.Contains(x.Name))) { stats = Stats.All; } else { if (data.Any(x => BonusHealth.Contains(x.Name))) { stats |= Stats.Health; } if (data.Any(x => BonusMana.Contains(x.Name))) { stats |= Stats.Mana; } } ItemStats[itemId] = stats; return(stats); }
public override int GetHashCode() { int hash = 1; if (AbilityId != 0L) { hash ^= AbilityId.GetHashCode(); } if (Type != 0) { hash ^= Type.GetHashCode(); } if (PassiveId != 0) { hash ^= PassiveId.GetHashCode(); } if (MoveId != 0) { hash ^= MoveId.GetHashCode(); } if (Value != 0) { hash ^= Value.GetHashCode(); } if (U6 != 0) { hash ^= U6.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
public uint CountWards(AbilityId id) { var items = this.Unit.BaseInventory.MainItems.Concat(this.Unit.BaseInventory.BackpackItems).ToList(); return((uint)(items.Where(x => x.Id == id).Sum(x => x.CurrentCharges) + items.Where(x => x.Id == DispenserId) .Sum(x => id == AbilityId.item_ward_observer ? x.CurrentCharges : x.SecondaryCharges))); }
public SpecialData(Entity talentOwner, AbilityId talentId) { try { this.talent = EntityManager9.BaseAbilities.FirstOrDefault(x => x.Id == talentId && x.Owner?.Handle == talentOwner.Handle); if (this.talent != null) { this.talentValue = this.talent.AbilitySpecialData.First(x => x.Name == "value").Value; this.getDataFunc = this.GetTalentValue; } else { this.getDataFunc = _ => 1; } } catch { this.getDataFunc = _ => 0; var ex = new BrokenAbilityException(talentId.ToString()); if (this.talent?.IsValid == true) { ex.Data["Ability"] = new { Ability = this.talent.Name }; } Logger.Error(ex); } }
private Unit9 GetUnitToPurchase(AbilityId itemId) { if (GameManager.GameMode == GameMode.Turbo) { return(this.owner); } var flags = itemId.GetShopFlags(); if ((this.GetUnitShopFlags(this.owner) & flags) != 0) { return(this.owner); } var courier = EntityManager9.Units.FirstOrDefault(x => x.IsCourier && x.IsAlly(this.owner) && x.IsAlive); if (courier == null) { return(null); } if ((this.GetUnitShopFlags(courier) & flags) != 0) { return(courier); } return(null); }
public static Ability FindSpell322(this Unit unit, AbilityId abilityId, bool cache = false) { if (!cache) { return(unit.Spellbook.Spells.FirstOrDefault(x => x.GetAbilityId() == abilityId)); } Ability ability; var n = unit.Handle + abilityId.ToString(); if (!AbilityDictionary.TryGetValue(n, out ability) || ability == null || !ability.IsValid || Utils.SleepCheck("Common.FindSpell322." + abilityId)) { ability = unit.Spellbook.Spells.FirstOrDefault(x => x.GetAbilityId() == abilityId); if (AbilityDictionary.ContainsKey(n)) { AbilityDictionary[n] = ability; } else { AbilityDictionary.TryAdd(n, ability); } Utils.Sleep(1000, "Common.FindSpell322." + abilityId); } if (ability == null || !ability.IsValid) { return(null); } return(ability); }
public AbilityHolder(Ability ability) { Ability = ability; Handle = ability.Handle; Name = ability.Name; MaximumLevel = Ability.MaximumLevel; Owner = (Hero)ability.Owner; Id = Ability.Id; AbilityState = ability.AbilityState; Texture = Ability is Item ? Textures.GetItemTexture(ability.Name) : Textures.GetSpellTexture(ability.Name); Cooldown = Ability.Cooldown; IsUltimate = ability.AbilityType == AbilityType.Ultimate; IsHidden = ability.IsHidden; AbilitySlot = ability.AbilitySlot; Item = ability as Item; if (Item != null) { Cost = Item.Cost; } UpdateManager.BeginInvoke(async() => { while (ability.IsValid) { AbilityState = ability.AbilityState; Cooldown = Ability.Cooldown; IsHidden = ability.IsHidden; AbilitySlot = ability.AbilitySlot; await Task.Delay(300); } //Log.Debug($"[{Owner.Name}] end for -> {Id}"); }); }
public void ActivateAbility(AbilityId selectableAbility, Vector3 instantiatePosition) { if (abilities[selectableAbility].active.instantiable != null) { Instantiate(abilities[selectableAbility].active.instantiable, instantiatePosition, Quaternion.identity); } }
// Token: 0x06000ECB RID: 3787 RVA: 0x0002789C File Offset: 0x00025A9C public Alacrity(Ability baseAbility) { AbilityId[] array = new AbilityId[3]; RuntimeHelpers.InitializeArray(array, fieldof(< PrivateImplementationDetails > .54CB4A334BD6A28780BD9A51B9F27C7F5A14F512).FieldHandle); this.RequiredOrbs = array; base..ctor(baseAbility); this.invokeHelper = new InvokeHelper <Alacrity>(this); }
// Token: 0x06000ED7 RID: 3799 RVA: 0x0000D17A File Offset: 0x0000B37A public ColdSnap(Ability baseAbility) { AbilityId[] array = new AbilityId[3]; RuntimeHelpers.InitializeArray(array, fieldof(< PrivateImplementationDetails >.D2E837ABB7592BEF49070A3169FE7133D3E84FA3).FieldHandle); this.RequiredOrbs = array; base..ctor(baseAbility); this.invokeHelper = new InvokeHelper <ColdSnap>(this); }
// Token: 0x06000367 RID: 871 RVA: 0x000042FD File Offset: 0x000024FD public uint GetWardsCount(AbilityId id) { if (id != AbilityId.item_ward_observer) { return(this.SentryCount); } return(this.ObserversCount); }
public static Item GetItemById(this Unit unit, AbilityId abilityId) { if (!unit.HasInventory) { return(null); } return(unit.Inventory.Items.FirstOrDefault(x => x != null && x.IsValid && x.Id == abilityId)); }
// Token: 0x06000EB6 RID: 3766 RVA: 0x0000CF46 File Offset: 0x0000B146 public GhostWalk(Ability baseAbility) { AbilityId[] array = new AbilityId[3]; RuntimeHelpers.InitializeArray(array, fieldof(< PrivateImplementationDetails >.E3E33884B4D5DBE5E296A8F85BD91D9EF88B779D).FieldHandle); this.RequiredOrbs = array; base..ctor(baseAbility); base.IsInvisibility = true; this.invokeHelper = new InvokeHelper <GhostWalk>(this); }
// Token: 0x06000368 RID: 872 RVA: 0x00004311 File Offset: 0x00002511 public void SetWardsCount(AbilityId id, uint count) { if (id == AbilityId.item_ward_observer) { this.ObserversCount = count; return; } this.SentryCount = count; }
public StockInfo GetStockInfo(AbilityId id, Team team = Team.Undefined) { if (team == Team.Undefined) { team = this.Owner.Team; } return(Game.StockInfo.FirstOrDefault(e => e.AbilityId == id && e.Team == team)); }
public static void CastItem(Hero hero, AbilityId abilityId) { var Item = hero.Inventory.Items.FirstOrDefault(x => x.Id == abilityId); if (Item != null /* && Item.Level > 0*/ && Item.Cooldown == 0 /*&& ManaCheck(Item.ManaCost, hero.Mana)*/) { Item.Cast(); } }
/// <summary> /// /// </summary> /// <param name="abilityId"></param> /// <returns></returns> public static System.Type Get(AbilityId abilityId) { System.Type abilityType; if (_table.TryGetValue(abilityId, out abilityType)) { return(abilityType); } return(null); }
public AutoMagicStick(Manager manager, MenuManager menu, AbilityId abilityId) { this.manager = manager; this.menu = menu.AutoActionsMenu.AutoHealsMenu.AutoMagicStickMenu; AbilityId = abilityId; Refresh(); UpdateManager.Subscribe(OnUpdate, 100); }
public AutoIronTalon(Manager manager, MenuManager menu, AbilityId abilityId) { this.manager = manager; this.menu = menu.AutoActionsMenu.IronTalonMenu; AbilityId = abilityId; Refresh(); UpdateManager.Subscribe(OnUpdate, 500); }
public static int GetPrice(this AbilityId itemId) { if (ItemPrice.TryGetValue(itemId, out var price)) { return(price); } ItemPrice[itemId] = Ability.GetKeyValueById(itemId).GetKeyValue("ItemCost")?.GetInt32() ?? 0; return(price); }
public TranquilDrop(Manager manager, MenuManager menu, AbilityId abilityId) { this.manager = manager; this.menu = menu.AbilityHelperMenu.TranquilMenu; AbilityId = abilityId; this.menu.OnTranquilDrop += OnTranquilDrop; updateHandler = UpdateManager.Subscribe(OnUpdate, 100, false); }
public BlinkAdjustment(Manager manager, MenuManager menu, AbilityId abilityId) { this.manager = manager; this.menu = menu.AbilityHelperMenu.BlinkMenu; AbilityId = abilityId; Refresh(); Player.OnExecuteOrder += OnExecuteOrder; }
public AutoLivingArmor(Manager manager, MenuManager menu, AbilityId abilityId) { this.manager = manager; this.menu = menu.AutoActionsMenu.AutoHealsMenu.LivingArmorMenu; AbilityId = abilityId; Refresh(); UpdateManager.Subscribe(OnUpdate, 300); }
private Ability(AbilityId id, string name, string description) { Id = id; Name = name; Description = description; }