Beispiel #1
0
 public override void Check()
 {
     if (StartCast <= 0 && IsInPhase && AbilityOwner.IsVisible &&
         !AbilityOwner.HasModifier("modifier_nyx_assassin_burrow"))
     {
         StartCast = Game.RawGameTime;
         EndCast   = StartCast + CastPoint + AdditionalDelay;
     }
     else if (StartCast > 0 && Obstacle == null && CanBeStopped() && !AbilityOwner.IsTurning())
     {
         StartPosition = AbilityOwner.NetworkPosition;
         EndPosition   = AbilityOwner.InFront(GetCastRange() + 150);
         Obstacle      = Pathfinder.AddObstacle(StartPosition, EndPosition, GetRadius(), Obstacle);
     }
     else if (StartCast > 0 && Game.RawGameTime > EndCast)
     {
         End();
     }
 }
Beispiel #2
0
 public override bool IgnoreRemainingTime(UsableAbility ability, float remainingTime = 0)
 {
     return(ability.Type != AbilityType.Disable && AbilityOwner.HasModifier("modifier_luna_eclipse"));
 }