Игра танчики. Добавить завершение игры. - C#
Формулировка задачи:
Создаю танчики,нету уже сил. Не могу создать чтобы при попадании пули в танк выбило текст конец игры. Вот код:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Drawing.Drawing2D; namespace WindowsFormsApplication1 { public partial class screen : Form { const int quantityMenuButtons = 2; Button[] menuButtons = new Button[quantityMenuButtons]; public screen() { InitializeComponent(); Пуля_Игрок1.Пуля_Image = WindowsFormsApplication1.Properties.Resources.bullet1; Пуля_Игрок2.Пуля_Image = WindowsFormsApplication1.Properties.Resources.bullet2; Игрок1.Игрок_Image = WindowsFormsApplication1.Properties.Resources.tank1_Up; Игрок2.Игрок_Image = WindowsFormsApplication1.Properties.Resources.tank2_Up; Меню_(); } //класс для удобства работы с координатами яблока и сегментов змеи меню Меню = new меню(); игрок Игрок1 = new игрок(); игрок Игрок2 = new игрок(); пуля Пуля_Игрок1 = new пуля(); пуля Пуля_Игрок2 = new пуля(); private void Button1_Click(object sender, EventArgs e) // кнопка "старт" { BackgroundImage = null; panel1.Visible = true; gameover_text.Left = (panel1.Width / 2) - (gameover_text.Width / 2); // Позиція в центрі gameover_text.Top = (panel1.Height / 2) - (gameover_text.Width / 2); gameover_text.Visible = false; Игрок1_PicBox.Visible = true; if (timer1.Enabled) MessageBox.Show("Таймер работает"); else MessageBox.Show("Таймер не работает"); this.KeyDown += new KeyEventHandler(panzer_KeyDown); this.KeyUp += new KeyEventHandler(panzer_KeyUp); for (int i = 0; i < menuButtons.Length; i++) this.Controls.Remove(menuButtons[i]); } #region Нажатия клавиш а окне void panzer_KeyDown(object sender, KeyEventArgs e) { switch (e.KeyCode) { // клавиши для Игрок1 case Keys.Up: { Игрок1.Ор = Ориентация.вверх; Игрок1.движется = true; Игрок1.Игрок_Image = WindowsFormsApplication1.Properties.Resources.tank1_Up; break; } case Keys.Down: { Игрок1.Ор = Ориентация.вниз; Игрок1.движется = true; Игрок1.Игрок_Image = WindowsFormsApplication1.Properties.Resources.tank1_Down; break; } case Keys.Left: { Игрок1.Ор = Ориентация.влево; Игрок1.движется = true; Игрок1.Игрок_Image = WindowsFormsApplication1.Properties.Resources.tank1_Left; break; } case Keys.Right: { Игрок1.Ор = Ориентация.вправо; Игрок1.движется = true; Игрок1.Игрок_Image = WindowsFormsApplication1.Properties.Resources.tank1_Right; break; } case Keys.NumPad0: { if (Пуля_Игрок1.выстрел == false) { if (Игрок1.Ор == Ориентация.вверх) { Пуля_Игрок1.Location.X = Игрок1.Location.X + 13; Пуля_Игрок1.Location.Y = Игрок1.Location.Y - 7; } if (Игрок1.Ор == Ориентация.вниз) { Пуля_Игрок1.Location.X = Игрок1.Location.X + 13; Пуля_Игрок1.Location.Y = Игрок1.Location.Y + 33; } if (Игрок1.Ор == Ориентация.влево) { Пуля_Игрок1.Location.X = Игрок1.Location.X - 7; Пуля_Игрок1.Location.Y = Игрок1.Location.Y + 13; } if (Игрок1.Ор == Ориентация.вправо) { Пуля_Игрок1.Location.X = Игрок1.Location.X + 33; Пуля_Игрок1.Location.Y = Игрок1.Location.Y + 13; } if (Игрок1.Ор == Ориентация.вверх) Пуля_Игрок1.Ор = Ориентация.вверх; if (Игрок1.Ор == Ориентация.вниз) Пуля_Игрок1.Ор = Ориентация.вниз; if (Игрок1.Ор == Ориентация.влево) Пуля_Игрок1.Ор = Ориентация.влево; if (Игрок1.Ор == Ориентация.вправо) Пуля_Игрок1.Ор = Ориентация.вправо; ПуляИгрок1_PicBox.Show(); Пуля_Игрок1.выстрел = true; } break; } // клавиши для Игрок2 case Keys.W: { Игрок2.Ор = Ориентация.вверх; Игрок2.движется = true; Игрок2.Игрок_Image = WindowsFormsApplication1.Properties.Resources.tank2_Up; break; } case Keys.S: { Игрок2.Ор = Ориентация.вниз; Игрок2.движется = true; Игрок2.Игрок_Image = WindowsFormsApplication1.Properties.Resources.tank2_Down; break; } case Keys.A: { Игрок2.Ор = Ориентация.влево; Игрок2.движется = true; Игрок2.Игрок_Image = WindowsFormsApplication1.Properties.Resources.tank2_Left; break; } case Keys.D: { Игрок2.Ор = Ориентация.вправо; Игрок2.движется = true; Игрок2.Игрок_Image = WindowsFormsApplication1.Properties.Resources.tank2_Right; break; } case Keys.Space: { if (Пуля_Игрок2.выстрел == false) { if (Игрок2.Ор == Ориентация.вверх) { Пуля_Игрок2.Location.X = Игрок2.Location.X + 13; Пуля_Игрок2.Location.Y = Игрок2.Location.Y - 7; } if (Игрок2.Ор == Ориентация.вниз) { Пуля_Игрок2.Location.X = Игрок2.Location.X + 13; Пуля_Игрок2.Location.Y = Игрок2.Location.Y + 33; } if (Игрок2.Ор == Ориентация.влево) { Пуля_Игрок2.Location.X = Игрок2.Location.X - 7; Пуля_Игрок2.Location.Y = Игрок2.Location.Y + 13; } if (Игрок2.Ор == Ориентация.вправо) { Пуля_Игрок2.Location.X = Игрок2.Location.X + 33; Пуля_Игрок2.Location.Y = Игрок2.Location.Y + 13; } if (Игрок2.Ор == Ориентация.вверх) Пуля_Игрок2.Ор = Ориентация.вверх; if (Игрок2.Ор == Ориентация.вниз) Пуля_Игрок2.Ор = Ориентация.вниз; if (Игрок2.Ор == Ориентация.влево) Пуля_Игрок2.Ор = Ориентация.влево; if (Игрок2.Ор == Ориентация.вправо) Пуля_Игрок2.Ор = Ориентация.вправо; ПуляИгрок2_PicBox.Show(); Пуля_Игрок2.выстрел = true; } break; } } } void panzer_KeyUp(object sender, KeyEventArgs e) { switch (e.KeyCode) { // клавиши для Игрок1 case Keys.Up: { Игрок1.движется = false; break; } case Keys.Down: { Игрок1.движется = false; break; } case Keys.Left: { Игрок1.движется = false; break; } case Keys.Right: { Игрок1.движется = false; break; } // клавиши для Игрок2 case Keys.W: { Игрок2.движется = false; break; } case Keys.S: { Игрок2.движется = false; break; } case Keys.A: { Игрок2.движется = false; break; } case Keys.D: { Игрок2.движется = false; break; } } if (e.KeyCode == Keys.Escape) { this.Close(); } // Нажміть Esc для виходу if (e.KeyCode == Keys.R) // Перезапустити гру { } } #endregion private void Button2_Click(object sender, EventArgs e) // кнопка "выход" { Application.Exit(); } public void Меню_() // вывод меню { panel1.Visible = false; string[] buttText = new string[2] { "Старт", "Выход" }; EventHandler[] handlers = new EventHandler[2] { new EventHandler(Button1_Click), new EventHandler(Button2_Click) }; int buttonNumber = 0; int Y = 50; BackgroundImage = Меню.ФоноваяКартинкаМеню; do { Button but = new Button(); but.Name = "button" + buttonNumber.ToString(); but.ClientSize = new Size(150, 50); but.Location = new Point(600, Y); but.Text = buttText[buttonNumber]; but.Click += handlers[buttonNumber]; but.BackColor = Color.AliceBlue; this.Controls.Add(but); menuButtons[buttonNumber] = but; buttonNumber++; Y += 50; } while (buttonNumber != quantityMenuButtons); } private void timer1_Tick(object sender, EventArgs e) // таймер { Игрок1.Location.X = Игрок1_PicBox.Location.X; Игрок1.Location.Y = Игрок1_PicBox.Location.Y; Игрок2.Location.X = Игрок2_PicBox.Location.X; Игрок2.Location.Y = Игрок2_PicBox.Location.Y; Игрок1.Движение(); Игрок2.Движение(); Пуля_Игрок1.Движение(); Пуля_Игрок2.Движение(); Игрок1_PicBox.Image = Игрок1.Игрок_Image; Игрок2_PicBox.Image = Игрок2.Игрок_Image; ПуляИгрок1_PicBox.Image = Пуля_Игрок1.Пуля_Image; ПуляИгрок2_PicBox.Image = Пуля_Игрок2.Пуля_Image; Игрок1_PicBox.Location = new Point(Игрок1.Location.X, Игрок1.Location.Y); Игрок2_PicBox.Location = new Point(Игрок2.Location.X, Игрок2.Location.Y); ПуляИгрок1_PicBox.Location = new Point(Пуля_Игрок1.Location.X, Пуля_Игрок1.Location.Y); ПуляИгрок2_PicBox.Location = new Point(Пуля_Игрок2.Location.X, Пуля_Игрок2.Location.Y); if (Пуля_Игрок1.выстрел == false) ПуляИгрок1_PicBox.Hide(); if (Пуля_Игрок2.выстрел == false) ПуляИгрок2_PicBox.Hide(); } } }
Решение задачи: «Игра танчики. Добавить завершение игры.»
textual
Листинг программы
Form1.Restart(); // Перезагружает форму this.Form2.Hide();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д