protected override void AddObstacle() { var obstacle = new LinearAreaOfEffectObstacle(this, this.Owner.Position) { EndCastTime = this.EndCastTime, EndObstacleTime = this.EndCastTime + this.Ability.ActivationDelay, }; this.Pathfinder.AddObstacle(obstacle); }
public void AddModifierObstacle(Modifier modifier, Unit sender) { if (this.startPosition.IsZero) { return; } var obstacle = new LinearAreaOfEffectObstacle(this, this.startPosition) { EndCastTime = this.startTime, EndObstacleTime = this.startTime + this.Ability.ActivationDelay, }; this.Pathfinder.AddObstacle(obstacle); this.startPosition = Vector3.Zero; }
protected override void AddObstacle() { var obstacle = new LinearAreaOfEffectObstacle(this, this.Owner.Position) { EndCastTime = this.EndCastTime, EndObstacleTime = this.EndCastTime + this.Ability.ActivationDelay, }; this.Pathfinder.AddObstacle(obstacle); var targetableObstacle = new TargetableObstacle(this) { Id = obstacle.Id, EndCastTime = this.EndCastTime, EndObstacleTime = this.EndCastTime, Counters = this.targetCounters.ToArray() }; this.Pathfinder.AddObstacle(targetableObstacle); }