update des classes

Tour.java: Méthode deplaçable
Echiquier, Roi, main, Piece: mise en page
This commit is contained in:
Anthony 2019-05-09 09:30:32 +02:00
parent 22a24e4493
commit d43f65fba0
5 changed files with 36 additions and 40 deletions

View File

@ -3,6 +3,7 @@ package piecesEchiquier;
import joueurs.Joueur;
public class Echiquier {
private String[][] codes =
{
{"A8","B8","C8","D8","E8","F8","G8","H8"},
@ -67,9 +68,8 @@ public class Echiquier {
};
public Echiquier()
{
public Echiquier() {
}
@ -139,18 +139,8 @@ public class Echiquier {
return false;
}
}
}while(( (getCodes()[i][j].equals(A)) == false) && (j+1 < codes.length));
}while((getCodes()[i][j].equals(A) == false) && (i+1 < codes.length));
if (i == 9)
{
System.out.println("Code de la pièce a déplacer invalide. Recommencez.");
return false;
}
for (k = 0; k < codes.length;k++)
{
@ -163,11 +153,11 @@ public class Echiquier {
return false;
}else if (this.getEchiquier()[i][j].deplacable(this.getEchiquier()[k][l]) == false)
{
System.out.println("Déplacement impossible. Recommencez.");
System.out.println("D<EFBFBD>placement impossible. Recommencez.");
return false;
}else
{
System.out.println("Choix validés. Déplacement en cours.");
System.out.println("Choix validés. déplacement en cours.");
this.getEchiquier()[k][l] = this.getEchiquier()[i][j];
this.getEchiquier()[i][j] = new Piece(new Position(i,j));
return true;
@ -179,4 +169,13 @@ public class Echiquier {
System.out.println("Un de vos codes est faux. Recommencez.");
return false;
}
public boolean estVide(Position position) {
int x = position.getX();
int y = position.getY();
if(this.echiquier[x][y].getLettre()=="..") {
return true;
}
return false;
}
}

View File

@ -1,4 +1,3 @@
package piecesEchiquier;
public class Piece {
@ -35,7 +34,7 @@ public class Piece {
}
/* //vérifie une éventuelle collision a chaque case
/* //verifie une eventuelle collision a chaque case
public boolean collision(Case caseArrivee){
return caseArrivee.estVide();
}*/

View File

@ -18,7 +18,7 @@ public class Roi extends Piece {
}
*/
public boolean aBouge()
{
if(this.getIni() != this.getPosition())

View File

@ -21,19 +21,19 @@ public class Tour extends Piece {
return verif;
}
public boolean[][] deplacementsPossibles() {
boolean[][] deplacementsPossibles = new boolean[8][8];
public boolean[][] deplacable(Echiquier e,Piece p) {
boolean[][] deplacementsInherentsPiece = new boolean[8][8];
Position position = this.getPosition();
int x = position.getX();
int y = position.getY();
for(int i=x; i<8; i++) {
//if(echiquier.estVide(position))
deplacementsPossibles[i][y]=true;
deplacementsInherentsPiece[i][y]=true;
}
for(int j=0; j<8; j++) {
deplacementsPossibles[x][j]=true;
deplacementsInherentsPiece[x][j]=true;
}
deplacementsPossibles[x][y]=false;
return deplacementsPossibles;
deplacementsInherentsPiece[x][y]=false;
return deplacementsInherentsPiece;
}
}

View File

@ -1,17 +1,15 @@
package visuel;
// sert pour recup input clavier
import java.util.Scanner; //a voir si on fait une classe 'leScan' pour gérer le scan du clavier plus simplement
import java.util.Scanner;
import joueurs.Joueur;
import piecesEchiquier.Echiquier;
public class main {
public class Main {
// public main (String[] args) { //EVENTUELLEMENT SOLUTION POSSIBLE AVEC FORCE RETURN
public static void main (String[] args) {
//ouvre une porte pour input
Scanner sc = new Scanner(System.in);
@ -20,8 +18,8 @@ public class main {
// joueurs APRES ON DEMANDERA NOM
Joueur j1 = new Joueur("Personne A","Blanc");
Joueur j2 = new Joueur("Personne B","Noir");
Joueur j1 = new Joueur("Manon","Blanc");
Joueur j2 = new Joueur("Autre","Noir");
// vars pour deplacer
@ -30,7 +28,7 @@ public class main {
System.out.println("Bienvenue dans le jeu e-Chesstria ! Le jeu d'echec sur console fait en java !\n");
System.out.println("Bienvenue dans ce jeu d'echec sur console !\n");
Echiquier e = new Echiquier();
do {
@ -44,9 +42,9 @@ public class main {
do {
System.out.println("Quelle pièce voulez vous déplacer ? Donnez le code correspondant de la pièce à déplacer(ex : A1).\n");
System.out.println("Quelle pi<EFBFBD>ce voulez vous d<>placer ? Donnez le code correspondant <20> la pi<70>ce <20> d<>placer(ex : A1).\n");
A = sc.nextLine();
System.out.println("A quel endroit la poser ? Donnez le code correspondant de l'endroit où poser la pièce.\n");
System.out.println("A quel endroit la poser ? Donnez le code correspondant <EFBFBD> l'endroit o<> poser la pi<70>ce.\n");
B = sc.nextLine();
}while (e.VerifFinale(j1, A,B) != true);
@ -57,16 +55,16 @@ public class main {
System.out.println(e.toString());
// JOUEUR2
System.out.println("Tour de "+j2.getNom()+"\n");
System.out.println("Tour de"+j2.getNom()+"\n");
do {
System.out.println("Quelle pièce voulez vous déplacer ? Donnez le code correspondant de la pièce à déplacer(ex : A1).\n");
System.out.println("Quelle pi<EFBFBD>ce voulez vous d<>placer ? Donnez le code correspondant <20> la pi<70>ce <20> d<>placer(ex : A1).\n");
//entrer coordonn<EFBFBD>es piece a bouger APRES ON PASSERA PAR DIRECT COMBINAISON LETTRE-CHIFFRE
//entrer coordonn<EFBFBD>es piece a bouger APRES ON PASSERA PAR DIRECT COMBINAISON LETTRE-CHIFFRE
A = sc.nextLine();
System.out.println("A quel endroit la poser ? Donnez le code correspondant de l'endroit où poser la pièce.\n");
//entrer coordonn<EFBFBD>es endroit vis<EFBFBD> APRES ON PASSERA PAR DIRECT COMBINAISON LETTRE-CHIFFRE
System.out.println("A quel endroit la poser ? Donnez le code correspondant <EFBFBD> l'endroit o<> poser la pi<70>ce.\n");
//entrer coordonn<EFBFBD>es endroit vis<EFBFBD> APRES ON PASSERA PAR DIRECT COMBINAISON LETTRE-CHIFFRE
B = sc.nextLine();
}while (e.VerifFinale(j2, A,B) != true);
@ -76,5 +74,5 @@ public class main {
}while (jeu == true);
sc.close();
}
}