Deplacement roi sur bordure haut et droite reglé
This commit is contained in:
parent
a72d62e678
commit
c07f662043
@ -149,6 +149,9 @@ public class Echiquier {
|
||||
{
|
||||
if (this.getEchiquier()[i][j].getNom() == "KB")
|
||||
{
|
||||
if(!(this.getEchiquier()[k+1][l].getPosition().getX()>7 ||this.getEchiquier()[k][l+1].getPosition().getY()>7 ||this.getEchiquier()[k-1][l].getPosition().getX()<0
|
||||
||this.getEchiquier()[k][l-1].getPosition().getY()<0))//test le cas ou le roi se deplace sur une bordure
|
||||
{
|
||||
if(this.getEchiquier()[k][l+1].getNom() == "KN" || this.getEchiquier()[k+1][l+1].getNom()=="KN"
|
||||
|| this.getEchiquier()[k-1][l+1].getNom()== "KN" || this.getEchiquier()[k-1][l].getNom()== "KN" || this.getEchiquier()[k+1][l].getNom()== "KN"
|
||||
|| this.getEchiquier()[k-1][l-1].getNom()== "KN" || this.getEchiquier()[k][l-1].getNom()== "KN" || this.getEchiquier()[k+1][l-1].getNom()== "KN")
|
||||
@ -156,9 +159,13 @@ public class Echiquier {
|
||||
System.err.println("Le roi ne peut pas se coller à l'autre roi");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (this.getEchiquier()[i][j].getNom() == "KN")
|
||||
{
|
||||
if(!(this.getEchiquier()[k+1][l].getPosition().getX()>7 ||this.getEchiquier()[k][l+1].getPosition().getY()>7 ||this.getEchiquier()[k-1][l].getPosition().getX()<0
|
||||
||this.getEchiquier()[k][l-1].getPosition().getY()<0))//test le cas ou le roi se deplace sur une bordure
|
||||
{
|
||||
if(this.getEchiquier()[k][l+1].getNom() == "KB" || this.getEchiquier()[k+1][l+1].getNom()=="KB"
|
||||
|| this.getEchiquier()[k-1][l+1].getNom()== "KB" || this.getEchiquier()[k-1][l].getNom()== "KB" || this.getEchiquier()[k+1][l].getNom()== "KB"
|
||||
|| this.getEchiquier()[k-1][l-1].getNom()== "KB" || this.getEchiquier()[k][l-1].getNom()== "KB" || this.getEchiquier()[k+1][l-1].getNom()== "KB")
|
||||
@ -167,6 +174,7 @@ public class Echiquier {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (this.getEchiquier()[i][j].deplacable(this,this.getEchiquier()[k][l]) == false) // VERIFICATION AVEC FONCTION DEPLACABLE
|
||||
{
|
||||
|
@ -248,6 +248,7 @@ public class Roi extends Piece {
|
||||
|
||||
if (p.getNom().equals("KN"))
|
||||
{
|
||||
|
||||
if (e.getEchiquier()[8-(p.getPosition().getY())][p.getPosition().getX()-2].getCouleur() == "Noir" && //gauche
|
||||
e.getEchiquier()[8-(p.getPosition().getY())][p.getPosition().getX()].getCouleur() == "Noir" && //droite
|
||||
e.getEchiquier()[8-(p.getPosition().getY()-1)][p.getPosition().getX()-1].getCouleur() == "Noir" && //bas
|
||||
@ -256,8 +257,11 @@ public class Roi extends Piece {
|
||||
)
|
||||
{
|
||||
return false;
|
||||
}else if ( p.aBouge()==false &&
|
||||
|
||||
}
|
||||
if(!(p.getPosition().getX()>7 ||p.getPosition().getY()>7 ||p.getPosition().getX()<0
|
||||
||p.getPosition().getY()<0))//verifie que ca va pas chercher une case vide si elle est en dehors de la matrice
|
||||
{
|
||||
if( p.aBouge()==false &&
|
||||
(e.getEchiquier()[8-(p.getPosition().getY())][p.getPosition().getX()-2].getNom().equals("..") && this.deplacable(e, e.getEchiquier()[8-(p.getPosition().getY())][p.getPosition().getX()-2]) == true) // gauche verifie si le roi ne peut pas de deplacer autour de lui
|
||||
|| (e.getEchiquier()[8-(p.getPosition().getY())][p.getPosition().getX()].getNom().equals("..") && this.deplacable(e, e.getEchiquier()[8-(p.getPosition().getY())][p.getPosition().getX()]) == true ) //droite
|
||||
|| (e.getEchiquier()[8-(p.getPosition().getY()-1)][p.getPosition().getX()-1].getNom().equals("..") && this.deplacable(e, e.getEchiquier()[8-(p.getPosition().getY()-1)][p.getPosition().getX()-1]) == true) // bas
|
||||
@ -269,6 +273,7 @@ public class Roi extends Piece {
|
||||
} else
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
if(p.getNom() == "KN" && p.aBouge()==true)
|
||||
{
|
||||
@ -295,7 +300,11 @@ public class Roi extends Piece {
|
||||
)
|
||||
{
|
||||
return false;
|
||||
}else if ( p.aBouge()==false &&
|
||||
}
|
||||
if(!(p.getPosition().getX()>7 ||p.getPosition().getY()>7 ||p.getPosition().getX()<0
|
||||
||p.getPosition().getY()<0)) //verifie que ca va pas chercher une case vide si elle est en dehors de la matrice
|
||||
{
|
||||
if ( p.aBouge()==false &&
|
||||
|
||||
(e.getEchiquier()[8-(p.getPosition().getY())][p.getPosition().getX()-2].getNom().equals("..") && this.deplacable(e, e.getEchiquier()[8-(p.getPosition().getY())][p.getPosition().getX()-2]) == true) // gauche verifie si le roi ne peut pas de deplacer autour de lui
|
||||
|| (e.getEchiquier()[8-(p.getPosition().getY())][p.getPosition().getX()].getNom().equals("..") && this.deplacable(e, e.getEchiquier()[8-(p.getPosition().getY())][p.getPosition().getX()]) == true ) //droite
|
||||
@ -305,7 +314,9 @@ public class Roi extends Piece {
|
||||
)
|
||||
{
|
||||
return false;
|
||||
} else
|
||||
}
|
||||
}
|
||||
else
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -147,25 +147,7 @@ public class main {
|
||||
System.out.println("Le joueur 1 "+ j1.getNom() +" est echec et mat, il a perdu !");
|
||||
}
|
||||
jeu = false;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
if (e.getRoiB1().enEchecEtMat(e,e.getEchiquier()[8-e.getRoiB1().getPosition().getY()][e.getRoiB1().getPosition().getX()-1]) == true || //si un des 2 roi est en echecetmmat
|
||||
e.getRoiN1().enEchecEtMat(e,e.getEchiquier()[8-e.getRoiN1().getPosition().getY()][e.getRoiN1().getPosition().getX()-1]) == true)
|
||||
{
|
||||
if (e.getRoiB1().enEchecEtMat(e,e.getEchiquier()[8-e.getRoiB1().getPosition().getY()][e.getRoiB1().getPosition().getX()-1]) == true ) //si cest le roi blanc
|
||||
{
|
||||
System.out.println("Le joueur 1 "+ j1.getNom() +" est echec et mat, il a perdu !");
|
||||
}
|
||||
if (e.getRoiN1().enEchecEtMat(e,e.getEchiquier()[8-e.getRoiN1().getPosition().getY()][e.getRoiN1().getPosition().getX()-1]) == true )//si c'est le roi noir
|
||||
{
|
||||
System.out.println("Le joueur 2 " + j2.getNom() +" est echec et mat, il a perdu !");
|
||||
}
|
||||
jeu = false;
|
||||
}*/
|
||||
|
||||
|
||||
}
|
||||
if(jeu == true)
|
||||
{
|
||||
//REAFFICHAGE ECHIQUIER
|
||||
@ -252,9 +234,5 @@ public class main {
|
||||
System.err.println("Une erreur s'est produite, les joueurs ont mal saisie des entrées lors de la fin du programme.");
|
||||
}
|
||||
}
|
||||
System.err.println("Une erreur s'est produite, les joueurs ont mal saisie des entrées lors du démarrage du programme. (nom de joueur vide OU un mauvais numéro de configuration par exemple)");
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user