Exemplo n.º 1
0
 public bool ComeCaramelo(Caramelo caramelo, Tablero tablero)
 {
     if (PosicionEnCola(caramelo.Posicion.X, caramelo.Posicion.Y))
     {
         Puntos += 10;                     // sumamos puntos
         tablero.ContieneCaramelo = false; //Quitar el caramelo o generar uno nuevo
         return(true);
     }
     return(false);
 }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            Tablero tablero = new Tablero(20, 20);

            Serpiente serpiente = new Serpiente(10, 10);
            Caramelo  caramelo  = new Caramelo(0, 0);
            bool      haComido  = false;

            do
            {
                Console.Clear();
                tablero.DibujarTablero();
                //movemos y comprobamos si ha comido en el turno anterior.
                serpiente.Moverse(haComido);

                //Comprobamos si se ha comido el caramelo
                haComido = serpiente.ComeCaramelo(caramelo, tablero);

                //Dibujamos serpiente
                serpiente.DibujarSerpiente();

                //Si no contiene el caramelo, instanciamos uno nuevo.
                if (!tablero.ContieneCaramelo)
                {
                    caramelo = Caramelo.CrearCaramelo(serpiente, tablero);
                }

                //Dibujamos caramelo
                caramelo.DibujarCaramelo();

                //Leemos informacion por teclado de la direccion.
                var sw = Stopwatch.StartNew();
                while (sw.ElapsedMilliseconds <= 250)
                {
                    serpiente.Direccion = Util.LeerMovimiento(serpiente.Direccion);
                }
            } while (serpiente.ComprobarMorir(tablero));

            Util.MostrarPuntuación(tablero, serpiente);

            Console.ReadKey();
        }