Правки 2лаб

This commit is contained in:
platoff aeeee 2023-10-10 23:57:24 +04:00
parent a52eb31b45
commit 083ffec901
13 changed files with 11 additions and 35 deletions

View File

@ -6,27 +6,16 @@ using System.Threading.Tasks;
namespace Tank.MovementStrategy
{
/// <summary>
/// Класс-стратегия перемещения объекта
/// </summary>
public abstract class AbstractStrategy
{
/// <summary>
/// Перемещаемый объект
/// </summary>
private IMoveableObject? _moveableObject;
/// <summary>
/// Статус перемещения
/// </summary>
private Status _state = Status.NotInit;
/// <summary>
/// Ширина поля
/// </summary>
protected int FieldWidth { get; private set; }
/// <summary>
/// Высота поля
/// </summary>
protected int FieldHeight { get; private set; }
/// <summary>
/// Статус перемещения

View File

@ -6,27 +6,12 @@ using System.Threading.Tasks;
namespace Tank
{
/// <summary>
/// Направление перемещения
/// </summary>
public enum Direction
{
/// <summary>
/// Вверх
///
/// </summary>
Up = 1,
/// <summary>
/// Вниз
/// </summary>
Down = 2,
/// <summary>
/// Влево
/// </summary>
Left = 3,
/// <summary>
/// Вправо
/// </summary>
Right = 4
}
}

View File

@ -21,6 +21,7 @@ namespace Tank.DrawingObjects
public int GetWidth => _ArmoredcarWidth;
/// Высота объекта
public int GetHeight => _ArmoredcarHeight;
/// Ширина окна
private int _pictureWidth;
/// Высота окна

View File

@ -7,8 +7,7 @@ using Tank.DrawingObjects;
namespace Tank.MovementStrategy
{
/// Реализация интерфейса IDrawningObject для работы с объектом DrawningCar
/// (паттерн Adapter)
/// Реализация интерфейса IDrawningObject для работы с объектом DrawningCar (паттерн Adapter)
public class DrawningObjectArmoredCar : IMoveableObject
{
private readonly DrawingArmoredCar? _drawningArmoredCar = null;

View File

@ -162,9 +162,7 @@ namespace Tank.DrawingObjects
//}
///// <summary>
/// <summary>
/// Прорисовка объекта
/// </summary>
/// <param name="g"></param>
//public void DrawTransport(Graphics g)
//{

View File

@ -28,5 +28,6 @@ namespace Tank.Entites
BodyColor = bodyColor;
}
}
}

View File

@ -22,7 +22,7 @@ namespace Tank.Entites
public bool Trunk { get; private set; }
// Признак (опция) наличия гоночной полосы
public bool SportLine { get; private set; }
// Шаг перемещения танка
/// Шаг перемещения танка
// public double Step => (double)Speed * 200 / Weight;
/// Инициализация полей объекта-класса спортивного автомобиля
/// <param name="speed">Скорость</param>

View File

@ -18,5 +18,6 @@ namespace Tank.MovementStrategy
bool CheckCanMove(Direction direction);
/// Изменение направления пермещения объекта
void MoveObject(Direction direction);
}
}

View File

@ -18,6 +18,7 @@ namespace Tank.MovementStrategy
}
return objParams.RightBorder + GetStep() >= FieldWidth && objParams.DownBorder + GetStep() >= FieldHeight;
}
protected override void MoveToTarget()
{
var objParams = GetObjectParameters;

View File

@ -7,6 +7,7 @@ using System.Threading.Tasks;
namespace Tank.MovementStrategy
{
/// Стратегия перемещения объекта в центр экрана
public class MoveToCenter : AbstractStrategy
{
protected override bool IsTargetDestinaion()