Лаба 2

This commit is contained in:
Marselchi 2023-09-25 14:04:52 +04:00
parent e1257a26e4
commit 2a48e6436c
2 changed files with 24 additions and 0 deletions

View File

@ -151,6 +151,29 @@ namespace Liner.Drawing
}; };
} }
/// <summary> /// <summary>
/// Проверка, что объект может переместится по указанному направлению
/// </summary>
/// <param name="direction">Направление</param>
/// <returns>true - можно переместится по указанному направлению</returns>
public bool CanMove(DirectionType direction)
{
if (EntityLiner == null)
{
return false;
}
return direction switch
{
//влево
DirectionType.Left => _startPosX - EntityLiner.Step > 0,
//вверх
DirectionType.Up => _startPosY - EntityLiner.Step > 0,
//вправо
DirectionType.Right => _startPosX + EntityLiner.Step + _linerWidth < _pictureWidth,
//вниз
DirectionType.Down => _startPosY + EntityLiner.Step + _linerHeight < _pictureHeight
};
}
/// <summary>
/// Изменение направления перемещения /// Изменение направления перемещения
/// </summary> /// </summary>
/// <param name="direction">Направление</param> /// <param name="direction">Направление</param>

View File

@ -35,4 +35,5 @@ namespace Liner.MovingStrategies
public void MoveObject(DirectionType direction) => public void MoveObject(DirectionType direction) =>
_drawingLiner?.MoveTransport(direction); _drawingLiner?.MoveTransport(direction);
} }
} }