diff --git a/AirBomber/AirBomber/DrawningAirBomber.cs b/AirBomber/AirBomber/DrawningAirBomber.cs index acb1c5c..b8eabe9 100644 --- a/AirBomber/AirBomber/DrawningAirBomber.cs +++ b/AirBomber/AirBomber/DrawningAirBomber.cs @@ -24,7 +24,7 @@ namespace AirBomber public DrawningAirBomber(int speed, double weight, Color bodyColor, Color additionalColor, bool bombs, Color bombsColor, bool fuelTanks, int width, int height) : - base(speed, weight, bodyColor, width, height, 110, 60) + base(speed, weight, bodyColor, width, height, 160, 118) { if (EntityAirPlane != null) { diff --git a/AirBomber/AirBomber/DrawningAirPlane.cs b/AirBomber/AirBomber/DrawningAirPlane.cs index 18f23d8..64dce49 100644 --- a/AirBomber/AirBomber/DrawningAirPlane.cs +++ b/AirBomber/AirBomber/DrawningAirPlane.cs @@ -32,11 +32,11 @@ namespace AirBomber /// /// Ширина прорисовки самолета /// - protected readonly int _airPlaneWidth = 100; + protected readonly int _airPlaneWidth = 150; /// /// Высота прорисовки самолета /// - protected readonly int _airPlaneHeight = 55; + protected readonly int _airPlaneHeight = 118; /// /// Конструктор /// diff --git a/AirBomber/AirBomber/FormAirBomber.cs b/AirBomber/AirBomber/FormAirBomber.cs index 785941a..45f158b 100644 --- a/AirBomber/AirBomber/FormAirBomber.cs +++ b/AirBomber/AirBomber/FormAirBomber.cs @@ -81,7 +81,7 @@ switch { 0 => new MoveToCenter(), - //1 => new MoveToBorder(), + 1 => new MoveToBorder(), _ => null, }; if (_abstractStrategy == null) diff --git a/AirBomber/AirBomber/MoveToBorder.cs b/AirBomber/AirBomber/MoveToBorder.cs new file mode 100644 index 0000000..435ab8d --- /dev/null +++ b/AirBomber/AirBomber/MoveToBorder.cs @@ -0,0 +1,27 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace AirBomber +{ + public class MoveToBorder : AbstractStrategy + { + protected override bool IsTargetDestinaion() + { + var objParams = GetObjectParameters; + if (objParams == null) return false; + + return objParams.RightBorder >= FieldWidth - GetStep() && objParams.DownBorder >= FieldHeight - GetStep(); + } + + protected override void MoveToTarget() + { + var objParams = GetObjectParameters; + if (objParams == null) return; + if (objParams.RightBorder < FieldWidth - GetStep()) MoveRight(); + + } + } +}