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);
        }
Example #2
0
        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;
        }
Example #3
0
        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);
        }