43 lines
1.8 KiB
C#
43 lines
1.8 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Security.AccessControl;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace Artilleries
|
|
{
|
|
internal class DrawingAdvancedArtillery : DrawingArtillery
|
|
{
|
|
public DrawingAdvancedArtillery(int speed, float weight, Color bodyColor, Color dopColor, bool weapon, bool salvoBattery) : base(speed, weight, bodyColor, 80, 50)
|
|
{
|
|
Artillery = new EntityAdvancedArtillery(speed, weight, bodyColor, dopColor, weapon, salvoBattery);
|
|
}
|
|
|
|
public override void DrawTransport(Graphics g)
|
|
{
|
|
if (Artillery is not EntityAdvancedArtillery advancedArtillery)
|
|
{
|
|
return;
|
|
}
|
|
|
|
Pen pen = new Pen(advancedArtillery.DopColor, 8);
|
|
Brush brush = new SolidBrush(advancedArtillery.DopColor);
|
|
|
|
if (advancedArtillery.Weapon)
|
|
{
|
|
g.DrawLine(pen, _startPosX + _artilleryWidth / 2, _startPosY + _artilleryHeight / 10, _startPosX + _artilleryWidth, _startPosY);
|
|
}
|
|
pen.Width = 6;
|
|
if (advancedArtillery.SalvoBattery)
|
|
{
|
|
g.DrawLine(pen, _startPosX + _artilleryWidth / 4, _startPosY + _artilleryHeight / 4, _startPosX + _artilleryWidth / 4 + _artilleryHeight / 4, _startPosY - 5);
|
|
g.DrawLine(pen, _startPosX + _artilleryWidth / 4 - _artilleryHeight / 4, _startPosY + _artilleryHeight / 4, _startPosX + _artilleryWidth / 4, _startPosY - 5);
|
|
g.DrawLine(pen, _startPosX + _artilleryWidth / 4 - _artilleryHeight / 2, _startPosY + _artilleryHeight / 4, _startPosX + _artilleryWidth / 4 - _artilleryHeight / 4, _startPosY - 5);
|
|
}
|
|
|
|
base.DrawTransport(g);
|
|
}
|
|
}
|
|
}
|