juego sencillo ahorcado

Iniciado por .rn3w., 26 Octubre 2011, 04:38 AM

0 Miembros y 1 Visitante están viendo este tema.

.rn3w.

ojala les ayude...

import java.util.*;
public class ahorcado{
private int vidas;
String [] palabras={"amor","bebe","okey","vida","odio","coma","dios","mama","papa","tata"};
String elegido;
Character [] cont={'*','*','*','*'};
String almacenando="";
   
public ahorcado(){
       vidas =3;
       elegido="";
       }
       
public String elegir(){
       int aleatorio=(int)((Math.random()*10)*10)/10;
       elegido=palabras[aleatorio];
       return elegido;
       }

public boolean existe(char car){
    //       elegido=elegir();
       boolean res=false;
       int i=0;   
       while(res==false && i<=elegido.length()-1){
       if(elegido.charAt(i)==car){
       res=true;
       }
       i++;
       }
       return res;
       }
       
       
public String jugar(char c){
String juego="";
if(elegido==""){
elegido=elegir();
}

almacenando="";
if(vidas>0 && juego!="campeon"){
    if(existe(c)==true){

       for(int m=0; m<=3; m++){
       if(elegido.charAt(m)==c){
       cont[m]=c;
       }
       }
        for(int j=0;j<=3; j++){
        almacenando=almacenando+cont[j];
       }
 
        juego=almacenando;
        almacenando="";
    }else{
        vidas--;
        for(int h=0;h<=3; h++){
        almacenando=almacenando+cont[h];
       }
       juego=almacenando;
       almacenando="";
    }

}else{
    for(int a=0;a<=3; a++){
        almacenando=almacenando+cont[a];
    }
    if(almacenando.equals(elegido)){
        juego="campeon";
    }
    else{
        juego="perdedor";
    }
}
for(int b=0;b<=3; b++){
        almacenando=almacenando+cont[b];
}
  if(almacenando.equals(elegido)){
        juego="campeon";
    }

return juego;
}
}

s00rk

Podrias poner como usarlo en el main ...
Es que intento checarlo pero aun no consigo del todo crear el main jejeje

Yo hice tambien uno aunque es un poco mas corto:
Código (java) [Seleccionar]

package Ahorcado;

import java.util.Random;

public class AHORCADO
{
private String palabra = "", Solucion = "";
private int pos = -1, intentos = 0, maxintentos = 6;
private String [] PALABRAS = {"GATO", "PERRO", "ELEFANTE", "CASA", "AUTOMOVIL",
"ESCUELA", "MALCOM IN THE MIDDLE"};
public int Gano = -1;

public void Iniciar()
{
Random R = new Random();
int x = -1;
do{
x = R.nextInt(PALABRAS.length);
}while(pos == x);
pos = x;
palabra = PALABRAS[pos];

for(x = 0; x < palabra.length(); x++)
{
if(palabra.charAt(x) != ' ')
Solucion += "_";
else
Solucion += " ";
}
Dibujar();
}

public void BuscarLetra(char pal)
{
String Sol1 = Solucion;
Solucion = "";
for(int x = 0; x < palabra.length(); x++)
{
if(palabra.charAt(x) != ' ')
{
if(pal == palabra.charAt(x))
Solucion += pal;
else
Solucion += Sol1.charAt(x);
}else
Solucion += ' ';
}

if(Sol1.compareTo(Solucion) == 0 && Solucion.indexOf(pal) == -1)
intentos++;

Dibujar();
if(Solucion.compareTo(palabra) == 0)
{
Gano = 0;
SOP("Usted ha GANADO!!!! ;D");
}else if(intentos == maxintentos){
Gano = 1;
SOP("Usted ha perdido!!! ");
}
}

private void Dibujar()
{
for(char c: Solucion.toCharArray())
System.out.print(c + " ");
SOP("");
SOP("\nIntentos restantes: " + (maxintentos - intentos));
}

public void SOP(String msj)
{
System.out.println(msj);
}

}


Y en el main para jugar seria algo asi:
Código (java) [Seleccionar]

Scanner Leer = new Scanner(System.in);
AHORCADO A = new AHORCADO();
String letra = "";
char Letra;
int op = -1;
do{
if(op == -1)
op = 1;
else{
A.SOP("\n[1] - Jugar de Nuevo\n[0] - Salir");
op = Leer.nextInt();
}


switch(op)
{
case 1:
A.Iniciar();
while(A.Gano == -1)
{
letra = Leer.next().toUpperCase();
Letra = letra.charAt(0);
A.BuscarLetra(Letra);
}
break;
case 0:
break;
default:
A.SOP("Opcion Indefinida!");
}

}while(op != 0);