Retour ancien main

This commit is contained in:
Johann 2019-05-27 22:41:39 +02:00
parent 3a5dac9857
commit 4a06d56bfd
2 changed files with 85 additions and 34 deletions

View File

@ -45,14 +45,14 @@ public class Echiquier {
//ATTRIBUTS //ATTRIBUTS
private String[][] codes = //pour définir quel code correspond a quel case private String[][] codes = //pour définir quel code correspond a quel case
{ {
{"A8","B8","C8","D8","E8","F8","G8","H8"}, {"a8","b8","c8","d8","e8","f8","g8","h8"},
{"A7","B7","C7","D7","E7","F7","G7","H7"}, {"a7","b7","c7","d7","e7","f7","g7","h7"},
{"A6","B6","C6","D6","E6","F6","G6","H6"}, {"a6","b6","c6","d6","e6","f6","g6","h6"},
{"A5","B5","C5","D5","E5","F5","G5","H5"}, {"a5","b5","c5","d5","e5","f5","g5","h5"},
{"A4","B4","C4","D4","E4","F4","G4","H4"}, {"a4","b4","c4","d4","e4","f4","g4","h4"},
{"A3","B3","C3","D3","E3","F3","G3","H3"}, {"a3","b3","c3","d3","e3","f3","g3","h3"},
{"A2","B2","C2","D2","E2","F2","G2","H2"}, {"a2","b2","c2","d2","e2","f2","g2","h2"},
{"A1","B1","C1","D1","E1","F1","G1","H1"} {"a1","b1","c1","d1","e1","f1","g1","h1"}
}; };
//declaration de toutes les pieces de l'echiquier //declaration de toutes les pieces de l'echiquier

View File

@ -27,9 +27,17 @@ public class main {
// déclaration des joueurs // déclaration des joueurs
System.out.println("Entrez le nom du joueur 1 : "); System.out.println("Entrez le nom du joueur 1 : ");
Joueur j1 = new Joueur(sc.nextLine(), null); Joueur j1 = new Joueur(sc.nextLine(), null);
if(j1.getNom().isEmpty()) {
j1.setNom("Joueur Par défaut 1");
}
System.out.println("Entrez le nom du joueur 2 : "); System.out.println("Entrez le nom du joueur 2 : ");
Joueur j2 = new Joueur(sc.nextLine(), null); Joueur j2 = new Joueur(sc.nextLine(), null);
if(j2.getNom().isEmpty()) {
j2.setNom("Joueur Par défaut 2");
}
Joueur jTemp = new Joueur(null, null); // ce joueur sert de mémoire pour le choix de l'odre de jeu
if(j1.getNom().equalsIgnoreCase("") || j2.getNom().equalsIgnoreCase("") || j1.getNom().equalsIgnoreCase(null) || j2.getNom().equalsIgnoreCase(null)) { if(j1.getNom().equalsIgnoreCase("") || j2.getNom().equalsIgnoreCase("") || j1.getNom().equalsIgnoreCase(null) || j2.getNom().equalsIgnoreCase(null)) {
choixPartie = -1; choixPartie = -1;
@ -39,9 +47,12 @@ public class main {
String A; //coordonées de départ String A; //coordonées de départ
String B; //coordonées d'arrivée String B; //coordonées d'arrivée
char cA = 'y';//pour recup le premier char
char pA = '8';//pour recup le 2e char
String sA;//pour concatener
//déclaration de l'échiquier //déclaration de l'échiquier
while (choixPartie >= 1) { while (choixPartie >= 1) {
Echiquier e = new Echiquier(); Echiquier e = new Echiquier();
while (choixPartie == 1) { while (choixPartie == 1) {
@ -53,6 +64,9 @@ public class main {
System.out.println("3 = Aléatoire"); System.out.println("3 = Aléatoire");
String choixP = sc.nextLine(); String choixP = sc.nextLine();
if(choixP.isEmpty()) {
choixP = "3";
}
if (choixP.equalsIgnoreCase("3")) { if (choixP.equalsIgnoreCase("3")) {
int random = (int) (Math.random() * 2 + 1); int random = (int) (Math.random() * 2 + 1);
@ -78,6 +92,18 @@ public class main {
j1.setCouleur("Noir"); j1.setCouleur("Noir");
System.out.println("Le joueur " + j2.getNom() + " jouera les blancs et le joueur " + j1.getNom() System.out.println("Le joueur " + j2.getNom() + " jouera les blancs et le joueur " + j1.getNom()
+ " jouera les noirs."); + " jouera les noirs.");
/*
* Alors ici on utilise un joueur temporaire pour faire passe le deuxième joueur en joueur numéro 1
*/
jTemp.setNom(j1.getNom());
jTemp.setCouleur(j1.getCouleur());
j1.setCouleur(j2.getCouleur());
j1.setNom(j2.getNom());
j2.setNom(jTemp.getNom());
j2.setCouleur(jTemp.getCouleur());
choixPartie = 2; choixPartie = 2;
} else { } else {
@ -86,7 +112,7 @@ public class main {
} }
System.out.println("Bienvenue " + j1.getNom() + " et " + j2.getNom() System.out.println("Bienvenue " + j1.getNom() + " et " + j2.getNom()
+ " dans e-Chesstria ! Le jeu d'echec équestrien sur console fait entièrement en java !\n"); + " dans e-Chesstria ! Le jeu d'echec sur console fait entièrement en java !\n");
do { do {
@ -95,10 +121,10 @@ public class main {
/*JOUEUR1*/ /*JOUEUR1*/
System.out.println("\n" + "Tour de " + j1.getNom() + " (Blanc)\n"); System.out.println("\n" + "Tour de " + j1.getNom() + "(" + j1.getCouleur() + ")\n");
//do { //do {
if (e.getRoiB1().enEchecEtMat(e,e.getEchiquier()[8-e.getRoiB1().getPosition().getY()][e.getRoiB1().getPosition().getX()-1]) == true) if (e.getRoiB1().enEchecEtMat(e,e.getEchiquier()[8-e.getRoiB1().getPosition().getY()][e.getRoiB1().getPosition().getX()-1]) == true)
{ {
do do
{ {
@ -110,28 +136,45 @@ public class main {
System.out.println( System.out.println(
"À quel endroit la poser ? Donnez le code correspondant à l'endroit où poser la pièce.\n"); "À quel endroit la poser ? Donnez le code correspondant à l'endroit où poser la pièce.\n");
B = sc.nextLine(); B = sc.nextLine();
}while(e.verificationMouvement(j1, A, B) != true ); }while(e.verificationMouvement(j1, A, B) != true );
} }
else if (e.getRoiB1().isRoiEchec() == true) else if (e.getRoiB1().isRoiEchec() == true)
{ {
do do
{ {
System.out.println( System.out.println(
"Comme votre roi est en echec la piece a bouger est forcement cette derniere. Ou voulez vous la poser ?\n"); "Comme votre roi est en echec la piece a bouger est forcement cette derniere. Ou voulez vous la poser ?\n");
A = e.getCodes()[8-e.getRoiB1().getPosition().getY()][e.getRoiB1().getPosition().getX()-1]; A = e.getCodes()[8-e.getRoiB1().getPosition().getY()][e.getRoiB1().getPosition().getX()-1];
B = sc.nextLine(); B = sc.nextLine();
}while(e.verificationMouvement(j1, A, B) != true && e.getRoiB1().enEchecEtMat(e,e.getEchiquier()[8-e.getRoiB1().getPosition().getY()][e.getRoiB1().getPosition().getX()-1]) == true); }while(e.verificationMouvement(j1, A, B) != true && e.getRoiB1().enEchecEtMat(e,e.getEchiquier()[8-e.getRoiB1().getPosition().getY()][e.getRoiB1().getPosition().getX()-1]) == true);
} }
else { else {
do { do {
System.out.println( System.out.println(
"Quelle pièce voulez-vous déplacer ? Donnez le code correspondant de la pièce à déplacer(ex : A1).\n"); "Quelle pièce voulez-vous déplacer ? Donnez le code correspondant de la pièce à déplacer(ex : A1).\n");
A = sc.nextLine(); A = sc.nextLine();
System.out.println( if(A.isEmpty() || A.length() == 1) {
"À quel endroit la poser ? Donnez le code correspondant à l'endroit où poser la pièce.\n"); A = "Z99";
B = sc.nextLine(); }
}while(e.verificationMouvement(j1, A, B) != true );
cA = A.charAt(0);//ici on récupère le premier caractère du String
pA = A.charAt(1);//ici on récupère le second caratère
char cAl = Character.toLowerCase(cA); //ici on convertis un 'A' en 'a'
sA = "" + cAl + pA; //ici on concatène dans un nouveau string le a transformé avec le chiffre récupéré.
System.out.println(
"À quel endroit la poser ? Donnez le code correspondant à l'endroit où poser la pièce.\n");
B = sc.nextLine();
if(B.isEmpty()) {
B = "Z99";
}
}while(e.verificationMouvement(j1, sA, B) != true );
} }
@ -150,7 +193,7 @@ public class main {
// JOUEUR2 // JOUEUR2
System.out.println("Tour de " + j2.getNom() + " (Noir)\n"); System.out.println("Tour de " + j2.getNom() + "(" + j2.getCouleur() + ")\n");
//do { //do {
if (e.getRoiN1().enEchecEtMat(e,e.getEchiquier()[8-e.getRoiN1().getPosition().getY()][e.getRoiN1().getPosition().getX()-1]) == true) if (e.getRoiN1().enEchecEtMat(e,e.getEchiquier()[8-e.getRoiN1().getPosition().getY()][e.getRoiN1().getPosition().getX()-1]) == true)
@ -179,14 +222,22 @@ public class main {
} }
else { else {
do { do {
System.out.println( System.out.println(
"Quelle pièce voulez-vous déplacer ? Donnez le code correspondant de la pièce à déplacer(ex : A1).\n"); "Quelle pièce voulez-vous déplacer ? Donnez le code correspondant de la pièce à déplacer(ex : A1).\n");
A = sc.nextLine(); A = sc.nextLine();
System.out.println(
"À quel endroit la poser ? Donnez le code correspondant à l'endroit où poser la pièce.\n"); cA = A.charAt(0);//ici on récupère le premier caractère du String
B = sc.nextLine(); pA = A.charAt(1);//ici on récupère le second caratère
}while(e.verificationMouvement(j2, A, B) != true ); char cAl = Character.toLowerCase(cA); //ici on convertis un 'A' en 'a'
} sA = "" + cAl + pA; //ici on concatène dans un nouveau string le a transformé avec le chiffre récupéré.
System.out.println(
"À quel endroit la poser ? Donnez le code correspondant à l'endroit où poser la pièce.\n");
B = sc.nextLine();
}while(e.verificationMouvement(j2, sA, B) != true );
} // Tant que le mouvement n'est pas faisable on demande 2 coordonnées
// VERIF ECHECMAT // VERIF ECHECMAT