예제 #1
0
        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("САСАМБА");
                        }
                    }
                }
            }
        }
예제 #2
0
 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);
     }
 }