示例#1
0
 Patron4[] PatronGeneral()
 {
     Patron4[] ret = new Patron4[5];
     ret[0] = new Patron4();
     ret[0].RellenarCentro(Contenido.Vacio);
     return(ret);
 }
示例#2
0
 Patron4[] PatronImposible()
 {
     Patron4[] ret = new Patron4[4];
     for (int i = 0; i < ret.Length; i++)
     {
         ret[i] = new Patron4();
         ret[i].RellenarCasilla(new Vector2Int(1 + i % 2, 1 + i / 2), Contenido.Lleno);
     }
     return(ret);
 }
示例#3
0
    Patron4[] PatronExcepciones()
    {
        Patron4[] ret = new Patron4[8];
        for (int i = 0; i < 4; i++)
        {
            ret[i] = new Patron4();
            ret[i].RellenarFines(i, Contenido.Lleno);
        }

        for (int i = 4; i < 8; i++)
        {
            ret[i] = new Patron4();
            ret[i].RellenarEsquinasPuras(i, Contenido.Lleno);
        }
        return(ret);
    }
示例#4
0
    bool EstaElPatronEn(int x, int y, Patron4 patron)
    {
        bool fin = true;

        for (int i = 0; i < Patron4.tamanyo && fin; i++)
        {
            for (int j = 0; j < Patron4.tamanyo && fin; j++)
            {
                if (patron.ContenidoS(i, j) == Contenido.Vacio && HayCasilla(x + i, y + j) ||
                    patron.ContenidoS(i, j) == Contenido.Lleno && !HayCasilla(x + i, y + j))
                {
                    fin = false;
                }
            }
        }

        return(fin);
    }
示例#5
0
    Patron4[] PatronExcluyente()
    {
        Patron4[] ret = new Patron4[12];
        for (int i = 0; i < 4; i++)
        {
            ret[i] = new Patron4();
            ret[i].RellenarEsquina(i, Contenido.Vacio);
        }
        for (int i = 4; i < 8; i++)
        {
            ret[i] = new Patron4();
            ret[i].RellenarSemiLaterales(i, Contenido.Lleno);
        }
        for (int i = 8; i < 12; i++)
        {
            ret[i] = new Patron4();
            ret[i].RellenarEntreIntersecciones(i, Contenido.Vacio);
        }


        return(ret);
    }