2023-11-03 21:51:37 +04:00

32 lines
1.2 KiB
C#

using WarmlyLocomotive.DrawningObjects;
namespace WarmlyLocomotive.MovementStrategy
{
internal class DrawningObjectCar : IMoveableObject
{
private readonly DrawningWarmlyLocomotive? _drawningWarmlyLocomotive = null;
public DrawningObjectCar(DrawningWarmlyLocomotive drawningCar)
{
_drawningWarmlyLocomotive = drawningCar;
}
public ObjectParameters? GetObjectPosition
{
get
{
if (_drawningWarmlyLocomotive == null || _drawningWarmlyLocomotive.EntityWarmlyLocomotive ==
null)
{
return null;
}
return new ObjectParameters(_drawningWarmlyLocomotive.GetPosX,
_drawningWarmlyLocomotive.GetPosY, _drawningWarmlyLocomotive.GetWidth, _drawningWarmlyLocomotive.GetHeight);
}
}
public int GetStep => (int)(_drawningWarmlyLocomotive?.EntityWarmlyLocomotive?.Step ?? 0);
public bool CheckCanMove(Direction direction) =>
_drawningWarmlyLocomotive?.CanMove(direction) ?? false;
public void MoveObject(Direction direction) =>
_drawningWarmlyLocomotive?.MoveTransport(direction);
}
}