105 lines
2.7 KiB
Java
Raw Normal View History

2019-03-20 14:14:48 +01:00
package piecesEchiquier;
public class Roi extends Piece {
private boolean verif=false;
2019-03-20 14:14:48 +01:00
public Roi(String c,String l, Position pos)
{
super(c,l,pos);
2019-03-20 14:14:48 +01:00
}
2019-05-03 18:32:02 +02:00
/*
public void enEchec(Piece piece, Position position) {
boolean[][] mouvementsPossibles;
mouvementsPossibles=piece.getMouvementsPossibles();
2019-05-03 23:53:45 +02:00
positionCourante = super.getEmplacement();
2019-04-02 16:57:11 +02:00
}
2019-05-03 18:32:02 +02:00
*/
public boolean aBouge()
{
if(this.getIni() != this.getPosition())
{
verif=true;
}
if(this.getIni() == this.getPosition() && verif == false)
{
verif=false;
}
return verif;
}
2019-05-11 16:25:50 +02:00
public boolean deplacable(Echiquier e, Piece p) // vérifie que le roi peut être déplacé
{
//Côté droit
if((p.getPosition().getX()) == (this.getPosition().getX()+1) && (p.getPosition().getY()) == (this.getPosition().getY()+1)) //Verifie deplacement y+1 vers le haut et x+1 vers la droite
{
if(p.getCouleur()!=this.getCouleur())
{
return true;
}
}
if((p.getPosition().getX()) == (this.getPosition().getX()+1) && (p.getPosition().getY()) == (this.getPosition().getY())) //Verifie deplacement x+1 vers la droite
{
if(p.getCouleur()!=this.getCouleur())
{
return true;
}
}
if((p.getPosition().getX()) == (this.getPosition().getX()+1) && (p.getPosition().getY()) == (this.getPosition().getY()-1)) //Verifie deplacement y-1 vers le bas et x+1 vers la droite
{
if(p.getCouleur()!=this.getCouleur())
{
return true;
}
}
//Coté haut
if((p.getPosition().getX()) == (this.getPosition().getX()) && (p.getPosition().getY()) == (this.getPosition().getY()+1)) //Verifie deplacement y+1 vers le haut
{
if(p.getCouleur()!=this.getCouleur())
{
return true;
}
}
//Côté bas
if((p.getPosition().getX()) == (this.getPosition().getX()) && (p.getPosition().getY()) == (this.getPosition().getY()-1)) //Verifie deplacement y-1 vers le bas
{
if(p.getCouleur()!=this.getCouleur())
{
return true;
}
}
//Côté gauche
if((p.getPosition().getX()) == (this.getPosition().getX()-1) && (p.getPosition().getY()) == (this.getPosition().getY()+1)) //Verifie deplacement y+1 vers le haut et x-1 vers la gauche
{
if(p.getCouleur()!=this.getCouleur())
{
return true;
}
}
if((p.getPosition().getX()) == (this.getPosition().getX()-1) && (p.getPosition().getY()) == (this.getPosition().getY())) //Verifie deplacement x-1 vers la gauche
{
if(p.getCouleur()!=this.getCouleur())
{
return true;
}
}
if((p.getPosition().getX()) == (this.getPosition().getX()-1) && (p.getPosition().getY()) == (this.getPosition().getY()-1)) //Verifie deplacement y-1 vers le bas et x-1 vers la gauche
{
if(p.getCouleur()!=this.getCouleur())
{
return true;
}
}
return false;
}
2019-03-20 14:14:48 +01:00
}
2019-05-11 16:25:50 +02:00