Example #1
0
        //Esta funcion es para que el Taplan transforme un terreno desiertico en vegetacion
        public void Plantar(Mapa mapa)
        {
            int x = GetPosicion()[0];
            int y = GetPosicion()[1];

            string[,,] tablero = mapa.GetTablero();
            terreno            = tablero[x, y, 0];
            if (tablero[x, y, 0] == "D")
            {
                mapa.SetTerreno("V", x, y);
            }
        }
Example #2
0
        public override void Movimiento(Mapa mapa)
        {
            string[,,] tablero = mapa.GetTablero();
            int cant_filas    = tablero.GetLength(0);
            int cant_columnas = tablero.GetLength(1);
            int x             = posicion[0];
            int y             = posicion[1];
            int vertical      = random.Next(-1, 2);
            int horizontal    = random.Next(-1, 2);

            //Veo si el bitmon caera fuera de los limites del mapa:
            int cont_de_escape = 0;

            while (((x + vertical) < 0) || ((y + horizontal) < 0) || ((x + vertical) >= cant_filas) || ((y + horizontal) >= cant_columnas) || (tablero[x + vertical, y + horizontal, 0] != "A"))
            {
                //condicion de escape
                if (cont_de_escape > 20)
                {
                    return;
                }


                vertical   = random.Next(-1, 2);
                horizontal = random.Next(-1, 2);
                cont_de_escape++;
            }

            int celda_antigua = celda;
            int celda_nueva   = celda;

            //Veo si esta ocupada la celda a la cual se va a mover
            while (tablero[x + vertical, y + horizontal, celda_nueva] != "   ")
            {
                //Si ya no hay mas espacio a donde se va a mover, se quedar en el mismo lugar
                if (celda_nueva == 2 && (tablero[x + vertical, y + horizontal, celda_nueva] != "   "))
                {
                    celda_nueva = celda;
                    vertical    = 0;
                    horizontal  = 0;
                    break;
                }
                celda_nueva++;
            }

            mapa.RemoveBitmon(x, y, celda_antigua);
            posicion[0] += vertical;
            posicion[1] += horizontal;
            celda        = celda_nueva;
            string sigla = tipo_De_Bitmon.Substring(0, 3);

            mapa.SetBitmon(sigla, posicion[0], posicion[1], celda_nueva);
        }
Example #3
0
        /*Esta funcion es para que el Gofue transforme un terreno vegetacion en desiertico, o un terreno
         * de nieve en uno de agua:*/
        public void Secar(Mapa mapa)
        {
            int x = GetPosicion()[0];
            int y = GetPosicion()[1];

            string[,,] tablero = mapa.GetTablero();
            if (tablero[x, y, 0] == "V")
            {
                mapa.SetTerreno("D", x, y);
            }

            else if (tablero[x, y, 0] == "N")
            {
                mapa.SetTerreno("A", x, y);
            }
        }
Example #4
0
        // Reduce el tiempo de vida del Bitmon dependiendo de el terreno en donde se encuentre
        public override void Envejecer(Mapa mapa)
        {
            int x = GetPosicion()[0];
            int y = GetPosicion()[1];

            string[,,] tablero = mapa.GetTablero();
            terreno            = tablero[x, y, 0];

            if (terreno == "L")
            {
                tiempo_De_Vida -= 2;
            }
            else
            {
                tiempo_De_Vida -= 1;
            }
        }
Example #5
0
        public override void Movimiento(Mapa mapa)
        {
            string[,,] tablero = mapa.GetTablero();
            int cant_filas    = tablero.GetLength(0);
            int cant_columnas = tablero.GetLength(1);
            int x             = posicion[0];
            int y             = posicion[1];
            int vertical      = random.Next(-2, 3);
            int horizontal    = random.Next(-2, 3);

            //Veo si el bitmon caera fuera de los limites del mapa:
            while ((x + vertical < 0) || (y + horizontal < 0) || (x + vertical >= cant_filas) || (y + horizontal >= cant_columnas))
            {
                vertical   = random.Next(-2, 3);
                horizontal = random.Next(-2, 3);
            }
            int celda_antigua = celda;
            int celda_nueva   = celda;

            //Veo si esta ocupada la celda a la cual se va a mover
            while (tablero[x + vertical, y + horizontal, celda_nueva] != "   ")
            {
                //Si ya no hay mas espacio a donde se va a mover, se quedar en el mismo lugar
                if (celda_nueva == 2 && (tablero[x + vertical, y + horizontal, celda_nueva] != "   "))
                {
                    celda_nueva = celda;
                    vertical    = 0;
                    horizontal  = 0;
                    break;
                }
                celda_nueva++;
            }

            mapa.RemoveBitmon(x, y, celda_antigua);
            posicion[0] += vertical;
            posicion[1] += horizontal;
            celda        = celda_nueva;
            string sigla = tipo_De_Bitmon.Substring(0, 3);

            mapa.SetBitmon(sigla, posicion[0], posicion[1], celda_nueva);
            //Console.WriteLine($"Tiempo de vida Dorvalo: {tiempo_De_Vida}");
        }
Example #6
0
 //Les quita tiempo de vida a los bitmons
 public virtual void Envejecer(Mapa mapa)
 {
     tiempo_De_Vida -= 1;
     meses_vividos  += 1;
 }
Example #7
0
        public Bitmonlandia(int seed)
        {
            this.seed = seed;
            mapa      = new Mapa(seed);


            //Se generan los bitmons predeterminados dependiendo de la seed

            if (seed == 1)
            {
                int[] tupla   = { 0, 0 };
                int[] tupla2  = { 0, 4 };
                int[] tupla3  = { 4, 4 };
                int[] tupla4  = { 4, 3 };
                int[] tupla5  = { 4, 0 };
                int[] tupla6  = { 0, 1 };
                int[] tupla7  = { 1, 2 };
                int[] tupla8  = { 2, 2 };
                int[] tupla9  = { 3, 2 };
                int[] tupla10 = { 2, 3 };
                añadir_bitmon(new Taplan("Taplan", 10, 50, 100, tupla));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 60, 100, tupla2));
                añadir_bitmon(new Wetar("Wetar", 10, 80, 100, tupla3));
                añadir_bitmon(new Wetar("Wetar", 10, 80, 100, tupla4));
                añadir_bitmon(new Gofue("Gofue", 10, 80, 100, tupla5));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 80, 100, tupla6));
                añadir_bitmon(new Taplan("Taplan", 10, 80, 100, tupla7));
                añadir_bitmon(new Gofue("Gofue", 10, 80, 100, tupla8));
                añadir_bitmon(new Taplan("Taplan", 10, 80, 100, tupla9));
                añadir_bitmon(new Doti("Doti", 10, 80, 100, tupla10));
                PosicionInicialBitmons();
            }

            if (seed == 2)
            {
                int[] tupla   = { 9, 2 };
                int[] tupla2  = { 9, 3 };
                int[] tupla3  = { 8, 3 };
                int[] tupla4  = { 1, 6 };
                int[] tupla5  = { 1, 7 };
                int[] tupla6  = { 0, 6 };
                int[] tupla7  = { 6, 0 };
                int[] tupla8  = { 7, 0 };
                int[] tupla9  = { 2, 3 };
                int[] tupla10 = { 9, 8 };
                int[] tupla11 = { 9, 9 };
                int[] tupla12 = { 8, 9 };
                int[] tupla13 = { 9, 5 };
                int[] tupla14 = { 8, 1 };
                int[] tupla15 = { 1, 1 };
                int[] tupla16 = { 1, 2 };
                int[] tupla17 = { 2, 1 };
                int[] tupla18 = { 2, 2 };
                añadir_bitmon(new Taplan("Taplan", 10, 50, 100, tupla));
                añadir_bitmon(new Taplan("Taplan", 10, 50, 100, tupla2));
                añadir_bitmon(new Taplan("Taplan", 10, 50, 100, tupla3));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 60, 100, tupla4));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 60, 100, tupla5));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 60, 100, tupla6));
                añadir_bitmon(new Wetar("Wetar", 10, 80, 100, tupla7));
                añadir_bitmon(new Wetar("Wetar", 10, 80, 100, tupla8));
                añadir_bitmon(new Wetar("Wetar", 10, 80, 100, tupla9));
                añadir_bitmon(new Gofue("Gofue", 10, 80, 100, tupla10));
                añadir_bitmon(new Gofue("Gofue", 10, 80, 100, tupla11));
                añadir_bitmon(new Gofue("Gofue", 10, 80, 100, tupla12));
                añadir_bitmon(new Ent("Ent", 10, 80, 100, tupla13));
                añadir_bitmon(new Ent("Ent", 10, 80, 100, tupla14));
                añadir_bitmon(new Gofue("Gofue", 10, 80, 100, tupla15));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 80, 100, tupla16));
                añadir_bitmon(new Doti("Doti", 10, 80, 100, tupla17));
                añadir_bitmon(new Doti("Doti", 10, 80, 100, tupla18));
                PosicionInicialBitmons();
            }

            if (seed == 3)
            {
                int[] tupla   = { 5, 7 };
                int[] tupla2  = { 6, 7 };
                int[] tupla3  = { 7, 7 };
                int[] tupla4  = { 6, 14 };
                int[] tupla5  = { 7, 14 };
                int[] tupla6  = { 8, 14 };
                int[] tupla7  = { 6, 0 };
                int[] tupla8  = { 6, 1 };
                int[] tupla9  = { 7, 0 };
                int[] tupla10 = { 11, 0 };
                int[] tupla11 = { 11, 1 };
                int[] tupla12 = { 12, 2 };
                int[] tupla13 = { 1, 2 };
                int[] tupla14 = { 2, 2 };
                int[] tupla15 = { 12, 7 };
                int[] tupla16 = { 1, 7 };
                int[] tupla17 = { 7, 10 };
                int[] tupla18 = { 8, 10 };
                int[] tupla19 = { 8, 7 };
                int[] tupla20 = { 1, 12 };
                int[] tupla21 = { 2, 12 };
                int[] tupla22 = { 3, 11 };
                int[] tupla23 = { 12, 0 };
                int[] tupla24 = { 11, 1 };
                int[] tupla25 = { 12, 2 };
                int[] tupla26 = { 5, 6 };
                int[] tupla27 = { 6, 6 };
                int[] tupla28 = { 7, 6 };
                int[] tupla29 = { 8, 6 };
                int[] tupla30 = { 9, 14 };
                int[] tupla31 = { 10, 14 };
                int[] tupla32 = { 11, 14 };
                int[] tupla33 = { 6, 13 };
                int[] tupla34 = { 7, 13 };
                int[] tupla35 = { 8, 13 };
                añadir_bitmon(new Taplan("Taplan", 10, 50, 100, tupla));
                añadir_bitmon(new Taplan("Taplan", 10, 50, 100, tupla2));
                añadir_bitmon(new Taplan("Taplan", 10, 50, 100, tupla3));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 60, 100, tupla4));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 60, 100, tupla5));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 60, 100, tupla6));
                añadir_bitmon(new Wetar("Wetar", 10, 80, 100, tupla7));
                añadir_bitmon(new Wetar("Wetar", 10, 80, 100, tupla8));
                añadir_bitmon(new Wetar("Wetar", 10, 80, 100, tupla9));
                añadir_bitmon(new Gofue("Gofue", 10, 80, 100, tupla10));
                añadir_bitmon(new Gofue("Gofue", 10, 80, 100, tupla11));
                añadir_bitmon(new Gofue("Gofue", 10, 80, 100, tupla12));
                añadir_bitmon(new Ent("Ent", 10, 80, 100, tupla13));
                añadir_bitmon(new Ent("Ent", 10, 80, 100, tupla14));
                añadir_bitmon(new Doti("Doti", 10, 80, 100, tupla15));
                añadir_bitmon(new Doti("Doti", 10, 80, 100, tupla16));
                añadir_bitmon(new Doti("Doti", 10, 80, 100, tupla17));
                añadir_bitmon(new Doti("Doti", 10, 80, 100, tupla18));
                añadir_bitmon(new Taplan("Taplan", 10, 50, 100, tupla19));
                añadir_bitmon(new Wetar("Wetar", 10, 80, 100, tupla20));
                añadir_bitmon(new Wetar("Wetar", 10, 80, 100, tupla21));
                añadir_bitmon(new Wetar("Wetar", 10, 80, 100, tupla22));
                añadir_bitmon(new Gofue("Gofue", 10, 80, 100, tupla23));
                añadir_bitmon(new Gofue("Gofue", 10, 80, 100, tupla24));
                añadir_bitmon(new Gofue("Gofue", 10, 80, 100, tupla25));
                añadir_bitmon(new Taplan("Taplan", 10, 50, 100, tupla26));
                añadir_bitmon(new Taplan("Taplan", 10, 50, 100, tupla27));
                añadir_bitmon(new Taplan("Taplan", 10, 50, 100, tupla28));
                añadir_bitmon(new Taplan("Taplan", 10, 50, 100, tupla29));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 60, 100, tupla30));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 60, 100, tupla31));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 60, 100, tupla32));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 60, 100, tupla33));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 60, 100, tupla34));
                añadir_bitmon(new Dorvalo("Dorvalo", 10, 60, 100, tupla35));
                PosicionInicialBitmons();
            }
        }