2023-11-03 21:51:37 +04:00
|
|
|
|
namespace WarmlyLocomotive.MovementStrategy
|
2023-10-31 15:28:54 +04:00
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Интерфейс для работы с перемещаемым объектом
|
|
|
|
|
/// </summary>
|
|
|
|
|
public interface IMoveableObject
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Получение координаты X объекта
|
|
|
|
|
/// </summary>
|
|
|
|
|
ObjectParameters? GetObjectPosition { get; }
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Шаг объекта
|
|
|
|
|
/// </summary>
|
|
|
|
|
int GetStep { get; }
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Проверка, можно ли переместиться по нужному направлению
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="direction"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
bool CheckCanMove(Direction direction);
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Изменение направления пермещения объекта
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="direction">Направление</param>
|
|
|
|
|
void MoveObject(Direction direction);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|