Commit b4909988 authored by Tristan MAISONNEUVE's avatar Tristan MAISONNEUVE
Browse files

Fenetre Connexion add envoye pseudo

parent 1bd44450
...@@ -96,66 +96,73 @@ public class FenetreConnexion extends JFrame { ...@@ -96,66 +96,73 @@ public class FenetreConnexion extends JFrame {
o++; o++;
boutton.getButton().setBorder(BorderFactory.createLineBorder(Color.BLACK)); //On set les Border en noir boutton.getButton().setBorder(BorderFactory.createLineBorder(Color.BLACK)); //On set les Border en noir
boutton.getButton().addActionListener(new ActionListener() { //On créé l'action Listener qui va nous permettre de créer nos bateaux. //On créé l'action Listener qui va nous permettre de créer nos bateaux.
@Override boutton.getButton().addActionListener(e -> {
public void actionPerformed(ActionEvent e) { if(co[0]==null){ //Si quand on clique sur un Boutton et que co[0] est null alors c'est la première coordonées d'un bateaux
if(co[0]==null){ //Si quand on clique sur un Boutton et que co[0] est null alors c'est la première coordonées d'un bateaux co[0]=boutton.getString(); // Donc on fait en sorte que la string de la coordonéé du bouton sur lequel on a cliqué soit assigné à co[0]
co[0]=boutton.getString(); // Donc on fait en sorte que la string de la coordonéé du bouton sur lequel on a cliqué soit assigné à co[0] boutton.getButton().setBackground(Color.LIGHT_GRAY); // On colore le bouton en gris pour faire en sorte de se répérer sur la grille
boutton.getButton().setBackground(Color.LIGHT_GRAY); // On colore le bouton en gris pour faire en sorte de se répérer sur la grille } else { // Si co[0] n'est pas null alors cela veut dire que l'utilisateur clique pour la deuxième fois.].
} else { // Si co[0] n'est pas null alors cela veut dire que l'utilisateur clique pour la deuxième fois.]. co[1] = boutton.getString(); //donc on assigne les coordonées du deuxième click à co[1
co[1] = boutton.getString(); //donc on assigne les coordonées du deuxième click à co[1 final CreationB c = new CreationB(co[0],co[1],pays); //à partir de la on crée une classe qui va nous permettre de tester la taille des coordonées por créer le bon bateau.
final CreationB c = new CreationB(co[0],co[1],pays); //à partir de la on crée une classe qui va nous permettre de tester la taille des coordonées por créer le bon bateau. try {if(c.TestCreation()!=null){ //Si le résultat du return de test création n'est pas null
try {if(c.TestCreation()!=null){ //Si le résultat du return de test création n'est pas null if(flotte.add(c.TestCreation())==0){ //Si le résultat du Test Création est 0 alors le bateaux a bien été ajouté.
if(flotte.add(c.TestCreation())==0){ //Si le résultat du Test Création est 0 alors le bateaux a bien été ajouté. ShipCategory s = c.TestCreation().gettheCategory(); //Maintenant on récupère la catégorie du Bateau qu'on vient de créer
ShipCategory s = c.TestCreation().gettheCategory(); //Maintenant on récupère la catégorie du Bateau qu'on vient de créer if(s==ShipCategory.SUBMARINE){
if(s==ShipCategory.SUBMARINE){ pays[0]--;
pays[0]--; } if (s==ShipCategory.DESTROYER) {
} if (s==ShipCategory.DESTROYER) { pays[1]--;
pays[1]--; } if (s==ShipCategory.CRUISER) { //Ici on va faire en sorte que notre liste de bateaux décrémente en fonction du type de bateaux qu'on a créé
} if (s==ShipCategory.CRUISER) { //Ici on va faire en sorte que notre liste de bateaux décrémente en fonction du type de bateaux qu'on a créé pays[2]--; //C'est très important pour compter le nombre de bateaux restant pour l'utilisateurs.
pays[2]--; //C'est très important pour compter le nombre de bateaux restant pour l'utilisateurs. } if (s==ShipCategory.BATTLESHIP) {
} if (s==ShipCategory.BATTLESHIP) { pays[3]--;
pays[3]--; } if (s==ShipCategory.AIRCRAFT_CARRIER) {
} if (s==ShipCategory.AIRCRAFT_CARRIER) { pays[4]--;
pays[4]--; }
} System.out.println(Arrays.toString(pays)); //On print à l'utilisateur ce qui lui reste comme Bateau
System.out.println(Arrays.toString(pays)); //On print à l'utilisateur ce qui lui reste comme Bateau System.out.println(flotte.getShips()); //On print à l'utilisateur sa flotte.
System.out.println(flotte.getShips()); //On print à l'utilisateur sa flotte. List<ICoord> listec = c.TestCreation().getCoords(); //on créé une liste de coordonée qui va récup les coordonées du bateaux qu'on vient de créer
List<ICoord> listec = c.TestCreation().getCoords(); //on créé une liste de coordonée qui va récup les coordonées du bateaux qu'on vient de créer final Color randomColor = new Color((int)(Math.random() * (255-50)),(int)(Math.random() * (255-50)),(int)(Math.random() * (255-50))); //on initialise une couleur rgb aléatoire.
final Color randomColor = new Color((int)(Math.random() * (255-50)),(int)(Math.random() * (255-50)),(int)(Math.random() * (255-50))); //on initialise une couleur rgb aléatoire. for(int i1 = 0; i1 <100; i1++){ //On fait un parcours de la liste de boutons pour savoir ou il faut colorer les cases correspondant au bateau qu'on a créé.
for(int i=0;i<100;i++){ //On fait un parcours de la liste de boutons pour savoir ou il faut colorer les cases correspondant au bateau qu'on a créé. if(listec.contains(new Coord(bouttons[i1].getString()))){ //on vérifie si le bouton sur lequel on est correspond à un de ceux de la liste de coordonées du bateaux.
if(listec.contains(new Coord(bouttons[i].getString()))){ //on vérifie si le bouton sur lequel on est correspond à un de ceux de la liste de coordonées du bateaux. bouttons[i1].getButton().setBackground(randomColor); //maintenant on fait en sorte que le bateau soit de la couleur aléatoire initialisé plus tôt
bouttons[i].getButton().setBackground(randomColor); //maintenant on fait en sorte que le bateau soit de la couleur aléatoire initialisé plus tôt bouttons[i1].getButton().setEnabled(false); // Maintenant on désactive les bouttons sur lesquels sont positionnés les bateaux.
bouttons[i].getButton().setEnabled(false); // Maintenant on désactive les bouttons sur lesquels sont positionnés les bateaux.
}
}
} else if(flotte.add(c.TestCreation())==-2) { //Si le résultat de la création du bateaux est -2 cela signigie qu'on dépasse le seuil de case pour la flotte.
JOptionPane.showMessageDialog(null, "Flotte déja pleine"); // donc on fait apparaitre un pop-up
for(int i=0;i<100;i++){ //On fait un parcours de la liste de boutons pour pouvoir remettre une couleur blanche sur le premier bouton sur lequel on a cliqué
if(bouttons[i].getString().equals(co[0])){
bouttons[i].getButton().setBackground(Color.WHITE);
}
}
}else{ //si la réponse est autre que 0 ou -2 alors cela veut dire que le bateaux qu'on a créé chevauche un autre bateaux déja créé.
JOptionPane.showMessageDialog(null, "les bateux ne doivent pas se chevaucher");
for(int i=0;i<100;i++){ //On fait un parcours de la liste
if(bouttons[i].getString().equals(co[0])){ //de boutons pour pouvoir remettre une
bouttons[i].getButton().setBackground(Color.WHITE); //couleur blanche sur le premier bouton sur lequel
} // on a cliqué.
} }
} }
} else { //Ce else réfere au moment où l'utilisateur essaye de créer un bateaux en diagonale. } else if(flotte.add(c.TestCreation())==-2) { //Si le résultat de la création du bateaux est -2 cela signigie qu'on dépasse le seuil de case pour la flotte.
for(int i=0;i<100;i++){ JOptionPane.showMessageDialog(null, "Flotte déja pleine"); // donc on fait apparaitre un pop-up
if(bouttons[i].getString().equals(co[0])){ for(int i1 = 0; i1 <100; i1++){ //On fait un parcours de la liste de boutons pour pouvoir remettre une couleur blanche sur le premier bouton sur lequel on a cliqué
bouttons[i].getButton().setBackground(Color.WHITE); if(bouttons[i1].getString().equals(co[0])){
bouttons[i1].getButton().setBackground(Color.WHITE);
} }
} }
co[0]=null; // on réinitialise la première coordonée. }else{ //si la réponse est autre que 0 ou -2 alors cela veut dire que le bateaux qu'on a créé chevauche un autre bateaux déja créé.
JOptionPane.showMessageDialog(null, "les bateux ne doivent pas se chevaucher");
for(int i1 = 0; i1 <100; i1++){ //On fait un parcours de la liste
if(bouttons[i1].getString().equals(co[0])){ //de boutons pour pouvoir remettre une
bouttons[i1].getButton().setBackground(Color.WHITE); //couleur blanche sur le premier bouton sur lequel
} // on a cliqué.
}
}
} else { //Ce else réfere au moment où l'utilisateur essaye de créer un bateaux en diagonale.
for(int i1 = 0; i1 <100; i1++){
if(bouttons[i1].getString().equals(co[0])){
bouttons[i1].getButton().setBackground(Color.WHITE);
}
} }
} catch (CoordsBadShipException coordsBadShipException) {coordsBadShipException.printStackTrace();} catch (BadCoordException badCoordException) {badCoordException.printStackTrace();} co[0]=null; // on réinitialise la première coordonée.
}
} catch (CoordsBadShipException | BadCoordException coordsBadShipException) {coordsBadShipException.printStackTrace();}
co[0]=null; //ici on réinitialise les deux coordonées après avoir créé un bateaux. co[0]=null; //ici on réinitialise les deux coordonées après avoir créé un bateaux.
co[1]=null; co[1]=null;
if (flotte.isFrenchConfiguration()){
if(flotte.isComplete()){
envoyepseudo.setEnabled(true);
}
} else {
if (flotte.isComplete()){
envoyepseudo.setEnabled(true);
}
} }
} }
}); });
...@@ -214,15 +221,12 @@ public class FenetreConnexion extends JFrame { ...@@ -214,15 +221,12 @@ public class FenetreConnexion extends JFrame {
principal.add(est,BorderLayout.EAST); principal.add(est,BorderLayout.EAST);
rejoindre.addActionListener(new ActionListener() { rejoindre.addActionListener(e -> {
@Override PremiereFenetre.close();
public void actionPerformed(ActionEvent e) { FenetreJeux fJeux = new FenetreJeux("yolo");
PremiereFenetre.close(); fJeux.setPreferredSize(new Dimension(700, 700));
FenetreJeux fJeux = new FenetreJeux("yolo"); fJeux.pack();
fJeux.setPreferredSize(new Dimension(700, 700)); fJeux.setVisible(true);
fJeux.pack();
fJeux.setVisible(true);
}
}); });
...@@ -243,6 +247,7 @@ public class FenetreConnexion extends JFrame { ...@@ -243,6 +247,7 @@ public class FenetreConnexion extends JFrame {
france.addActionListener(new ActionListener() { france.addActionListener(new ActionListener() {
@Override @Override
public void actionPerformed(ActionEvent e) { public void actionPerformed(ActionEvent e) {
envoyepseudo.setEnabled(false);
france.setEnabled(false); france.setEnabled(false);
belgique.setEnabled(true); belgique.setEnabled(true);
textePays.setText("Bateau de la france:\n1 porte-avions, 1 cuirassé\n2 croiseurs, 2 Torpilleur, 1 Sous-marins"); textePays.setText("Bateau de la france:\n1 porte-avions, 1 cuirassé\n2 croiseurs, 2 Torpilleur, 1 Sous-marins");
...@@ -259,6 +264,7 @@ public class FenetreConnexion extends JFrame { ...@@ -259,6 +264,7 @@ public class FenetreConnexion extends JFrame {
belgique.addActionListener(new ActionListener() { belgique.addActionListener(new ActionListener() {
@Override @Override
public void actionPerformed(ActionEvent e) { public void actionPerformed(ActionEvent e) {
envoyepseudo.setEnabled(false);
france.setEnabled(true); france.setEnabled(true);
belgique.setEnabled(false); belgique.setEnabled(false);
textePays.setText("Bateau de la france\n1 cuirassé, 2 croiseurs\n3 Torpilleur, 4 Sous-marins"); textePays.setText("Bateau de la france\n1 cuirassé, 2 croiseurs\n3 Torpilleur, 4 Sous-marins");
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment