Modification reine et tour
This commit is contained in:
parent
cac8ef3d37
commit
aa7e603752
@ -14,10 +14,8 @@ public class Reine extends Piece {
|
|||||||
|
|
||||||
if(p.getPosition().getX() == this.getPosition().getX()) // verification les 2 pieces sont sur la meme colonne
|
if(p.getPosition().getX() == this.getPosition().getX()) // verification les 2 pieces sont sur la meme colonne
|
||||||
{
|
{
|
||||||
System.out.println("test");
|
|
||||||
if (p.getPosition().getY() > this.getPosition().getY()) // Test si la 2 eme piece est au dessus de la 1ere
|
if (p.getPosition().getY() > this.getPosition().getY()) // Test si la 2 eme piece est au dessus de la 1ere
|
||||||
{
|
{
|
||||||
System.out.println("test2");
|
|
||||||
for (int i = this.getPosition().getY()+1; i <= p.getPosition().getY()-1;i++) // verifie qu'il n'y a pas d'obstacles sur le chemin
|
for (int i = this.getPosition().getY()+1; i <= p.getPosition().getY()-1;i++) // verifie qu'il n'y a pas d'obstacles sur le chemin
|
||||||
{
|
{
|
||||||
if (!(e.getEchiquier()[8-i][this.getPosition().getX()-1].getNom().equals(".."))) // SI case non vide
|
if (!(e.getEchiquier()[8-i][this.getPosition().getX()-1].getNom().equals(".."))) // SI case non vide
|
||||||
@ -73,18 +71,51 @@ public class Reine extends Piece {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i = 1; i < 8; i++) // ON CHERCHE SI LA 2EME COORS EST EN DIAGONALE DE LA 1 ERE
|
if (p.getPosition().getX() < this.getPosition().getX())
|
||||||
{
|
{
|
||||||
System.out.println("test");
|
if (this.getPosition().getX() - p.getPosition().getX() == p.getPosition().getY()-this.getPosition().getY())
|
||||||
if ( p.getPosition().getX() == this.getPosition().getX()+i) // 2eme coors a droite de la 1 ere
|
|
||||||
{
|
{
|
||||||
|
for (int i = 1; i < p.getPosition().getY()-this.getPosition().getY();i++)
|
||||||
|
|
||||||
if (p.getPosition().getY() == this.getPosition().getY()+i ) // on teste si quand on avance de x vers la droite on monte aussi de x
|
|
||||||
{
|
{
|
||||||
for (int j = 1;this.getPosition().getX()+j <= p.getPosition().getX()-1;j++) // on verifie que le chemin est libre
|
if ( !(e.getEchiquier()[8-this.getPosition().getY()-i][this.getPosition().getX()-i-1].getNom().equals("..")) )
|
||||||
{
|
{
|
||||||
if ( !(e.getEchiquier()[8-(this.getPosition().getY()+j)][this.getPosition().getX()+j-1].getNom().equals("..")) )
|
System.err.println("Le chemin n'est pas libre.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else if (this.getPosition().getX() - p.getPosition().getX() == this.getPosition().getY()-p.getPosition().getY())
|
||||||
|
{
|
||||||
|
for (int i = 1; i < this.getPosition().getY()-p.getPosition().getY();i++)
|
||||||
|
{
|
||||||
|
if ( !(e.getEchiquier()[8-this.getPosition().getY()+i][this.getPosition().getX()-i-1].getNom().equals("..")) )
|
||||||
|
{
|
||||||
|
System.err.println("Le chemin n'est pas libre.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}else if (p.getPosition().getX() > this.getPosition().getX())
|
||||||
|
{
|
||||||
|
if (p.getPosition().getX() - this.getPosition().getX() == p.getPosition().getY()-this.getPosition().getY())
|
||||||
|
{
|
||||||
|
for (int i = 1; i < p.getPosition().getY()-this.getPosition().getY();i++)
|
||||||
|
{
|
||||||
|
if ( !(e.getEchiquier()[8-this.getPosition().getY()-i][this.getPosition().getX()+i-1].getNom().equals("..")) )
|
||||||
|
{
|
||||||
|
System.err.println("Le chemin n'est pas libre.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else if (p.getPosition().getX() - this.getPosition().getX() == this.getPosition().getY()-p.getPosition().getY())
|
||||||
|
{
|
||||||
|
for (int i = 1; i < this.getPosition().getY()-p.getPosition().getY();i++)
|
||||||
|
{
|
||||||
|
if ( !(e.getEchiquier()[8-this.getPosition().getY()+i][this.getPosition().getX()+i-1].getNom().equals("..")) )
|
||||||
{
|
{
|
||||||
System.err.println("Le chemin n'est pas libre.");
|
System.err.println("Le chemin n'est pas libre.");
|
||||||
return false;
|
return false;
|
||||||
@ -93,58 +124,8 @@ public class Reine extends Piece {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
else if (p.getPosition().getY() == this.getPosition().getY()-i) // on teste si quand on avance de x vers la droite on descend aussi de x
|
|
||||||
{
|
|
||||||
for (int j = 1;this.getPosition().getX()+j <= p.getPosition().getX()-1;j++) // on verifie que le chemin est libre
|
|
||||||
{
|
|
||||||
if ( !(e.getEchiquier()[8-(this.getPosition().getY()-j)][this.getPosition().getX()+j-1].getNom().equals("..")) )
|
|
||||||
{
|
|
||||||
System.err.println("Le chemin n'est pas libre.");
|
|
||||||
return false;
|
return false;
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
else if ( p.getPosition().getX() == this.getPosition().getX()-i) // 2eme coors a gauche de la 1 ere
|
|
||||||
{
|
|
||||||
|
|
||||||
if (p.getPosition().getY() == this.getPosition().getY()+i ) // on teste si quand on va en x vers la gauche on monte aussi de x
|
|
||||||
{
|
|
||||||
for (int j = 1;this.getPosition().getX()-j >= p.getPosition().getX()+1;j++) // on verifie que le chemin est libre
|
|
||||||
{
|
|
||||||
if ( !(e.getEchiquier()[8-(this.getPosition().getY()+j)][this.getPosition().getX()+j-1].getNom().equals("..")) )
|
|
||||||
{
|
|
||||||
System.err.println("Le chemin n'est pas libre.");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
else if (p.getPosition().getY() == this.getPosition().getY()-i) // on teste si quand on va de x vers la droite on descend aussi de x
|
|
||||||
{
|
|
||||||
for (int j = 1;this.getPosition().getX()-j >= p.getPosition().getX()+1;j++) // on verifie que le chemin est libre
|
|
||||||
{
|
|
||||||
if ( !(e.getEchiquier()[8-(this.getPosition().getY()-j)][this.getPosition().getX()+j-1].getNom().equals("..")) )
|
|
||||||
{
|
|
||||||
System.err.println("Le chemin n'est pas libre.");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -63,6 +63,7 @@ public class Tour extends Piece {
|
|||||||
{
|
{
|
||||||
if (!(e.getEchiquier()[8-this.getPosition().getY()][i-1].getNom().equals(".."))) // SI case non vide
|
if (!(e.getEchiquier()[8-this.getPosition().getY()][i-1].getNom().equals(".."))) // SI case non vide
|
||||||
{
|
{
|
||||||
|
System.err.println("Le chemin n'est pas libre.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user