public void AddParticle(ParticleEffect particle, string name) { var time = Game.RawGameTime - (Game.Ping / 2000); UpdateManager.BeginInvoke( () => { try { if (!particle.IsValid) { return; } var position = particle.GetControlPoint(0); var obstacle = new AreaOfEffectObstacle(this, position) { EndCastTime = time, EndObstacleTime = time + this.Ability.ActivationDelay }; this.Pathfinder.AddObstacle(obstacle); } catch (Exception e) { Logger.Error(e); } }); }
public void AddParticle(ParticleEffect particle, string name) { var time = Game.RawGameTime - (Game.Ping / 2000); UpdateManager.BeginInvoke( () => { try { if (!particle.IsValid) { return; } var startPosition = particle.GetControlPoint(0); var endPosition = particle.GetControlPoint(5); var obstacle = new AreaOfEffectObstacle(this, endPosition) { EndObstacleTime = time + (startPosition.Distance2D(endPosition) / this.ActiveAbility.Speed) }; this.Pathfinder.AddObstacle(obstacle); } catch (Exception e) { Logger.Error(e); } }); }
private void TechiesRemotesOnUpdate() { try { foreach (var bomb in this.bombs.ToList()) { if (!bomb.IsValid || !bomb.IsAlive || !bomb.IsVisible) { continue; } if ((bomb.BaseUnit.UnitState & UnitState.Invisible) != 0) { continue; } this.RemoveBomb(bomb); var time = GameManager.RawGameTime - (GameManager.Ping / 2000) - 0.05f; var obstacle = new AreaOfEffectObstacle(this, bomb.Position) { EndCastTime = time, EndObstacleTime = time + this.Ability.ActivationDelay, }; this.Pathfinder.AddObstacle(obstacle); } } catch (Exception e) { Logger.Error(e); } }
protected override void AddObstacle() { var obstacle = new AreaOfEffectObstacle(this, this.Owner.Position) { EndCastTime = this.EndCastTime + this.Ability.ActivationDelay, EndObstacleTime = this.EndCastTime + this.Ability.ActivationDelay, }; this.Pathfinder.AddObstacle(obstacle); }
public void AddModifierObstacle(Modifier modifier, Unit sender) { var time = Game.RawGameTime - modifier.ElapsedTime; var obstacle = new AreaOfEffectObstacle(this, sender.Position) { EndCastTime = time, EndObstacleTime = time + this.Ability.ActivationDelay, }; this.Pathfinder.AddObstacle(obstacle); }
public void AddParticle(ParticleEffect particle, string name) { var time = Game.RawGameTime - (Game.Ping / 2000); var position = particle.GetControlPoint(0); var obstacle = new AreaOfEffectObstacle(this, position) { EndCastTime = time, EndObstacleTime = time + this.Ability.Duration }; this.Pathfinder.AddObstacle(obstacle); }
public void AddModifierObstacle(Modifier modifier, Unit sender) { var time = Game.RawGameTime - modifier.ElapsedTime; var unit = EntityManager9.GetUnit(sender.Handle); if (unit == null) { return; } var obstacle = new AreaOfEffectObstacle(this, unit.InFront(this.firesnapCookie.JumpRange)) { EndCastTime = time, EndObstacleTime = time + this.Ability.ActivationDelay, }; this.Pathfinder.AddObstacle(obstacle); }
public void AddUnit(Unit unit) { var time = Game.RawGameTime - (Game.Ping / 2000); var obstacle = new AreaOfEffectObstacle(this, unit.Position) { EndCastTime = time, EndObstacleTime = time + this.Ability.ActivationDelay, }; if (EntityManager9.Units.Count( x => x.IsUnit && !x.IsAlly(this.Owner) && x.Distance(this.Owner) < this.Ability.Radius && x.IsAlive && !x.IsInvulnerable) <= 1) { obstacle.Counters = this.singleCounters.ToArray(); } this.Pathfinder.AddObstacle(obstacle); }
public void AddParticle(Particle particle, string name) { var time = GameManager.RawGameTime - (GameManager.Ping / 2000); var position = particle.GetControlPoint(1); var obstacle = new AreaOfEffectObstacle(this, position) { EndCastTime = time, EndObstacleTime = time + this.Ability.ActivationDelay }; this.Pathfinder.AddObstacle(obstacle); var obstacle2 = new AreaOfEffectObstacle(this, position) { EndCastTime = time, EndObstacleTime = time + (this.Ability.ActivationDelay * 2) }; this.Pathfinder.AddObstacle(obstacle2); }