Leita
unknown
java
2 years ago
11 kB
10
Indexable
package ahorcadoGame;// Press Shift twice to open the Search Everywhere dialog and type `show whitespaces`,
// then press Enter. You can now see whitespace characters in your code.
import java.util.Scanner;
class ahorcadoGame {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// Lista de películas
String[] peliculas = {"titanic", "avatar", "friends", "breaking bad", "inception", "star wars",
"forrest gump", "the godfather", "the shawshank redemption", "jurassic park",
"matrix", "sins", "Batman", "pulp fiction",
"the silence of the lambs", "the lion king", "the wizard of oz", "fight club",
"barbie", "casablanca"};
// Palabra a adivinar
String palabraSecreta = seleccionarPalabra(peliculas);
palabraSecreta = palabraSecreta.toLowerCase();
char[] palabraOculta = new char[palabraSecreta.length()];
for (int i = 0; i < palabraOculta.length; i++) {
if (palabraSecreta.charAt(i) != ' ') {
palabraOculta[i] = '_';
} else {
palabraOculta[i] = ' ';
}
}
System.out.println(palabraSecreta);
// Partes del muñeco
int fallosLetra = 0;
int fallosPalabra = 0;
int intentosPalabra = 0;
boolean adivinado = false;
// Bucle del juego
// Bucle del juego
while (fallosLetra < 6 && intentosPalabra < 3 && !adivinado) {
// Mostrar palabra oculta
System.out.println("Película: " + new String(palabraOculta));
// Mostrar partes del muñeco
mostrarPartesAhorcado(fallosLetra + fallosPalabra);
// Pedir letra al usuario
System.out.println("Ingresa una letra o una palabra completa");
String entrada = sc.nextLine();
// Verificar si es una letra o palabra
if (entrada.length() == 1) {
// Es una letra
char letra = entrada.charAt(0);
letra = Character.toLowerCase(letra);
boolean acertado = false;
// Verificar si la letra está en la película
for (int i = 0; i < palabraSecreta.length(); i++) {
if (palabraSecreta.charAt(i) == letra) {
palabraOculta[i] = letra;
acertado = true;
}
}
// Actualizar fallos
if (!acertado) {
fallosLetra++;
System.out.println("Letra incorrecta. Intentos restantes: " + (6 - fallosLetra));
} else {
System.out.println("¡Letra correcta!");
}
} else {
entrada = entrada.toLowerCase();
// Es una palabra
if (entrada.equals(palabraSecreta)) {
System.out.println("¡Felicidades! Has adivinado la película.");
adivinado = true; // Cambiar el valor de la variable para salir del bucle
} else {
fallosPalabra++;
intentosPalabra++;
System.out.println("Palabra incorrecta. Intentos restantes: " + (3 - fallosPalabra));
}
}
// Verificar si se adivinó la película
if (new String(palabraOculta).equals(palabraSecreta)) {
System.out.println("¡Felicidades! Has adivinado la película.");
adivinado = true; // Cambiar el valor de la variable para salir del bucle
}
}
// Verificar si se agotaron los intentos
if (fallosLetra == 6 || intentosPalabra == 3) {
System.out.println("¡Has agotado tus intentos! La película era: " + palabraSecreta);
}
// Verificar si se agotaron los intentos
if (fallosLetra == 6 || intentosPalabra == 3) {
System.out.println("¡Has agotado tus intentos! La película era: " + palabraSecreta);
mostrarPartesAhorcado(fallosPalabra + fallosLetra);
}
sc.close();
}
static String seleccionarPalabra(String[] palabras) {
return palabras[(int) (Math.random() * palabras.length)];
}
static void mostrarPartesAhorcado(int fallosLetra) {
if (fallosLetra > 0) {
System.out.println("\nPartes del Ahorcado:");
switch (fallosLetra) {
case 1:
System.out.println(""
+ "| | \r\n"
+ "| |\r\n"
+ "| -------\r\n"
+ "| | - - |\r\n"
+ "| | o |\r\n"
+ "| -------");
break;
case 2:
System.out.println(" "
+ "| |\r\n"
+ "| |\r\n"
+ "| ------- \r\n"
+ "| | - - | \r\n"
+ "| | o | \r\n"
+ "| -------\r\n"
+ "| | \n"
+ "| | \n"
+ "| | \n"
+ "| | \n");
break;
case 3:
System.out.println(" "
+ "| |\r\n"
+ "| |\r\n"
+ "| -------\r\n"
+ "| | - - |\r\n"
+ "| | o |\r\n"
+ "| -------\r\n"
+ "| | \r\n"
+ "| | \\\r\n"
+ "| | \\\r\n"
+ "| | \\\r\n"
+ "| | \r\n"
+ "|\r\n");
break;
case 4:
System.out.println(" "
+ "| |\r\n"
+ "| |\r\n"
+ "| -------\r\n"
+ "| | - - |\r\n"
+ "| | o |\r\n"
+ "| -------\r\n"
+ "| /|\r\n"
+ "| / | \\\r\n"
+ "| / | \\\r\n"
+ "| / | \\\r\n"
+ "| | ");
break;
case 5:
System.out.println(" "
+ "| |\r\n"
+ "| |\r\n"
+ "| -------\r\n"
+ "| | - - |\r\n"
+ "| | o |\r\n"
+ "| -------\r\n"
+ "| /|\r\n"
+ "| / | \\\r\n"
+ "| / | \\\r\n"
+ "| / | \\\r\n"
+ "| |\r\n"
+ "| \\\r\n"
+ "| \\\r\n"
+ "| \\\r\n"
);
break;
case 6:
System.out.println(" "
+ "| |\r\n"
+ "| |\r\n"
+ "| -------\r\n"
+ "| | X X |\r\n"
+ "| | o |\r\n"
+ "| -------\r\n"
+ "| /|\r\n"
+ "| / | \\\r\n"
+ "| / | \\\r\n"
+ "| / | \\\r\n"
+ "| /|\r\n"
+ "| / \\\r\n"
+ "| / \\\r\n"
+ "| / \\\r\n");
break;
default:
break;
}
}
static void mostrarPartesAhorcado ( int fallosPalabra){
if (fallosPalabra > 0) {
System.out.println("\nPartes del Ahorcado:");
switch (fallosPalabra) {
case 1:
System.out.println(" "
+ "| |\r\n"
+ "| |\r\n"
+ "| -------\r\n"
+ "| | - - |\r\n"
+ "| | o |\r\n"
+ "| -------\r\n"
+ "| | \r\n"
+ "| | \\\r\n"
+ "| | \\\r\n"
+ "| | \\\r\n"
+ "| | \r\n"
+ "|\r\n");
break;
case 2:
System.out.println(" "
+ "| |\r\n"
+ "| |\r\n"
+ "| -------\r\n"
+ "| | - - |\r\n"
+ "| | o |\r\n"
+ "| -------\r\n"
+ "| /|\r\n"
+ "| / | \\\r\n"
+ "| / | \\\r\n"
+ "| / | \\\r\n"
+ "| | ");
break;
case 3:
System.out.println(" "
+ "| |\r\n"
+ "| |\r\n"
+ "| -------\r\n"
+ "| | X X |\r\n"
+ "| | o |\r\n"
+ "| -------\r\n"
+ "| /|\r\n"
+ "| / | \\\r\n"
+ "| / | \\\r\n"
+ "| / | \\\r\n"
+ "| /|\r\n"
+ "| / \\\r\n"
+ "| / \\\r\n"
+ "| / \\\r\n");
break;
default:
break;
}
}
}
}
}
Editor is loading...
Leave a Comment