diff --git a/84 Super Star Trek/csharp/Objects/Enterprise.cs b/84 Super Star Trek/csharp/Objects/Enterprise.cs index e48c5f76..4adf81df 100644 --- a/84 Super Star Trek/csharp/Objects/Enterprise.cs +++ b/84 Super Star Trek/csharp/Objects/Enterprise.cs @@ -179,6 +179,13 @@ namespace SuperStarTrek.Objects _quadrant.SetEnterpriseSector(sector); SectorCoordinates = sector; + TotalEnergy -= distance + 10; + if (Energy < 0) + { + _output.WriteLine("Shield Control supplies energy to complete the maneuver."); + ShieldControl.ShieldEnergy = Math.Max(0, TotalEnergy); + } + return GetTimeElapsed(quadrant, warpFactor); } diff --git a/84 Super Star Trek/csharp/Systems/ShieldControl.cs b/84 Super Star Trek/csharp/Systems/ShieldControl.cs index 5af343f1..a7518359 100644 --- a/84 Super Star Trek/csharp/Systems/ShieldControl.cs +++ b/84 Super Star Trek/csharp/Systems/ShieldControl.cs @@ -18,7 +18,7 @@ namespace SuperStarTrek.Systems _input = input; } - public float ShieldEnergy { get; private set; } + public float ShieldEnergy { get; set; } protected override bool CanExecuteCommand() => IsOperational("{name} inoperable");