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

View File

@ -27,10 +27,18 @@ public class main {
// déclaration des joueurs
System.out.println("Entrez le nom du joueur 1 : ");
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 : ");
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)) {
choixPartie = -1;
}
@ -39,9 +47,12 @@ public class main {
String A; //coordonées de départ
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
while (choixPartie >= 1) {
Echiquier e = new Echiquier();
while (choixPartie == 1) {
@ -53,6 +64,9 @@ public class main {
System.out.println("3 = Aléatoire");
String choixP = sc.nextLine();
if(choixP.isEmpty()) {
choixP = "3";
}
if (choixP.equalsIgnoreCase("3")) {
int random = (int) (Math.random() * 2 + 1);
@ -78,6 +92,18 @@ public class main {
j1.setCouleur("Noir");
System.out.println("Le joueur " + j2.getNom() + " jouera les blancs et le joueur " + j1.getNom()
+ " 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;
} else {
@ -86,7 +112,7 @@ public class main {
}
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 {
@ -95,10 +121,10 @@ public class main {
/*JOUEUR1*/
System.out.println("\n" + "Tour de " + j1.getNom() + " (Blanc)\n");
System.out.println("\n" + "Tour de " + j1.getNom() + "(" + j1.getCouleur() + ")\n");
//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
{
@ -110,28 +136,45 @@ public class main {
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(j1, A, B) != true );
}
else if (e.getRoiB1().isRoiEchec() == true)
{
do
{
System.out.println(
"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];
B = sc.nextLine();
System.out.println(
"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];
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);
}
else {
do {
System.out.println(
"Quelle pièce voulez-vous déplacer ? Donnez le code correspondant de la pièce à déplacer(ex : A1).\n");
A = sc.nextLine();
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(j1, A, B) != true );
System.out.println(
"Quelle pièce voulez-vous déplacer ? Donnez le code correspondant de la pièce à déplacer(ex : A1).\n");
A = sc.nextLine();
if(A.isEmpty() || A.length() == 1) {
A = "Z99";
}
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
System.out.println("Tour de " + j2.getNom() + " (Noir)\n");
System.out.println("Tour de " + j2.getNom() + "(" + j2.getCouleur() + ")\n");
//do {
if (e.getRoiN1().enEchecEtMat(e,e.getEchiquier()[8-e.getRoiN1().getPosition().getY()][e.getRoiN1().getPosition().getX()-1]) == true)
@ -166,7 +209,7 @@ public class main {
B = sc.nextLine();
}while(e.verificationMouvement(j2, A, B) != true );
}
else if (e.getRoiN1().isRoiEchec())
{
do
@ -179,14 +222,22 @@ public class main {
}
else {
do {
System.out.println(
"Quelle pièce voulez-vous déplacer ? Donnez le code correspondant de la pièce à déplacer(ex : A1).\n");
A = sc.nextLine();
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, A, B) != true );
}
System.out.println(
"Quelle pièce voulez-vous déplacer ? Donnez le code correspondant de la pièce à déplacer(ex : A1).\n");
A = sc.nextLine();
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();
}while(e.verificationMouvement(j2, sA, B) != true );
} // Tant que le mouvement n'est pas faisable on demande 2 coordonnées
// VERIF ECHECMAT