private void Form1_MouseClick(object sender, MouseEventArgs e) { int xx = e.X; int yy = e.Y; for (int i = 0; i < pekas.Count; i++) { RectangleF rect = new RectangleF(pekas[i].xPos, pekas[i].yPos, 112.0f, 112.0f); // graph.DrawRectangles(new Pen(Color.Red),new RectangleF[]{rect}); if (rect.IntersectsWith(new RectangleF(xx, yy, 1, 1))) { if (ContainsPicture(xx - (int)(pekas[i].xPos), yy - (int)(pekas[i].yPos), (Bitmap)Properties.Resources.ResourceManager.GetObject(pekas[i].type + pekas[i].number.ToString()))) { if (aliveType != pekas[i].type) { pekas[i] = new Peka(pekas[i].type, pekas[i].number, pekas[i].xPos, pekas[i].yPos, pekas[i].Angle, -20); } else { pekas.Clear(); // timer.Stop(); timerCreator.Stop(); playing = false; graph.Clear(Color.Yellow); label1.Visible = true; btn_play.Visible = true; txt_speed.Visible = true; MessageBox.Show("САСАМБА"); } } } } }
private void timer_Tick(object sender, EventArgs e) { if (playing) { for (int i = 0; i < pekas.Count; i++) { pekas[i] = new Peka(pekas[i].type, pekas[i].number, pekas[i].xPos, pekas[i].yPos + pekas[i].Velosity, pekas[i].Angle, pekas[i].Velosity); if (pekas[i].yPos >= 688) { if (pekas[i].type != "gnumme") { // timer.Stop(); RectangleF rect = new RectangleF(pekas[i].xPos, pekas[i].yPos, 112.0f, 112.0f); graph.DrawRectangles(new Pen(Color.Red, 10), new RectangleF[] { rect }); PekasClearExept(i); timerCreator.Stop(); playing = false; MessageBox.Show("САСАМБА"); pekas.Clear(); graph.Clear(Color.Yellow); label1.Visible = true; txt_speed.Visible = true; btn_play.Visible = true; } else if (pekas[i].yPos >= 800) { pekas.RemoveAt(i); } if (pekas[i].yPos <= -120) { pekas.RemoveAt(i); } } } this.Invalidate(); } else { graph.Clear(Color.Yellow); } }