using ProjectLainer.Entities; namespace ProjectLainer.DrawningObjects { public class DrawningSuperLainer : DrawingLainer { public DrawningSuperLainer(int speed, double weight, Color bodyColor, Color additionalColor, bool pools, bool decks, int width, int height) : base(speed, weight, bodyColor, width, height, 110, 60) { if (EntityLainer != null) { EntityLainer = new EntitySuperLainer(speed, weight, bodyColor, additionalColor, pools, decks); } } public override void DrawTransport(Graphics g) { if (EntityLainer is not EntitySuperLainer superlainer) { return; } base.DrawTransport(g); Brush brBlue = new SolidBrush(Color.LightBlue); Pen pen = new(Color.Black); Brush additionalBrush = new SolidBrush(superlainer.AdditionalColor); if (superlainer.Decks) { Point point1 = new Point(_startPosX, _startPosY + 10); Point point2 = new Point(_startPosX + GetWidth, _startPosY + 10); Point point3 = new Point(_startPosX + 20, _startPosY + 30); Point point4 = new Point(_startPosX + 80, _startPosY + 30); Point[] points = { point1, point2, point4, point3 }; g.DrawPolygon(pen, points); g.FillPolygon(additionalBrush, points); } else { Point point3 = new Point(_startPosX, _startPosY + 30); Point point4 = new Point(_startPosX + GetWidth, _startPosY + 30); Point point1 = new Point(_startPosX + 20, _startPosY + 10); Point point2 = new Point(_startPosX + 80, _startPosY + 10); Point[] points = { point1, point2, point4, point3 }; g.DrawPolygon(pen, points); g.FillPolygon(additionalBrush, points); } for (int i = 2; i < 5; i++) { g.FillEllipse(brBlue, _startPosX + i * 16, _startPosY + 15, 12, 12); } } } }