PIbd-22_DozorovaAA_ArmoredV.../ArmoredVehicle/DrawingTank.cs

51 lines
1.5 KiB
C#
Raw Normal View History

2022-09-11 18:00:27 +04:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ArmoredVehicle
{
internal class DrawingTank : DrawingArmoredVehicle
{
public DrawingTank(int speed, float weight, Color bodyColor, Color dopColor, bool machineGun, bool tower, bool gun)
2022-09-21 14:05:06 +04:00
: base(speed, weight, bodyColor, 200, 60)
2022-09-11 18:00:27 +04:00
{
ArmoredVehicle = new TankEnity(speed, weight, bodyColor, dopColor, machineGun, tower, gun);
}
2022-09-21 14:05:06 +04:00
2022-09-11 18:00:27 +04:00
public override void DrawTransport(Graphics g)
{
if (ArmoredVehicle is not TankEnity machine)
{
return;
}
2022-09-12 19:23:19 +04:00
2022-09-11 18:00:27 +04:00
Brush br = new SolidBrush(machine?.DopColor ?? Color.Black);
Pen p = new Pen(machine?.DopColor ?? Color.Black, 5);
2022-09-21 14:05:06 +04:00
_startPosY += 40;
base.DrawTransport(g);
_startPosY -= 40;
2022-09-11 18:00:27 +04:00
if (machine.Tower)
{
2022-09-21 14:05:06 +04:00
g.FillRectangle(br, _startPosX + 60, _startPosY + 10, 80, 30);
g.DrawLine(p, _startPosX + 90, _startPosY +20, _startPosX + 250, _startPosY + 20);
2022-09-11 18:00:27 +04:00
if (machine.MachineGun)
{
p = new Pen(machine?.DopColor ?? Color.Black, 3);
2022-09-21 14:05:06 +04:00
g.DrawLine(p, _startPosX + 90, _startPosY, _startPosX + 90, _startPosY + 10);
g.DrawLine(p, _startPosX + 85, _startPosY + 5, _startPosX + 120, _startPosY + 5);
2022-09-11 18:00:27 +04:00
}
}
2022-09-21 14:05:06 +04:00
2022-09-12 19:23:19 +04:00
}
2022-09-21 14:05:06 +04:00
2022-09-12 19:23:19 +04:00
}
2022-09-11 18:00:27 +04:00
}