Добавление родителей и ввод конструкторов
This commit is contained in:
parent
591faeb167
commit
0552a911e0
@ -26,6 +26,7 @@ public class DrawningBattleship : DrawningShip
|
|||||||
|
|
||||||
public override void DrawTransport(Graphics g)
|
public override void DrawTransport(Graphics g)
|
||||||
{
|
{
|
||||||
|
base.DrawTransport(g);
|
||||||
if (EntityShip == null || EntityShip is not EntityBattleship battleShip || !_startPosX.HasValue || !_startPosY.HasValue)
|
if (EntityShip == null || EntityShip is not EntityBattleship battleShip || !_startPosX.HasValue || !_startPosY.HasValue)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
@ -111,7 +112,7 @@ public class DrawningBattleship : DrawningShip
|
|||||||
g.DrawRectangle(pen, x + 119, y + 24, 12, 2);
|
g.DrawRectangle(pen, x + 119, y + 24, 12, 2);
|
||||||
|
|
||||||
}
|
}
|
||||||
base.DrawTransport(g);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -32,7 +32,7 @@ namespace Battleship.Drawnings
|
|||||||
/// Ширина прорисовки корабля
|
/// Ширина прорисовки корабля
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
||||||
private readonly int _drawningShipWidth = 130;
|
private readonly int _drawningShipWidth = 145;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Высота прорисовки корабля
|
/// Высота прорисовки корабля
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -80,9 +80,13 @@ namespace Battleship.Drawnings
|
|||||||
/// <returns>true - границы заданы, false - проверка не пройдена, нельзя разместить объект в этих размерах</returns>
|
/// <returns>true - границы заданы, false - проверка не пройдена, нельзя разместить объект в этих размерах</returns>
|
||||||
public bool SetPictureSize(int width, int height)
|
public bool SetPictureSize(int width, int height)
|
||||||
{
|
{
|
||||||
_pictureWidth = width;
|
if (width >= _drawningShipWidth || height >= _drawningShipHeight)
|
||||||
_pictureHeight = height;
|
{
|
||||||
return true;
|
_pictureWidth = width;
|
||||||
|
_pictureHeight = height;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Установка позиции
|
/// Установка позиции
|
||||||
@ -91,10 +95,26 @@ namespace Battleship.Drawnings
|
|||||||
/// <param name="y">Координата Y</param>
|
/// <param name="y">Координата Y</param>
|
||||||
public void SetPosition(int x, int y)
|
public void SetPosition(int x, int y)
|
||||||
{
|
{
|
||||||
if (!_pictureHeight.HasValue || !_pictureWidth.HasValue)
|
if (x < 0)
|
||||||
{
|
{
|
||||||
return;
|
x = 0;
|
||||||
}
|
}
|
||||||
|
else if (x + _drawningShipWidth > _pictureWidth.Value)
|
||||||
|
{
|
||||||
|
x = _pictureWidth.Value - _drawningShipWidth;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (y < 0)
|
||||||
|
{
|
||||||
|
y = 0;
|
||||||
|
}
|
||||||
|
else if (y + _drawningShipHeight > _pictureHeight.Value)
|
||||||
|
{
|
||||||
|
y = _pictureHeight.Value - _drawningShipHeight;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
_startPosX = x;
|
_startPosX = x;
|
||||||
_startPosY = y;
|
_startPosY = y;
|
||||||
}
|
}
|
||||||
|
@ -42,7 +42,7 @@
|
|||||||
/// <param name="additionalColor">Дополнительный цвет</param>
|
/// <param name="additionalColor">Дополнительный цвет</param>
|
||||||
/// <param name="turret">Признак наличия орудийной башни</param>
|
/// <param name="turret">Признак наличия орудийной башни</param>
|
||||||
/// <param name="rocketCompartment">Признак наличия отсека под ракеты</param>
|
/// <param name="rocketCompartment">Признак наличия отсека под ракеты</param>
|
||||||
///<param name="weapon">Признак наличия отсека под ракеты</param>
|
///<param name="weapon">Признак наличия оружия</param>
|
||||||
public EntityBattleship(int speed, double weight, Color bodyColor, Color additionalColor, bool turret, bool rocketCompartment, bool weapon)
|
public EntityBattleship(int speed, double weight, Color bodyColor, Color additionalColor, bool turret, bool rocketCompartment, bool weapon)
|
||||||
: base(speed, weight, bodyColor)
|
: base(speed, weight, bodyColor)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user