diff --git a/Stormtrooper/Stormtrooper.sln b/Stormtrooper/Stormtrooper.sln
index 73f5e65..3a6336d 100644
--- a/Stormtrooper/Stormtrooper.sln
+++ b/Stormtrooper/Stormtrooper.sln
@@ -1,9 +1,9 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.32002.261
+# Visual Studio Version 17
+VisualStudioVersion = 17.3.32922.545
MinimumVisualStudioVersion = 10.0.40219.1
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Stormtrooper", "Stormtrooper\Stormtrooper.csproj", "{D87DFF83-0536-4E02-BF47-7742AC403580}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Stormtrooper", "Stormtrooper\Stormtrooper.csproj", "{8AA57368-9B39-4D80-8E57-A47747850BC6}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -11,15 +11,15 @@ Global
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {D87DFF83-0536-4E02-BF47-7742AC403580}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {D87DFF83-0536-4E02-BF47-7742AC403580}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {D87DFF83-0536-4E02-BF47-7742AC403580}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {D87DFF83-0536-4E02-BF47-7742AC403580}.Release|Any CPU.Build.0 = Release|Any CPU
+ {8AA57368-9B39-4D80-8E57-A47747850BC6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8AA57368-9B39-4D80-8E57-A47747850BC6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8AA57368-9B39-4D80-8E57-A47747850BC6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8AA57368-9B39-4D80-8E57-A47747850BC6}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
- SolutionGuid = {D4E232C0-9FA0-49BD-B4D6-D779415C9348}
+ SolutionGuid = {83CCA316-14CA-4D9C-BC16-70A84A6A05A1}
EndGlobalSection
EndGlobal
diff --git a/Stormtrooper/Stormtrooper/App.config b/Stormtrooper/Stormtrooper/App.config
deleted file mode 100644
index 56efbc7..0000000
--- a/Stormtrooper/Stormtrooper/App.config
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Stormtrooper/Stormtrooper/Direction.cs b/Stormtrooper/Stormtrooper/Direction.cs
new file mode 100644
index 0000000..bc5cbbe
--- /dev/null
+++ b/Stormtrooper/Stormtrooper/Direction.cs
@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Stormtrooper
+{
+ internal enum Direction
+
+ {
+ Up,
+ Down,
+ Left,
+ Right
+ }
+}
diff --git a/Stormtrooper/Stormtrooper/DrawningMilitaryAirplane.cs b/Stormtrooper/Stormtrooper/DrawningMilitaryAirplane.cs
new file mode 100644
index 0000000..ae4784f
--- /dev/null
+++ b/Stormtrooper/Stormtrooper/DrawningMilitaryAirplane.cs
@@ -0,0 +1,151 @@
+using System;
+using System.Collections.Generic;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Stormtrooper
+{
+ internal class DrawningMilitaryAirplane
+ {
+ ///
+ /// Класс-сущность
+ ///
+ public EntityMilitaryAirplane Airplane { get; private set; }
+ ///
+ /// Левая координата отрисовки автомобиля
+ ///
+ private float _startPosX;
+ ///
+ /// Верхняя кооридната отрисовки автомобиля
+ ///
+ private float _startPosY;
+ ///
+ /// Ширина окна отрисовки
+ ///
+ private int? _pictureWidth = null;
+ ///
+ /// Высота окна отрисовки
+ ///
+ private int? _pictureHeight = null;
+ ///
+ /// Ширина отрисовки самолёта
+ ///
+ private readonly int _airplaneWidth = 80;
+ ///
+ /// Высота отрисовки самолёта
+ ///
+ private readonly int _airplaneHeight = 100;
+ public void Init(int speed, int weight)
+ {
+ Airplane = new EntityMilitaryAirplane();
+ Airplane.Init(speed, weight);
+ }
+
+ public void SetPosition(int x, int y, int width, int height)
+ {
+ if(width > _airplaneWidth && height > _airplaneHeight)
+ {
+ if (x < width - _airplaneWidth)
+ _startPosX = x < 0 ? 0 : x;
+ else _startPosX = width - _airplaneWidth;
+ if (y < height - _airplaneHeight)
+ _startPosY = y < 0 ? 0 : y;
+ else _startPosY = height - _airplaneHeight;
+ _pictureWidth = width;
+ _pictureHeight = height;
+ }
+
+ }
+
+ public void MoveAirplane(Direction direction)
+ {
+ if (!_pictureWidth.HasValue || !_pictureHeight.HasValue)
+ {
+ return;
+ }
+ switch (direction)
+ {
+ // вправо
+ case Direction.Right:
+ if (_startPosX + _airplaneWidth + Airplane.Step < _pictureWidth)
+ {
+ _startPosX += Airplane.Step;
+ }
+ break;
+ //влево
+ case Direction.Left:
+ if (_startPosX - Airplane.Step > 0)
+ {
+ _startPosX -= Airplane.Step;
+ }
+ break;
+ //вверх
+ case Direction.Up:
+ if (_startPosY - Airplane.Step > 0)
+ {
+ _startPosY -= Airplane.Step;
+ }
+ break;
+ //вниз
+ case Direction.Down:
+ if (_startPosY + _airplaneHeight + Airplane.Step < _pictureHeight)
+ {
+ _startPosY += Airplane.Step;
+ }
+ break;
+
+ }
+ }
+
+ public void DrawAirplane(Graphics g)
+ {
+ if (_startPosX < 0 || _startPosY < 0
+ || !_pictureHeight.HasValue || !_pictureWidth.HasValue)
+ {
+ return;
+ }
+ Pen pen = new Pen(Color.Black);
+
+
+ Brush brush = new SolidBrush(Color.Black);
+ g.FillPolygon(brush, new PointF[3] {new PointF(_startPosX, _startPosY + _airplaneHeight / 2),
+ new PointF(_startPosX + _airplaneWidth * 0.1f, _startPosY + _airplaneHeight * 0.45f),
+ new PointF(_startPosX + _airplaneWidth * 0.1f, _startPosY + _airplaneHeight * 0.55f)});
+ g.DrawPolygon(pen, new PointF[6] { new PointF(_startPosX + _airplaneWidth*0.45f,_startPosY),
+ new PointF(_startPosX + _airplaneWidth*0.50f,_startPosY),
+ new PointF(_startPosX + _airplaneWidth * 0.60f, _startPosY+_airplaneHeight*0.45f) ,
+ new PointF(_startPosX + _airplaneWidth * 0.60f, _startPosY+ _airplaneHeight*0.55f),
+ new PointF(_startPosX + _airplaneWidth * 0.50f,_startPosY + _airplaneHeight),
+ new PointF(_startPosX + _airplaneWidth * 0.45f,_startPosY + _airplaneHeight)});
+ g.DrawPolygon(pen, new PointF[4] {
+ new PointF(_startPosX + _airplaneWidth, _startPosY + _airplaneHeight*0.20f),
+ new PointF(_startPosX + _airplaneWidth*0.85f,_startPosY+_airplaneHeight*0.35f),
+ new PointF(_startPosX + _airplaneWidth * 0.85f,_startPosY + _airplaneHeight*0.65f),
+ new PointF(_startPosX + _airplaneWidth, _startPosY + _airplaneHeight*0.80f)
+ });
+ g.FillRectangle(new SolidBrush(Color.White), _startPosX + _airplaneWidth * 0.1f, _startPosY + _airplaneHeight * 0.45f, _airplaneWidth * 0.9f, _airplaneHeight * 0.1f);
+ g.DrawRectangle(pen, _startPosX + _airplaneWidth * 0.1f, _startPosY + _airplaneHeight * 0.45f, _airplaneWidth * 0.9f, _airplaneHeight * 0.1f);
+ }
+ public void ChangeBorders(int width, int height)
+ {
+ _pictureWidth = width;
+ _pictureHeight = height;
+ if (_pictureWidth <= _airplaneWidth || _pictureHeight <= _airplaneHeight)
+ {
+ _pictureWidth = null;
+ _pictureHeight = null;
+ return;
+ }
+ if (_startPosX + _airplaneWidth > _pictureWidth)
+ {
+ _startPosX = _pictureWidth.Value - _airplaneWidth;
+ }
+ if (_startPosY + _airplaneHeight > _pictureHeight)
+ {
+ _startPosY = _pictureHeight.Value - _airplaneHeight;
+ }
+ }
+ }
+}
diff --git a/Stormtrooper/Stormtrooper/EntityMilitaryAirplane.cs b/Stormtrooper/Stormtrooper/EntityMilitaryAirplane.cs
new file mode 100644
index 0000000..a5cd2f6
--- /dev/null
+++ b/Stormtrooper/Stormtrooper/EntityMilitaryAirplane.cs
@@ -0,0 +1,27 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Stormtrooper
+{
+ internal class EntityMilitaryAirplane
+ {
+ public int Speed { get; private set; }
+ public int Weight { get; private set; }
+ public int Crew { get; private set; }
+
+ public float Step => Speed * 25 / Weight;
+
+ public void Init(int speed, int weight, int crew = 10)
+ {
+ Random random = new Random();
+ Speed = speed <= 0 ? random.Next(10, 100) : speed;
+ Weight = weight <= 0 ? random.Next(50, 150) : weight;
+ Crew = crew;
+ }
+
+
+ }
+}
diff --git a/Stormtrooper/Stormtrooper/Form1.Designer.cs b/Stormtrooper/Stormtrooper/Form1.Designer.cs
deleted file mode 100644
index 18e8788..0000000
--- a/Stormtrooper/Stormtrooper/Form1.Designer.cs
+++ /dev/null
@@ -1,41 +0,0 @@
-
-namespace Stormtrooper
-{
- partial class Form1
- {
- ///
- /// Обязательная переменная конструктора.
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Освободить все используемые ресурсы.
- ///
- /// истинно, если управляемый ресурс должен быть удален; иначе ложно.
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Код, автоматически созданный конструктором форм Windows
-
- ///
- /// Требуемый метод для поддержки конструктора — не изменяйте
- /// содержимое этого метода с помощью редактора кода.
- ///
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(800, 450);
- this.Text = "Form1";
- }
-
- #endregion
- }
-}
-
diff --git a/Stormtrooper/Stormtrooper/Form1.cs b/Stormtrooper/Stormtrooper/Form1.cs
deleted file mode 100644
index b62cf58..0000000
--- a/Stormtrooper/Stormtrooper/Form1.cs
+++ /dev/null
@@ -1,20 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Data;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows.Forms;
-
-namespace Stormtrooper
-{
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- }
-}
diff --git a/Stormtrooper/Stormtrooper/MainForm.Designer.cs b/Stormtrooper/Stormtrooper/MainForm.Designer.cs
new file mode 100644
index 0000000..f1c0093
--- /dev/null
+++ b/Stormtrooper/Stormtrooper/MainForm.Designer.cs
@@ -0,0 +1,179 @@
+
+namespace Stormtrooper
+{
+ partial class MainForm
+ {
+ ///
+ /// Обязательная переменная конструктора.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Освободить все используемые ресурсы.
+ ///
+ /// истинно, если управляемый ресурс должен быть удален; иначе ложно.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Код, автоматически созданный конструктором форм Windows
+
+ ///
+ /// Требуемый метод для поддержки конструктора — не изменяйте
+ /// содержимое этого метода с помощью редактора кода.
+ ///
+ private void InitializeComponent()
+ {
+ this.pictureBoxAirplane = new System.Windows.Forms.PictureBox();
+ this.buttonCreate = new System.Windows.Forms.Button();
+ this.toolStripStatus = new System.Windows.Forms.ToolStrip();
+ this.toolStripLabelSpeed = new System.Windows.Forms.ToolStripLabel();
+ this.toolStripLabelWeight = new System.Windows.Forms.ToolStripLabel();
+ this.toolStripLabelCrew = new System.Windows.Forms.ToolStripLabel();
+ this.buttonUp = new System.Windows.Forms.Button();
+ this.buttonDown = new System.Windows.Forms.Button();
+ this.buttonLeft = new System.Windows.Forms.Button();
+ this.buttonRight = new System.Windows.Forms.Button();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBoxAirplane)).BeginInit();
+ this.toolStripStatus.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // pictureBoxAirplane
+ //
+ this.pictureBoxAirplane.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.pictureBoxAirplane.BackColor = System.Drawing.Color.White;
+ this.pictureBoxAirplane.Location = new System.Drawing.Point(12, 12);
+ this.pictureBoxAirplane.Name = "pictureBoxAirplane";
+ this.pictureBoxAirplane.Size = new System.Drawing.Size(1127, 558);
+ this.pictureBoxAirplane.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
+ this.pictureBoxAirplane.TabIndex = 0;
+ this.pictureBoxAirplane.TabStop = false;
+ this.pictureBoxAirplane.Resize += new System.EventHandler(this.PictureBox_Resize);
+ //
+ // buttonCreate
+ //
+ this.buttonCreate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.buttonCreate.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.buttonCreate.Location = new System.Drawing.Point(27, 518);
+ this.buttonCreate.Name = "buttonCreate";
+ this.buttonCreate.Size = new System.Drawing.Size(75, 23);
+ this.buttonCreate.TabIndex = 1;
+ this.buttonCreate.Text = "Создать";
+ this.buttonCreate.UseVisualStyleBackColor = true;
+ this.buttonCreate.Click += new System.EventHandler(this.buttonCreate_Click);
+ //
+ // toolStripStatus
+ //
+ this.toolStripStatus.Dock = System.Windows.Forms.DockStyle.Bottom;
+ this.toolStripStatus.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.toolStripLabelSpeed,
+ this.toolStripLabelWeight,
+ this.toolStripLabelCrew});
+ this.toolStripStatus.Location = new System.Drawing.Point(0, 584);
+ this.toolStripStatus.Name = "toolStripStatus";
+ this.toolStripStatus.Size = new System.Drawing.Size(1151, 25);
+ this.toolStripStatus.TabIndex = 2;
+ this.toolStripStatus.Text = "toolStrip1";
+ //
+ // toolStripLabelSpeed
+ //
+ this.toolStripLabelSpeed.Name = "toolStripLabelSpeed";
+ this.toolStripLabelSpeed.Size = new System.Drawing.Size(86, 22);
+ this.toolStripLabelSpeed.Text = "toolStripLabel1";
+ //
+ // toolStripLabelWeight
+ //
+ this.toolStripLabelWeight.Name = "toolStripLabelWeight";
+ this.toolStripLabelWeight.Size = new System.Drawing.Size(86, 22);
+ this.toolStripLabelWeight.Text = "toolStripLabel2";
+ //
+ // toolStripLabelCrew
+ //
+ this.toolStripLabelCrew.Name = "toolStripLabelCrew";
+ this.toolStripLabelCrew.Size = new System.Drawing.Size(86, 22);
+ this.toolStripLabelCrew.Text = "toolStripLabel3";
+ //
+ // buttonUp
+ //
+ this.buttonUp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.buttonUp.Location = new System.Drawing.Point(1031, 482);
+ this.buttonUp.Name = "buttonUp";
+ this.buttonUp.Size = new System.Drawing.Size(30, 30);
+ this.buttonUp.TabIndex = 3;
+ this.buttonUp.UseVisualStyleBackColor = true;
+ this.buttonUp.Click += new System.EventHandler(this.buttonMove_Click);
+ //
+ // buttonDown
+ //
+ this.buttonDown.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.buttonDown.Location = new System.Drawing.Point(1031, 518);
+ this.buttonDown.Name = "buttonDown";
+ this.buttonDown.Size = new System.Drawing.Size(30, 30);
+ this.buttonDown.TabIndex = 4;
+ this.buttonDown.UseVisualStyleBackColor = true;
+ this.buttonDown.Click += new System.EventHandler(this.buttonMove_Click);
+ //
+ // buttonLeft
+ //
+ this.buttonLeft.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.buttonLeft.Location = new System.Drawing.Point(995, 517);
+ this.buttonLeft.Name = "buttonLeft";
+ this.buttonLeft.Size = new System.Drawing.Size(30, 30);
+ this.buttonLeft.TabIndex = 5;
+ this.buttonLeft.UseVisualStyleBackColor = true;
+ this.buttonLeft.Click += new System.EventHandler(this.buttonMove_Click);
+ //
+ // buttonRight
+ //
+ this.buttonRight.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.buttonRight.Location = new System.Drawing.Point(1067, 517);
+ this.buttonRight.Name = "buttonRight";
+ this.buttonRight.Size = new System.Drawing.Size(30, 30);
+ this.buttonRight.TabIndex = 6;
+ this.buttonRight.UseVisualStyleBackColor = true;
+ this.buttonRight.Click += new System.EventHandler(this.buttonMove_Click);
+ //
+ // MainForm
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(1151, 609);
+ this.Controls.Add(this.buttonRight);
+ this.Controls.Add(this.buttonLeft);
+ this.Controls.Add(this.buttonDown);
+ this.Controls.Add(this.buttonUp);
+ this.Controls.Add(this.toolStripStatus);
+ this.Controls.Add(this.buttonCreate);
+ this.Controls.Add(this.pictureBoxAirplane);
+ this.Name = "MainForm";
+ this.Text = "Form1";
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBoxAirplane)).EndInit();
+ this.toolStripStatus.ResumeLayout(false);
+ this.toolStripStatus.PerformLayout();
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.PictureBox pictureBoxAirplane;
+ private System.Windows.Forms.Button buttonCreate;
+ private System.Windows.Forms.ToolStrip toolStripStatus;
+ private System.Windows.Forms.ToolStripLabel toolStripLabelSpeed;
+ private System.Windows.Forms.ToolStripLabel toolStripLabelWeight;
+ private System.Windows.Forms.ToolStripLabel toolStripLabelCrew;
+ private System.Windows.Forms.Button buttonUp;
+ private System.Windows.Forms.Button buttonDown;
+ private System.Windows.Forms.Button buttonLeft;
+ private System.Windows.Forms.Button buttonRight;
+ }
+}
+
diff --git a/Stormtrooper/Stormtrooper/MainForm.cs b/Stormtrooper/Stormtrooper/MainForm.cs
new file mode 100644
index 0000000..2e5d714
--- /dev/null
+++ b/Stormtrooper/Stormtrooper/MainForm.cs
@@ -0,0 +1,69 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Stormtrooper
+{
+ public partial class MainForm : Form
+ {
+ DrawningMilitaryAirplane _airplane;
+ public MainForm()
+ {
+ InitializeComponent();
+
+ Draw();
+ }
+ private void Draw()
+ {
+ Bitmap bmp = new Bitmap (pictureBoxAirplane.Width, pictureBoxAirplane.Height);
+ Graphics gr = Graphics.FromImage(bmp);
+ _airplane?.DrawAirplane(gr);
+ pictureBoxAirplane.Image = bmp;
+ }
+ private void buttonCreate_Click(object sender, EventArgs e)
+ {
+ Random random = new Random();
+ _airplane = new DrawningMilitaryAirplane();
+ _airplane.Init(10, 50);
+ _airplane.SetPosition(random.Next(100,150), random.Next(100,150), pictureBoxAirplane.Width, pictureBoxAirplane.Height);
+ toolStripLabelSpeed.Text = $"Скорость: {_airplane.Airplane.Speed}";
+ toolStripLabelWeight.Text = $"Вес: {_airplane.Airplane.Weight}";
+ toolStripLabelCrew.Text = $"Экипаж: {_airplane.Airplane.Crew}";
+ Draw();
+ }
+
+ private void PictureBox_Resize(object sender, EventArgs e)
+ {
+ _airplane?.ChangeBorders(pictureBoxAirplane.Width, pictureBoxAirplane.Height);
+ Draw();
+ }
+
+ private void buttonMove_Click(object sender,EventArgs e)
+ {
+ //получаем имя кнопки
+ string name = ((Button)sender)?.Name ?? string.Empty;
+ switch (name)
+ {
+ case "buttonUp":
+ _airplane?.MoveAirplane(Direction.Up);
+ break;
+ case "buttonDown":
+ _airplane?.MoveAirplane(Direction.Down);
+ break;
+ case "buttonLeft":
+ _airplane?.MoveAirplane(Direction.Left);
+ break;
+ case "buttonRight":
+ _airplane?.MoveAirplane(Direction.Right);
+ break;
+ }
+ Draw();
+ }
+ }
+}
diff --git a/Stormtrooper/Stormtrooper/Properties/Resources.resx b/Stormtrooper/Stormtrooper/MainForm.resx
similarity index 87%
rename from Stormtrooper/Stormtrooper/Properties/Resources.resx
rename to Stormtrooper/Stormtrooper/MainForm.resx
index af7dbeb..66a7586 100644
--- a/Stormtrooper/Stormtrooper/Properties/Resources.resx
+++ b/Stormtrooper/Stormtrooper/MainForm.resx
@@ -46,7 +46,7 @@
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
- : System.Serialization.Formatters.Binary.BinaryFormatter
+ : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
@@ -60,6 +60,7 @@
: and then encoded with base64 encoding.
-->
+
@@ -68,9 +69,10 @@
-
+
+
@@ -85,9 +87,10 @@
-
+
+
@@ -109,9 +112,12 @@
2.0
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 17, 17
+
\ No newline at end of file
diff --git a/Stormtrooper/Stormtrooper/Program.cs b/Stormtrooper/Stormtrooper/Program.cs
index eb4a256..2637065 100644
--- a/Stormtrooper/Stormtrooper/Program.cs
+++ b/Stormtrooper/Stormtrooper/Program.cs
@@ -16,7 +16,7 @@ namespace Stormtrooper
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
- Application.Run(new Form1());
+ Application.Run(new MainForm());
}
}
}
diff --git a/Stormtrooper/Stormtrooper/Properties/AssemblyInfo.cs b/Stormtrooper/Stormtrooper/Properties/AssemblyInfo.cs
deleted file mode 100644
index 34ff5db..0000000
--- a/Stormtrooper/Stormtrooper/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,36 +0,0 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-// Общие сведения об этой сборке предоставляются следующим набором
-// набора атрибутов. Измените значения этих атрибутов для изменения сведений,
-// связанных со сборкой.
-[assembly: AssemblyTitle("Stormtrooper")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("Stormtrooper")]
-[assembly: AssemblyCopyright("Copyright © 2022")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// Установка значения False для параметра ComVisible делает типы в этой сборке невидимыми
-// для компонентов COM. Если необходимо обратиться к типу в этой сборке через
-// COM, следует установить атрибут ComVisible в TRUE для этого типа.
-[assembly: ComVisible(false)]
-
-// Следующий GUID служит для идентификации библиотеки типов, если этот проект будет видимым для COM
-[assembly: Guid("d87dff83-0536-4e02-bf47-7742ac403580")]
-
-// Сведения о версии сборки состоят из указанных ниже четырех значений:
-//
-// Основной номер версии
-// Дополнительный номер версии
-// Номер сборки
-// Редакция
-//
-// Можно задать все значения или принять номера сборки и редакции по умолчанию
-// используя "*", как показано ниже:
-// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/Stormtrooper/Stormtrooper/Properties/Resources.Designer.cs b/Stormtrooper/Stormtrooper/Properties/Resources.Designer.cs
deleted file mode 100644
index 20f3e73..0000000
--- a/Stormtrooper/Stormtrooper/Properties/Resources.Designer.cs
+++ /dev/null
@@ -1,70 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// Этот код создан программным средством.
-// Версия среды выполнения: 4.0.30319.42000
-//
-// Изменения в этом файле могут привести к неправильному поведению и будут утрачены, если
-// код создан повторно.
-//
-//------------------------------------------------------------------------------
-
-
-namespace Stormtrooper.Properties
-{
- ///
- /// Класс ресурсов со строгим типом для поиска локализованных строк и пр.
- ///
- // Этот класс был автоматически создан при помощи StronglyTypedResourceBuilder
- // класс с помощью таких средств, как ResGen или Visual Studio.
- // Для добавления или удаления члена измените файл .ResX, а затем перезапустите ResGen
- // с параметром /str или заново постройте свой VS-проект.
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
- [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
- [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- internal class Resources
- {
-
- private static global::System.Resources.ResourceManager resourceMan;
-
- private static global::System.Globalization.CultureInfo resourceCulture;
-
- [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
- internal Resources()
- {
- }
-
- ///
- /// Возврат кэшированного экземпляра ResourceManager, используемого этим классом.
- ///
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Resources.ResourceManager ResourceManager
- {
- get
- {
- if ((resourceMan == null))
- {
- global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Stormtrooper.Properties.Resources", typeof(Resources).Assembly);
- resourceMan = temp;
- }
- return resourceMan;
- }
- }
-
- ///
- /// Переопределяет свойство CurrentUICulture текущего потока для всех
- /// подстановки ресурсов с помощью этого класса ресурсов со строгим типом.
- ///
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Globalization.CultureInfo Culture
- {
- get
- {
- return resourceCulture;
- }
- set
- {
- resourceCulture = value;
- }
- }
- }
-}
diff --git a/Stormtrooper/Stormtrooper/Properties/Settings.Designer.cs b/Stormtrooper/Stormtrooper/Properties/Settings.Designer.cs
deleted file mode 100644
index 76a4115..0000000
--- a/Stormtrooper/Stormtrooper/Properties/Settings.Designer.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-// Runtime Version:4.0.30319.42000
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-
-namespace Stormtrooper.Properties
-{
- [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
- internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
- {
-
- private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
-
- public static Settings Default
- {
- get
- {
- return defaultInstance;
- }
- }
- }
-}
diff --git a/Stormtrooper/Stormtrooper/Properties/Settings.settings b/Stormtrooper/Stormtrooper/Properties/Settings.settings
deleted file mode 100644
index 3964565..0000000
--- a/Stormtrooper/Stormtrooper/Properties/Settings.settings
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
diff --git a/Stormtrooper/Stormtrooper/Stormtrooper.csproj b/Stormtrooper/Stormtrooper/Stormtrooper.csproj
index 2b9b6d5..b57c89e 100644
--- a/Stormtrooper/Stormtrooper/Stormtrooper.csproj
+++ b/Stormtrooper/Stormtrooper/Stormtrooper.csproj
@@ -1,80 +1,11 @@
-
-
-
+
+
- Debug
- AnyCPU
- {D87DFF83-0536-4E02-BF47-7742AC403580}
WinExe
- Stormtrooper
- Stormtrooper
- v4.7.2
- 512
- true
- true
+ net6.0-windows
+ enable
+ true
+ enable
-
- AnyCPU
- true
- full
- false
- bin\Debug\
- DEBUG;TRACE
- prompt
- 4
-
-
- AnyCPU
- pdbonly
- true
- bin\Release\
- TRACE
- prompt
- 4
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Form
-
-
- Form1.cs
-
-
-
-
- ResXFileCodeGenerator
- Resources.Designer.cs
- Designer
-
-
- True
- Resources.resx
-
-
- SettingsSingleFileGenerator
- Settings.Designer.cs
-
-
- True
- Settings.settings
- True
-
-
-
-
-
-
+
\ No newline at end of file