// Token: 0x06000316 RID: 790 RVA: 0x0001B808 File Offset: 0x00019A08 public override void AddDrawableAbility(List <IDrawableAbility> drawableAbilities, ParticleEffect particle, Team allyTeam, INotificator notificator) { Unit9 unit = EntityManager9.GetUnit(particle.Owner.Handle); if (unit == null || unit.IsVisible) { return; } Vector3 v = base.RawParticlePosition ? particle.Position : particle.GetControlPoint(base.ControlPoint); if (v.Distance2D(unit.BaseUnit.Position, false) < 50f) { return; } string name = unit.Name; DrawableAbility drawableAbility = new DrawableAbility { AbilityTexture = base.AbilityId + "_rounded", HeroTexture = name + "_rounded", MinimapHeroTexture = name + "_icon", ShowUntil = Game.RawGameTime + base.TimeToShow, Position = v.SetZ(new float?((float)350)) }; if (base.Replace) { IDrawableAbility drawableAbility2 = drawableAbilities.LastOrDefault((IDrawableAbility x) => x.AbilityTexture == drawableAbility.AbilityTexture && x.HeroTexture == drawableAbility.HeroTexture); if (drawableAbility2 != null) { drawableAbilities.Remove(drawableAbility2); } } drawableAbilities.Add(drawableAbility); }
// Token: 0x060002D0 RID: 720 RVA: 0x0001A898 File Offset: 0x00018A98 public override void AddDrawableAbility(List <IDrawableAbility> drawableAbilities, ParticleEffect particle, Team allyTeam, INotificator notificator) { Vector3 position = particle.GetControlPoint(base.ControlPoint); if (EntityManager9.Heroes.Any((Hero9 x) => x.IsUnit && x.Team == allyTeam && x.IsAlive && x.Distance(position) < 800f)) { return; } SimpleDrawableAbility drawableAbility = new SimpleDrawableAbility { AbilityTexture = base.AbilityId + "_rounded", ShowUntil = Game.RawGameTime + base.TimeToShow, Position = (base.RawParticlePosition ? particle.Position : particle.GetControlPoint(base.ControlPoint)).SetZ(new float?((float)350)) }; if (base.Replace) { IDrawableAbility drawableAbility2 = drawableAbilities.LastOrDefault((IDrawableAbility x) => x.AbilityTexture == drawableAbility.AbilityTexture && x.HeroTexture == drawableAbility.HeroTexture); if (drawableAbility2 != null) { drawableAbilities.Remove(drawableAbility2); } } drawableAbilities.Add(drawableAbility); if (base.ShowNotification && notificator != null) { notificator.PushNotification(new AbilityNotification(null, base.AbilityId.ToString())); } }
// Token: 0x060002ED RID: 749 RVA: 0x0001AF90 File Offset: 0x00019190 public override void AddDrawableAbility(List <IDrawableAbility> drawableAbilities, ParticleEffect particle, Team allyTeam, INotificator notificator) { if (particle.GetControlPoint(1u) == new Vector3(-1f)) { return; } Unit9 unit; if (!base.SearchOwner && particle.Owner is Unit) { unit = EntityManager9.GetUnit(particle.Owner.Handle); } else { Ability9 ability = EntityManager9.Abilities.FirstOrDefault((Ability9 x) => x.Id == this.AbilityId && x.Owner.Team != allyTeam); unit = ((ability != null) ? ability.Owner : null); } Unit9 unit2 = unit; if (unit2 == null || unit2.IsVisible) { return; } string text; if (unit2.IsHero) { text = unit2.Name; } else { Unit9 owner = unit2.Owner; text = ((owner != null) ? owner.Name : null); if (text == null) { return; } } DrawableAbility drawableAbility = new DrawableAbility { AbilityTexture = base.AbilityId + "_rounded", HeroTexture = text + "_rounded", MinimapHeroTexture = text + "_icon", ShowUntil = Game.RawGameTime + base.TimeToShow, Position = (base.RawParticlePosition ? particle.Position : particle.GetControlPoint(base.ControlPoint)).SetZ(new float?((float)350)) }; if (base.Replace) { IDrawableAbility drawableAbility2 = drawableAbilities.LastOrDefault((IDrawableAbility x) => x.AbilityTexture == drawableAbility.AbilityTexture && x.HeroTexture == drawableAbility.HeroTexture); if (drawableAbility2 != null) { drawableAbilities.Remove(drawableAbility2); } } drawableAbilities.Add(drawableAbility); }
// Token: 0x060002F2 RID: 754 RVA: 0x0001B110 File Offset: 0x00019310 public override void AddDrawableAbility(List <IDrawableAbility> drawableAbilities, ParticleEffect particle, Team allyTeam, INotificator notificator) { Vector3 position = (base.RawParticlePosition ? particle.Position : particle.GetControlPoint(base.ControlPoint)).SetZ(new float?((float)350)); if (EntityManager9.AllyUnits.Any((Unit9 x) => x.IsAlive && x.Distance(position) < 400f)) { return; } Ability9 ability = EntityManager9.Abilities.FirstOrDefault((Ability9 x) => (x.Id == this.AbilityId || x.Id == AbilityId.item_mjollnir) && x.Owner.Team != allyTeam && x.Owner.CanUseAbilities); Unit9 unit = (ability != null) ? ability.Owner : null; if (unit == null || unit.IsVisible) { return; } string text; if (unit.IsHero) { text = unit.Name; } else { Unit9 owner = unit.Owner; text = ((owner != null) ? owner.Name : null); if (text == null) { return; } } DrawableAbility drawableAbility = new DrawableAbility { AbilityTexture = base.AbilityId + "_rounded", HeroTexture = text + "_rounded", MinimapHeroTexture = text + "_icon", ShowUntil = Game.RawGameTime + base.TimeToShow, Position = position }; if (base.Replace) { IDrawableAbility drawableAbility2 = drawableAbilities.LastOrDefault((IDrawableAbility x) => x.AbilityTexture == drawableAbility.AbilityTexture && x.HeroTexture == drawableAbility.HeroTexture); if (drawableAbility2 != null) { drawableAbilities.Remove(drawableAbility2); } } drawableAbilities.Add(drawableAbility); }
// Token: 0x060002F8 RID: 760 RVA: 0x0001B2C0 File Offset: 0x000194C0 public override void AddDrawableAbility(List <IDrawableAbility> drawableAbilities, ParticleEffect particle, Team allyTeam, INotificator notificator) { Vector3 position = base.RawParticlePosition ? particle.Position : particle.GetControlPoint(base.ControlPoint); if (position.IsZero) { Logger.Error("ParticleZero", particle.Name); return; } Ability9 ability = (from x in EntityManager9.Abilities where x.Id == this.AbilityId && x.Owner.CanUseAbilities orderby x.Owner.Position.Distance2D(position, false) select x).FirstOrDefault <Ability9>(); Unit9 unit = (ability != null) ? ability.Owner : null; if (unit == null || unit.IsVisible || unit.Team == allyTeam) { return; } string name = unit.Name; DrawableAbility drawableAbility = new DrawableAbility { AbilityTexture = base.AbilityId + "_rounded", HeroTexture = name + "_rounded", MinimapHeroTexture = name + "_icon", ShowUntil = Game.RawGameTime + base.TimeToShow, Position = position.SetZ(new float?((float)350)) }; if (base.Replace) { IDrawableAbility drawableAbility2 = drawableAbilities.LastOrDefault((IDrawableAbility x) => x.AbilityTexture == drawableAbility.AbilityTexture && x.HeroTexture == drawableAbility.HeroTexture); if (drawableAbility2 != null) { drawableAbilities.Remove(drawableAbility2); } } drawableAbilities.Add(drawableAbility); if (base.ShowNotification && notificator != null) { notificator.PushNotification(new AbilityNotification(name, base.AbilityId.ToString())); } }
// Token: 0x06000238 RID: 568 RVA: 0x00011E4C File Offset: 0x0001004C private void OnUpdateRemove() { try { for (int i = this.drawableAbilities.Count - 1; i > -1; i--) { IDrawableAbility drawableAbility = this.drawableAbilities[i]; if (!drawableAbility.IsValid) { if (drawableAbility.IsShowingRange) { drawableAbility.RemoveRange(); } this.drawableAbilities.RemoveAt(i); } } } catch (Exception exception) { Logger.Error(exception, null); } }
// Token: 0x06000288 RID: 648 RVA: 0x00015814 File Offset: 0x00013A14 public virtual void AddDrawableAbility(List <IDrawableAbility> drawableAbilities, ParticleEffect particle, Team allyTeam, INotificator notificator) { Unit9 unit; if (!this.SearchOwner && particle.Owner is Unit) { unit = EntityManager9.GetUnit(particle.Owner.Handle); } else { Ability9 ability = EntityManager9.Abilities.FirstOrDefault((Ability9 x) => x.Id == this.AbilityId && x.Owner.Team != allyTeam && x.Owner.CanUseAbilities); unit = ((ability != null) ? ability.Owner : null); } Unit9 unit2 = unit; if (unit2 == null || unit2.IsVisible) { return; } string text; if (unit2.IsHero) { text = unit2.Name; } else { Unit9 owner = unit2.Owner; text = ((owner != null) ? owner.Name : null); if (text == null) { return; } } Vector3 v = this.RawParticlePosition ? particle.Position : particle.GetControlPoint(this.ControlPoint); if (v.IsZero) { Logger.Error("ParticleZero", particle.Name); return; } DrawableAbility drawableAbility = new DrawableAbility { AbilityTexture = this.AbilityId + "_rounded", HeroTexture = text + "_rounded", MinimapHeroTexture = text + "_icon", ShowUntil = Game.RawGameTime + this.TimeToShow, Position = v.SetZ(new float?((float)350)) }; if (this.Replace) { IDrawableAbility drawableAbility2 = drawableAbilities.LastOrDefault((IDrawableAbility x) => x.AbilityTexture == drawableAbility.AbilityTexture && x.HeroTexture == drawableAbility.HeroTexture); if (drawableAbility2 != null) { drawableAbilities.Remove(drawableAbility2); } } drawableAbilities.Add(drawableAbility); if (this.ShowNotification && notificator != null) { notificator.PushNotification(new AbilityNotification(text, this.AbilityId.ToString())); } }