Questa è la classe. Quello che volevo tentare di fare era di raggruppare le righe e le colonne in cicli di for...
PS scusate se vi ingombro la pagina...
Codice:
/**
* @author Andrea
*/
public class IA extends Game{
private static final long serialVersionUID = -2190042828523424036L;
public static void playIA(){
//intercetto tris posibili del giocatore
if(matr[0][0]==1 && matr[0][1]==1){ //riga 0
if(matr[0][2]==0){
matr[0][2]=2;
}
} else if(matr[0][1]==1 && matr[0][2]==1) {
if(matr[0][0]==0){
matr[0][0]=2;
}
} else if(matr[0][0]==1 && matr[0][2]==1) {
if(matr[0][1]==0){
matr[0][1]=2;
}
} else if(matr[1][0]==1 && matr[1][1]==1) { //riga 1
if(matr[1][2]==0){
matr[1][2]=2;
}
} else if(matr[1][1]==1 && matr[1][2]==1) {
if(matr[1][0]==0){
matr[1][0]=2;
}
} else if(matr[1][0]==1 && matr[1][2]==1) {
if(matr[1][1]==0){
matr[1][1]=2;
}
} else if(matr[2][0]==1 && matr[2][1]==1) { //riga 2
if(matr[2][2]==0){
matr[2][2]=2;
}
} else if(matr[2][1]==1 && matr[2][2]==1) {
if(matr[2][0]==0){
matr[2][0]=2;
}
} else if(matr[2][0]==1 && matr[2][2]==1) {
if(matr[2][1]==0){
matr[2][1]=2;
}
} else if(matr[0][0]==1 && matr[1][0]==1) { //colonna 0
if(matr[2][0]==0){
matr[2][0]=2;
}
} else if(matr[1][0]==1 && matr[2][0]==1){
if(matr[0][0]==0){
matr[0][0]=2;
}
} else if(matr[0][0]==1 && matr[2][0]==1){
if(matr[1][0]==0){
matr[1][0]=2;
}
} else if(matr[0][1]==1 && matr[1][1]==1){ //colonna 1
if(matr[2][1]==0){
matr[2][1]=2;
}
} else if(matr[1][1]==1 && matr[2][1]==1){
if(matr[0][1]==0){
matr[0][1]=2;
}
} else if(matr[0][1]==1 && matr[2][1]==1){
if(matr[1][1]==0){
matr[1][1]=2;
}
} else if(matr[0][2]==1 && matr[1][2]==1){ //colonna 2
if(matr[2][2]==0){
matr[2][2]=2;
}
} else if(matr[1][2]==1 && matr[2][2]==1){
if(matr[0][2]==0){
matr[0][2]=2;
}
} else if(matr[0][2]==1 && matr[2][2]==1){
if(matr[1][2]==0){
matr[1][2]=2;
}
} else if(matr[0][0]==1 && matr[1][1]==1){ //diagonale 1
if(matr[2][2]==0){
matr[2][2]=2;
}
} else if(matr[1][1]==1 && matr[2][2]==1){
if(matr[0][0]==0){
matr[0][0]=2;
}
} else if(matr[0][0]==1 && matr[2][2]==1){
if(matr[1][1]==0){
matr[1][1]=2;
}
} else if(matr[0][2]==1 && matr[1][1]==1){ //diagonale 2
if(matr[2][0]==0){
matr[2][0]=2;
}
} else if(matr[1][1]==1 && matr[2][0]==1){
if(matr[0][2]==0){
matr[0][2]=2;
}
} else if(matr[0][2]==1 && matr[2][0]==1){
if(matr[1][1]==0){
matr[1][1]=2;
}
} else //tentativo vittoria IA
if(matr[0][0]==2 && matr[0][1]==2){ //riga 0
if(matr[0][2]==0){
matr[0][2]=2;
}
} else if(matr[0][1]==2 && matr[0][2]==2) {
if(matr[0][0]==0){
matr[0][0]=2;
}
} else if(matr[0][0]==2 && matr[0][2]==2) {
if(matr[0][1]==0){
matr[0][1]=2;
}
} else if(matr[1][0]==2 && matr[1][1]==2) { //riga 1
if(matr[1][2]==0){
matr[1][2]=2;
}
} else if(matr[1][1]==2 && matr[1][2]==2) {
if(matr[1][0]==0){
matr[1][0]=2;
}
} else if(matr[1][0]==2 && matr[1][2]==2) {
if(matr[1][1]==0){
matr[1][1]=2;
}
} else if(matr[2][0]==2 && matr[2][1]==2) { //riga 2
if(matr[2][2]==0){
matr[2][2]=2;
}
} else if(matr[2][1]==2 && matr[2][2]==2) {
if(matr[2][0]==0){
matr[2][0]=2;
}
} else if(matr[2][0]==2 && matr[2][2]==2) {
if(matr[2][1]==0){
matr[2][1]=2;
}
} else if(matr[0][0]==2 && matr[1][0]==2) { //colonna 0
if(matr[2][0]==0){
matr[2][0]=2;
}
} else if(matr[1][0]==2 && matr[2][0]==2){
if(matr[0][0]==0){
matr[0][0]=2;
}
} else if(matr[0][0]==2 && matr[2][0]==2){
if(matr[1][0]==0){
matr[1][0]=2;
}
} else if(matr[0][1]==2 && matr[1][1]==2){ //colonna 1
if(matr[2][1]==0){
matr[2][1]=2;
}
} else if(matr[1][1]==2 && matr[2][1]==2){
if(matr[0][1]==0){
matr[0][1]=2;
}
} else if(matr[0][1]==2 && matr[2][1]==2){
if(matr[1][1]==0){
matr[1][1]=2;
}
} else if(matr[0][2]==2 && matr[1][2]==2){ //colonna 2
if(matr[2][2]==0){
matr[2][2]=2;
}
} else if(matr[1][2]==2 && matr[2][2]==2){
if(matr[0][2]==0){
matr[0][2]=2;
}
} else if(matr[0][2]==2 && matr[2][2]==2){
if(matr[1][2]==0){
matr[1][2]=2;
}
} else if(matr[0][0]==2 && matr[1][1]==2){ //diagonale 1
if(matr[2][2]==0){
matr[2][2]=2;
}
} else if(matr[1][1]==2 && matr[2][2]==2){
if(matr[0][0]==0){
matr[0][0]=2;
}
} else if(matr[0][0]==2 && matr[2][2]==2){
if(matr[1][1]==0){
matr[1][1]=2;
}
} else if(matr[0][2]==2 && matr[1][1]==2){ //diagonale 2
if(matr[2][0]==0){
matr[2][0]=2;
}
} else if(matr[1][1]==2 && matr[2][0]==2){
if(matr[0][2]==0){
matr[0][2]=2;
}
} else if(matr[0][2]==2 && matr[2][0]==2){
if(matr[1][1]==0){
matr[1][1]=2;
}
} else {
//giocata casuale con controllo casella occupata
int rand1=0;
int rand2=0;
do{
rand1=(int)(Math.random()*3);
rand2=(int)(Math.random()*3);
if (matr[rand1][rand2]==0){
matr[rand1][rand2]=2;
}
} while (matr[rand1][rand2]!=0);
//sto do while mi fa bloccare il brogramma..da correggere
}
}
}