private void OnAbilityAdded(Ability9 ability) { try { if (ability.IsTalent || ability.IsFake) { return; } var abilityOwner = ability.Owner; if (!abilityOwner.IsHero || abilityOwner.IsMyHero) { return; } if ((abilityOwner.UnitState & UnitState.CommandRestricted) != 0) { return; } var hudUnit = this.units.Find(x => x.Unit.Handle == abilityOwner.Handle); if (hudUnit == null) { hudUnit = new HudUnit(abilityOwner); this.units.Add(hudUnit); } hudUnit.AddAbility(ability, this.itemsToggler); } catch (Exception e) { Logger.Error(e); } }
// Token: 0x060000A2 RID: 162 RVA: 0x000073D0 File Offset: 0x000055D0 private void OnAbilityAdded(Ability9 ability) { try { if (!ability.IsTalent) { Unit9 abilityOwner = ability.Owner; if (abilityOwner.CanUseAbilities && abilityOwner.IsHero && !abilityOwner.IsMyHero) { if ((abilityOwner.UnitState & UnitState.CommandRestricted) == (UnitState)0UL) { HudUnit hudUnit = this.units.Find((HudUnit x) => x.Unit.Handle == abilityOwner.Handle); if (hudUnit == null) { hudUnit = new HudUnit(abilityOwner); this.units.Add(hudUnit); } hudUnit.AddAbility(ability); } } } } catch (Exception exception) { Logger.Error(exception, null); } }
private float GetTextureScale(HudUnit unit) { var position = unit.Unit.Position; var closest = this.units.Where(x => x.Unit != unit.Unit && x.IsValid && x.Unit.DistanceSquared(position) < 50000) .OrderBy(x => x.Unit.DistanceSquared(position)) .FirstOrDefault(); if (closest != null) { var distance = position.DistanceSquared(closest.Unit.Position); return(Math.Min(Math.Max(0.5f, distance / 50000f), 1f)); } return(1); }
// Token: 0x060000A5 RID: 165 RVA: 0x000077C8 File Offset: 0x000059C8 private void OnUnitRemoved(Unit9 entity) { try { HudUnit hudUnit = this.units.Find((HudUnit x) => x.Unit.Handle == entity.Handle); if (hudUnit != null) { this.units.Remove(hudUnit); } } catch (Exception exception) { Logger.Error(exception, null); } }
// Token: 0x060000A3 RID: 163 RVA: 0x00007490 File Offset: 0x00005690 private void OnAbilityRemoved(Ability9 ability) { try { Unit9 abilityOwner = ability.Owner; if (abilityOwner.CanUseAbilities && abilityOwner.IsHero && !abilityOwner.IsMyHero) { HudUnit hudUnit = this.units.Find((HudUnit x) => x.Unit.Handle == abilityOwner.Handle); if (hudUnit != null) { hudUnit.RemoveAbility(ability); } } } catch (Exception exception) { Logger.Error(exception, null); } }