public void CreateButtons(bool par)
        {
            //La variable booleano indica si el boton a crear debe ser par o no
            //Array para almacenar los posibles direccionales a tomar
            bool[] boleans = { true, false };
            //Boton a crear
            Botones boton;

            if (par) //Para crear botones par
            {
                boton = new Botones(boleans[b.Next(0, boleans.Length)], boleans[b.Next(0, boleans.Length)], boleans[b.Next(0, boleans.Length)], boleans[b.Next(0, boleans.Length)], par, pares[b.Next(0, pares.Length)]);
            }
            else //Para crear botones impar
            {
                boton = new Botones(boleans[b.Next(0, boleans.Length)], boleans[b.Next(0, boleans.Length)], boleans[b.Next(0, boleans.Length)], boleans[b.Next(0, boleans.Length)], par, impares[b.Next(0, impares.Length)]);
            }

            //Creamos un punto random para la ubicacion
generate:
            Point pt = new Point(int.Parse(b.Next(this.ClientSize.Width).ToString()),
                                 int.Parse(b.Next(this.ClientSize.Height).ToString()));

            boton.Location = pt;
            foreach (Botones item in buttons)
            {
                if (boton != item)
                {
                    if (boton.Bounds.IntersectsWith(item.Bounds))
                    {
                        goto generate;
                    }
                }
            }
            buttonsToAdd.Add(boton);
        }
 public void PreDeleteButtons(Botones Boton) //Metodo que se encarga de evaluar previamente si es necesario eliminar botones pares o impares
 {
     //Si es par
     if (Boton.par == true)
     {
         for (int i = 0; i < Boton.val; i++)
         {
             DeleteButtons(false);
         }
     }
     //Si es impar
     else if (Boton.par == false)
     {
         for (int i = 0; i < Boton.val; i++)
         {
             DeleteButtons(true);
         }
     }
 }