/// 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); } }
/// 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); } }
/// 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; } } } }
/// 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); } }