Пример #1
0
 /// Dibuja el marcador en pantalla
 public void Dibujar()
 {
     // Tabla de records y vidas restantes
     Hardware.RectanguloRGBA(60, 35, 900, 80, // Marco para records
                             255, 109, 8,     // Naranja
                             255);            // Opaco
     Hardware.EscribirTextoOculta("Puntos", 60, 60,
                                  0x88, 0xFF, 0xFF, fuenteSans);
     Hardware.EscribirTextoOculta(puntuacion.ToString("000000"), 145, 60,
                                  0xFF, 0xFF, 0x88, fuenteSans);
     Hardware.EscribirTextoOculta("Mejor punt.", 260, 60,
                                  0x88, 0xFF, 0xFF, fuenteSans);
     Hardware.EscribirTextoOculta(mejorPunt.ToString("000000"), 385, 60,
                                  0xFF, 0xFF, 0x88, fuenteSans);
     Hardware.EscribirTextoOculta("Nivel", 500, 60,
                                  0x88, 0xFF, 0xFF, fuenteSans);
     Hardware.EscribirTextoOculta(miJuego.GetNumeroNivel().ToString(), 565, 60,
                                  0xFF, 0xFF, 0x88, fuenteSans);
     Hardware.EscribirTextoOculta("Vidas", 615, 60,
                                  0x88, 0xFF, 0xFF, fuenteSans);
     for (byte i = 0; i < miJuego.GetPersonaje().GetNumVidas() - 1; i++)
     {
         iconoVida.Dibujar((short)(672 + i * 60), 35);
     }
 }
Пример #2
0
    /// Lanza la pantalla de créditos
    public void Ejecutar()
    {
        salir = false;

        while (!salir)
        {
            if (Hardware.TeclaPulsada(Hardware.TECLA_ESC))
            {
                salir = true;
            }
            Hardware.BorrarPantallaOculta(0, 0, 0); // Borro en negro
            cartel.Dibujar(xCartel, yCartel);

            Hardware.EscribirTextoOculta(
                "Remake (parcial), Nacho Cabanes 2008 & 2017...",
                189, 250,
                255, 128, 0,
                fuenteSans);
            Hardware.VisualizarOculta();

            Hardware.EscribirTextoOculta(
                "Pulsa ESC para volver al menú...",
                280, 550,
                255, 255, 0,
                fuenteSans);
            Hardware.VisualizarOculta();

            // Pausa de 20 ms, para velocidad de 50 fps (1000/20 = 50)
            Hardware.Pausa(20);
        }
    }
Пример #3
0
    /// Dibuja el mapa en pantalla
    public void Dibujar()
    {
        numFrutas = 0;
        for (short fila = 0; fila < MAXFILAS; fila++)   // Dibujo desde el mapa
        {
            for (short col = 0; col < MAXCOLS; col++)
            {
                switch (GetPosicion(col, fila))
                {
                case 'X':       // Fondo de pantalla, nivel 1
                    fondoNivel1.Dibujar(
                        (short)(xIniPantalla + col * anchoCasilla),
                        (short)(yIniPantalla + fila * altoCasilla));
                    break;

                case 'Y':       // Fondo de pantalla, nivel 2
                    fondoNivel2.Dibujar(
                        (short)(xIniPantalla + col * anchoCasilla),
                        (short)(yIniPantalla + fila * altoCasilla));
                    break;

                case 'Z':       // Fondo de pantalla, nivel 3
                    fondoNivel3.Dibujar(
                        (short)(xIniPantalla + col * anchoCasilla),
                        (short)(yIniPantalla + fila * altoCasilla));
                    break;

                case 'C':      // Cerezas
                    cereza.Dibujar(
                        (short)(xIniPantalla + col * anchoCasilla),
                        (short)(yIniPantalla + fila * altoCasilla));
                    numFrutas++;
                    break;

                /*case 'M':  // Manzanas
                 *  manzana.Dibujar(
                 *  (short)(xIniPantalla + col * anchoCasilla),
                 *  (short)(yIniPantalla + fila * altoCasilla));
                 *  break;*/

                case 'N':      // Nido
                    nido.Dibujar(
                        (short)(xIniPantalla + col * anchoCasilla),
                        (short)(yIniPantalla + fila * altoCasilla));
                    break;

                case 'P':      // Platanos
                    platano.Dibujar(
                        (short)(xIniPantalla + col * anchoCasilla),
                        (short)(yIniPantalla + fila * altoCasilla));
                    numFrutas++;
                    break;
                }
            }
        }
    }
Пример #4
0
    /// Lanza la pantalla de ayuda
    public void Ejecutar()
    {
        int cartelActual              = 0;
        int cantidadCarteles          = 2;
        int contadorFotogramas        = 0;
        int fotogramasHastaOtraImagen = 100;

        salir = false;

        while (!salir)
        {
            if (Hardware.TeclaPulsada(Hardware.TECLA_ESC))
            {
                salir = true;
            }
            Hardware.BorrarPantallaOculta(0, 0, 0); // Borro en negro
            if (cartelActual == 0)
            {
                cartel1.Dibujar(xCartel, yCartel);
            }
            else
            {
                cartel2.Dibujar(xCartel, yCartel);
            }
            Hardware.EscribirTextoOculta(
                "Pulsa ESC para volver al menú...",
                10, 10,
                (byte)(255 - contadorFotogramas * 2), (byte)(255 - contadorFotogramas * 2), 0,
                fuenteSans);
            Hardware.VisualizarOculta();

            contadorFotogramas++;

            if (contadorFotogramas >= fotogramasHastaOtraImagen)
            {
                contadorFotogramas = 0;
                cartelActual++;
                if (cartelActual >= cantidadCarteles)
                {
                    cartelActual = 0;
                }
            }

            // Pausa de 20 ms, para velocidad de 50 fps (1000/20 = 50)
            Hardware.Pausa(20);
        }
    }
    /// Lanza la pantalla de créditos
    public void Ejecutar()
    {
        Hardware.BorrarPantallaOculta(0, 0, 0); // Borro en negro
        cartel.Dibujar(xCartel, yCartel);
        Hardware.EscribirTextoOculta(
            "Pulsa ESC para volver al menú...",
            550, 10,
            255, 255, 0,
            fuenteSans);
        Hardware.VisualizarOculta();

        while (!Hardware.TeclaPulsada(Hardware.TECLA_ESC))
        {
            // Pausa de 20 ms, para velocidad de 50 fps (1000/20 = 50)
            Hardware.Pausa(20);
        }
    }
    /// Lanza la presentacion
    public void Ejecutar()
    {
        salirPresentacion = false;
        salirDelJuego     = false;

        string[] textos =
        { "Pulsa: ",
          " - ESPACIO para empezar",
          " - A para Ayuda",
          " - R para ver los Records",
          " - C para Créditos",
          " - S para Salir" };

        while (!salirPresentacion)
        {
            if (Hardware.TeclaPulsada(Hardware.TECLA_ESP))
            {
                salirPresentacion = true;
                salirDelJuego     = false;
            }
            if (Hardware.TeclaPulsada(Hardware.TECLA_S))
            {
                salirPresentacion = true;
                salirDelJuego     = true;
            }
            Hardware.BorrarPantallaOculta(0, 0, 0); // Borro en negro
            cartel.Dibujar(xCartel, yCartel);
            for (int i = 0; i < textos.Length; i++)
            {
                Hardware.EscribirTextoOculta(
                    textos[i],
                    410, (short)(400 + i * 40),
                    (byte)(255 - i * 30), (byte)(255 - i * 30), 0x00,
                    fuenteSans);
            }
            Hardware.VisualizarOculta();

            xCartel += incrXCartel;
            yCartel += incrYCartel;

            if (xCartel < 0)
            {
                xCartel     = 0;
                incrXCartel = (short)-incrXCartel;
            }
            if (xCartel > Hardware.GetAncho() - anchoCartel)
            {
                xCartel     = (short)(Hardware.GetAncho() - anchoCartel);
                incrXCartel = (short)-incrXCartel;
            }
            if (yCartel < 10)
            {
                incrYCartel = (short)-incrYCartel;
            }
            if (yCartel > Hardware.GetAlto() / 2 - altoCartel)
            {
                incrYCartel = (short)-incrYCartel;
            }

            if (Hardware.TeclaPulsada(Hardware.TECLA_A))
            {
                PantallaAyuda miAyuda = new PantallaAyuda();
                miAyuda.Ejecutar();
            }

            if (Hardware.TeclaPulsada(Hardware.TECLA_C))
            {
                PantallaCreditos creditos = new PantallaCreditos();
                creditos.Ejecutar();
            }

            if (Hardware.TeclaPulsada(Hardware.TECLA_R))
            {
                PantallaRecords records = new PantallaRecords();
                records.Ejecutar();
            }

            // Pausa de 20 ms, para velocidad de 50 fps (1000/20 = 50)
            Hardware.Pausa(20);
        }
    }