domingo, 20 de febrero de 2011

Juego del gato en java modo grafico usuario & usuario


El código está en letras pequeñas por si lo desea copiar pueda copiar todo
Pero por si las dudas dejo un enlace de descarga al final


 
 
import javax.swing.*;class gato_grafico
{
    public static void main (String args[])
    {
        int j;
        int px,py,i,r,t;
        JTextArea salida=new JTextArea();
        String a[][]=new String [3][3];
        while(true)
        {
        salida.append("\t 0 \t 1 \t 2 \n");
        for(i=0;i<3;i++)
        {
            for(r=0;r<3;r++)
            {
                a[i][r]="-";
            }
        }
  for(t=0;t<5;t++)
    {
JOptionPane.showMessageDialog(null, "TURNO DE EL JUGADOR #1");
    px=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'x'"));
    if(px>2)
    {
   while (px>2)
                {
JOptionPane.showMessageDialog(null, "Este valor no es valido\n Intente con un numero de 0 a 2");
px=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'x'"));
                }
            }
 py=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'y'"));
            if(py>2)
            {
                while (py>2)
                {
JOptionPane.showMessageDialog(null, "Este valor no es valido\n Intente con un numero de 0 a 2");
py=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'y'"));
                }
            }
            else if ((a[px][py]=="O")||(a[px][py]=="X"))
            {
                while((a[px][py]=="O")||(a[px][py]=="X"))
                {
JOptionPane.showMessageDialog(null,"La casilla ya esta OCUPADA \n Intenta en otra");
px=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'x'"));
                    if(px>2)
            {
                while (px>2)
                {
JOptionPane.showMessageDialog(null, "Este valor no es valido\n Intente con un numero de 0 a 2");
px=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'x'"));
                }
            }
py=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'y'"));
                if(py>2)
            {
                while (py>2)
                {
JOptionPane.showMessageDialog(null, "Este valor no es valido\n Intente con un numero de 0 a 2");
py=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'y'"));
                }
            }
                }
            }
            a[px][py]="O";
            for(i=0;i<3;i++)
            {
                salida.append(""+i);
                for(r=0;r<3;r++)
                {
                    salida.append("\t"+a[i][r]);
                }
                salida.append("\n");
            }
            salida.append("__________________________________________\n");
            JOptionPane.showMessageDialog(null,salida);
            if((a[0][0]=="O"&&a[0][1]=="O"&&a[0][2]=="O")||(a[1][0]=="O"&&a[1][1]=="O"&&a[1][2]=="O")||
            (a[2][0]=="O"&&a[2][1]=="O"&&a[2][2]=="O")||(a[0][0]=="O"&&a[1][0]=="O"&&a[2][0]=="O")||
            (a[0][1]=="O"&&a[1][1]=="O"&&a[2][1]=="O")||(a[0][2]=="O"&&a[1][2]=="O"&&a[2][2]=="O")||
            (a[0][0]=="O"&&a[1][1]=="O"&&a[2][2]=="O")||(a[2][0]=="O"&&a[1][1]=="O"&&a[0][2]=="O"))
            {
                JOptionPane.showMessageDialog(null, "EL JUGADOR # 1 ¡¡¡¡¡HA GANADO!!!!!");
                JOptionPane.showMessageDialog(null, salida);
                System.exit(0);
            }
            if((a[0][0]=="O"||a[0][0]=="X")&&(a[0][1]=="O"||a[0][1]=="X")&&(a[0][2]=="O"||a[0][2]=="X")
           &&(a[1][0]=="O"||a[1][0]=="X")&&(a[1][1]=="O"||a[1][1]=="X")&&(a[1][2]=="O"||a[1][2]=="X")
            &&(a[2][0]=="O"||a[2][0]=="X")&&(a[2][1]=="O"||a[2][1]=="X")&&(a[2][2]=="O"||a[2][2]=="X"))
            {
                JOptionPane.showMessageDialog(null, "Nadie ha ganado \n Por lo tanto es un empate");
                JOptionPane.showMessageDialog(null, salida);
                System.exit(0);
            }

 JOptionPane.showMessageDialog(null, "TURNO DE EL JUGADOR #2");
 px=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'x'"));
            if(px>2)
            {
                while (px>2)
                {
  JOptionPane.showMessageDialog(null, "Este valor no es valido\n Intente con un numero de 0 a 2");
  px=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'x'"));
                }
            }
 py=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'y'"));
            if(py>2)
            {
                while (py>2)
                {
      JOptionPane.showMessageDialog(null, "Este valor no es valido\n Intente con un numero de 0 a 2");
 py=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'y'"));
                }
            }
            if ((a[px][py]=="O")||(a[px][py]=="X"))
            {
                while((a[px][py]=="O")||(a[px][py]=="X"))
                {
 JOptionPane.showMessageDialog(null,"La casilla ya esta OCUPADA \n Intenta en otra");
 px=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'x'"));
                    if(px>2)
            {
                while (px>2)
                {
 JOptionPane.showMessageDialog(null, "Este valor no es valido\n Intente con un numero de 0 a 2");
 px=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'x'"));
                }
            }
 py=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'y'"));
            if(py>2)
            {
                while (py>2)
                {
 JOptionPane.showMessageDialog(null, "Este valor no es valido\n Intente con un numero de 0 a 2");
 py=Integer.parseInt(JOptionPane.showInputDialog("En que ubicacion  desea tirar para el eje de las 'y'"));
                }
            }
                }
            }
            a[px][py]="X";
            for(i=0;i<3;i++)
            {
                salida.append(""+i);
                for(r=0;r<3;r++)
                {
                    salida.append("\t"+a[i][r]);
                }
                salida.append("\n");
            }
            salida.append("__________________________________________\n");
            JOptionPane.showMessageDialog(null,salida);
 if((a[0][0]=="X"&&a[0][1]=="X"&&a[0][2]=="X")||(a[1][0]=="X"&&
 a[1][1]=="X"&&a[1][2]=="X")||(a[2][0]=="X"&&a[2][1]=="X"&&a[2][2]=="X")||
(a[0][0]=="X"&&a[1][0]=="X"&&a[2][0]=="X")||(a[0][1]=="X"&&a[1][1]=="X"&&a[2][1]=="X")
||(a[0][2]=="X"&&a[1][2]=="X"&&a[2][2]=="X")||(a[0][0]=="X"&&a[1][1]=="X"&&a[2][2]=="X")
||(a[2][0]=="X"&&a[1][1]=="X"&&a[0][2]=="X"))
            {
                JOptionPane.showMessageDialog(null, "EL JUGADOR # 2 ¡¡¡¡¡HA GANADO!!!!!!");
                JOptionPane.showMessageDialog(null, salida);
                System.exit(0);
            }
        }
        }
}
}

Descargar el codigo


Compartir

5 comentarios:

Publicar un comentario

Twitter Delicious Facebook Digg Stumbleupon Favorites More