Исправление логики движения
This commit is contained in:
parent
8cd9bd77c1
commit
c11d4126a5
@ -81,6 +81,14 @@ namespace AirBomber
|
|||||||
public void SetPosition(int x, int y)
|
public void SetPosition(int x, int y)
|
||||||
{
|
{
|
||||||
// TODO: Изменение x, y, если при установке объект выходит за границы
|
// TODO: Изменение x, y, если при установке объект выходит за границы
|
||||||
|
if (x < 0 || x + _airPlaneWidth > _pictureWidth)
|
||||||
|
{
|
||||||
|
x = _pictureWidth - _airPlaneWidth;
|
||||||
|
}
|
||||||
|
if (y < 0 || y + _airPlaneHeight > _pictureHeight)
|
||||||
|
{
|
||||||
|
y = _pictureHeight - _airPlaneHeight;
|
||||||
|
}
|
||||||
_startPosX = x;
|
_startPosX = x;
|
||||||
_startPosY = y;
|
_startPosY = y;
|
||||||
}
|
}
|
||||||
@ -217,9 +225,9 @@ namespace AirBomber
|
|||||||
//вверх
|
//вверх
|
||||||
DirectionType.Up => _startPosY - EntityAirPlane.Step > 0,
|
DirectionType.Up => _startPosY - EntityAirPlane.Step > 0,
|
||||||
// вправо
|
// вправо
|
||||||
DirectionType.Right => _startPosX + EntityAirPlane.Step < _pictureWidth,
|
DirectionType.Right => _startPosX + EntityAirPlane.Step + _airPlaneWidth < _pictureWidth,
|
||||||
//вниз
|
//вниз
|
||||||
DirectionType.Down => _startPosY + EntityAirPlane.Step < _pictureHeight,
|
DirectionType.Down => _startPosY + EntityAirPlane.Step + _airPlaneHeight< _pictureHeight,
|
||||||
_ => false,
|
_ => false,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user