Y mi maestro me pidio un Juego en gato, lo hice en jFrame.
puse 9 labels y 9 botones, cuando presiono el boton se pone 'X' u 'O'
iniciando 'X'... Nos pidio que hicieramos jugar contra la computadora y nos enseño
a crear un Random.... pero cuando juego contra la computadora siempre se me
traba el programa y no encuentro el error.
a ver si alguien puede ayudarme
......
turno=0 // Lo puse para que el programa inicie escribiendo 'X' y despues cambia de valor para escribir 'O'
esta es la imagen del gato
y este es el codigo
Solo pongo lo que hace la el random, y un boton cuando yo presiono los demas botones son iguales.
Código:
Gracias. public String random(){ int lo; lo=r.nextInt(limit+1); while(lo>0){ if((!"X".equals(jLabel1.getText())) || (!"X".equals(jLabel2.getText())) || (!"X".equals(jLabel3.getText())) || (!"X".equals(jLabel4.getText())) || (!"X".equals(jLabel5.getText())) || (!"X".equals(jLabel6.getText())) || (!"X".equals(jLabel7.getText())) || (!"X".equals(jLabel8.getText())) || (!"X".equals(jLabel9.getText())) || (!"O".equals(jLabel1.getText())) || (!"O".equals(jLabel2.getText())) || (!"O".equals(jLabel3.getText())) || (!"O".equals(jLabel4.getText())) || (!"O".equals(jLabel5.getText())) || (!"O".equals(jLabel6.getText())) || (!"O".equals(jLabel7.getText())) || (!"O".equals(jLabel8.getText())) || (!"O".equals(jLabel9.getText()))){ switch(lo){ case 1:{ if (("X".equals(jLabel1.getText())) || ("O".equals(jLabel1.getText())) || turno==0){ break; } else{ if(turno==1){ jLabel1.setText("O"); lo=0; turno=0; } } break; } case 2:{ if (("X".equals(jLabel4.getText())) || ("O".equals(jLabel4.getText())) || turno==0){ break; } else{ if(turno==1){ jLabel4.setText("O"); lo=0; turno=0; } } break; } case 3:{ if (("X".equals(jLabel2.getText())) || ("O".equals(jLabel2.getText())) || turno==0){ break; } else{ if(turno==1){ jLabel2.setText("O"); lo=0; turno=0; } } break; } case 4:{ if (("X".equals(jLabel3.getText())) || ("O".equals(jLabel3.getText())) || turno==0){ break; } else{ if(turno==1){ jLabel3.setText("O"); lo=0; turno=0; } } break; } case 5:{ if (("X".equals(jLabel5.getText())) || ("O".equals(jLabel5.getText())) || turno==0){ break; } else{ if(turno==1){ jLabel5.setText("O"); lo=0; turno=0; } } break; } case 6:{ if (("X".equals(jLabel6.getText())) || ("O".equals(jLabel6.getText())) || turno==0){ break; } else{ if(turno==1){ jLabel6.setText("O"); lo=0; turno=0; } } break; } case 7:{ if (("X".equals(jLabel7.getText())) || ("O".equals(jLabel7.getText())) || turno==0){ break; } else{ if(turno==1){ jLabel7.setText("O"); lo=0; turno=0; } } break; } case 8:{ if (("X".equals(jLabel8.getText())) || ("O".equals(jLabel8.getText())) || turno==0){ break; } else{ if(turno==1){ jLabel8.setText("O"); lo=0; turno=0; } } break; } case 9:{ if (("X".equals(jLabel9.getText())) || ("O".equals(jLabel9.getText())) || turno==0){ break; } else{ if(turno==1){ jLabel9.setText("O"); lo=0; turno=0; } } break; } } } } return null; } private void jButton1MouseClicked(java.awt.event.MouseEvent evt) { if (("X".equals(jLabel1.getText())) || ("O".equals(jLabel1.getText()))){ return; } else{ if(turno==0){ jLabel1.setText("X"); turno=1;} else{ jLabel1.setText("O"); turno=0;} if (b==1){ random(); } compar(); } } private void jButton10ActionPerformed(java.awt.event.ActionEvent evt) { System.exit(0); } private void jButton11ActionPerformed(java.awt.event.ActionEvent evt) { borrar(); } private void jRadioButton3ActionPerformed(java.awt.event.ActionEvent evt) { jLabel11.setText("Humano vs Computadora"); b=1; } private void jRadioButton4ActionPerformed(java.awt.event.ActionEvent evt) { jLabel11.setText("Humano vs Humano"); }