using ProjectBulldozer.Entities; namespace ProjectBulldozer.Drawning { public class DrawingBulldozer : DrawingTractor { public DrawingBulldozer(int speed, double weight, Color bodyColor, Color additionalColor, bool otval, bool thirdWheel, int width, int height) : base(speed, weight, bodyColor, width, height, 120, 110) { if (EntityTractor != null) { EntityTractor = new EntityBulldozer(speed, width, bodyColor, additionalColor, otval, thirdWheel); } } public override void DrawTransport(Graphics g) { if (EntityTractor is not EntityBulldozer Bulldozer) { return; } Pen pen = new(Color.Black); Brush blackBrush = new SolidBrush(Color.Black); Brush additionalColor = new SolidBrush(Bulldozer.AdditionalColor); Brush grayBrush = new SolidBrush(Color.Gray); if (Bulldozer.Otval) { //otval Point[] Otval = { new Point(_startPosX + 118, _startPosY + 50), new Point(_startPosX + 148, _startPosY + 111), new Point(_startPosX+ 118, _startPosY + 111), }; g.FillPolygon(additionalColor, Otval); g.DrawPolygon(pen, Otval); } //гусеницы Brush gg = new SolidBrush(Color.LightGray); g.FillEllipse(gg, _startPosX + 16, _startPosY + 65, 101, 63); g.DrawEllipse(pen, _startPosX + 16, _startPosY + 65, 101, 63); if (Bulldozer.ThirdWheel) { g.FillEllipse(grayBrush, _startPosX + 65, _startPosY + 100, 13, 13); g.DrawEllipse(pen, _startPosX + 65, _startPosY + 100, 13, 13); } Point[] Ttt = { new Point(_startPosX + 16, _startPosY + 79), new Point(_startPosX + 16, _startPosY + 120), new Point(_startPosX, _startPosY + 48), }; g.FillPolygon(blackBrush, Ttt); g.DrawPolygon(pen, Ttt); g.FillRectangle(blackBrush, _startPosX + 110, _startPosY + 60, 5, 10); base.DrawTransport(g); } } }