This commit is contained in:
martins 2022-05-09 16:19:50 +02:00
parent 4d37f44a0b
commit 25a6625637
7 changed files with 19 additions and 16 deletions

Binary file not shown.

View File

@ -42,7 +42,7 @@ public class observateurButtonEtText implements ActionListener {
} }
} }
if(this.fonction==2){ if(this.fonction==2){
if(this.plat.getLigne()!=-1 && this.plat.getLigne()!=-1 && this.plat.getBombe()!=-1){ if(this.plat.getLigne()!=-1 && this.plat.getCollonne()!=-1 && this.plat.getBombe()!=-1){
this.plat.newGame(); this.plat.newGame();
} }
} }

Binary file not shown.

View File

@ -20,6 +20,7 @@ public class observateurSAV implements MouseListener{
plat.save(); plat.save();
} }
if(this.fonction==true){ if(this.fonction==true){
plat= new plateau(plat.getFenetre());
plat.menuChoixTypePartie(); plat.menuChoixTypePartie();
} }
} }

Binary file not shown.

View File

@ -312,13 +312,19 @@ public class plateau{
this.fenetre.setVisible(true); this.fenetre.setVisible(true);
//on ajoute son observateur (pour savegarder la partie si on ferme la fenetre) //on ajoute son observateur (pour savegarder la partie si on ferme la fenetre)
this.fenetre.addWindowListener(new observateurFenetre(this)); this.fenetre.addWindowListener(new observateurFenetre(this));
this.fenetre.setBackground(new Color(0,0,0));
JPanel panJeu = new JPanel();
JPanel panMenu = new JPanel();
panJeu.setBackground(new Color(0,0,0));
panMenu.setBackground(new Color(0,0,0));
//on met un gestionaires de mise en page grille avec le nombre de ligne+1 (pour le menu en haut) et le nombre de collonne //on met un gestionaires de mise en page grille avec le nombre de ligne+1 (pour le menu en haut) et le nombre de collonne
this.fenetre.setLayout(new GridLayout(this.ligne+1,this.collonne)); panJeu.setLayout(new GridLayout(this.ligne,this.collonne));
panMenu.setLayout(new GridLayout(1, 7));
//on met en place le menu du haut et donc toute la première ligne //on met en place le menu du haut et donc toute la première ligne
for(int i=0; i<collonne; i++){ for(int i=0; i<10; i++){
paintMenuJeu menu= new paintMenuJeu(0, score, bombe); paintMenuJeu menu= new paintMenuJeu(0, score, bombe);
//nous mettons des dimensions convenable pour des Case //nous mettons des dimensions convenable pour des Case
menu.setPreferredSize(new Dimension(100,100)); menu.setPreferredSize(new Dimension(50,50));
//les 3 premières case serons consacrés au score //les 3 premières case serons consacrés au score
if(i==0){ if(i==0){
this.tabScore[0]=menu; this.tabScore[0]=menu;
@ -333,7 +339,7 @@ public class plateau{
menu.setChoix(3); menu.setChoix(3);
} }
//et la derniere au logo //et la derniere au logo
if(i==collonne-1){ if(i==9){
menu.setChoix(4); menu.setChoix(4);
this.setLogo(menu); this.setLogo(menu);
observateurSAV observateur=new observateurSAV(menu, this); observateurSAV observateur=new observateurSAV(menu, this);
@ -341,15 +347,17 @@ public class plateau{
this.setObservateur(observateur); this.setObservateur(observateur);
} }
//sinon le composant sera juste sobre //sinon le composant sera juste sobre
fenetre.add(menu); panMenu.add(menu);
} }
//on ajoute ensuite toutes les Case a la fenetre //on ajoute ensuite toutes les Case a la fenetre
for(int i=0; i<ligne; i++){ for(int i=0; i<ligne; i++){
for(int t=0;t<collonne; t++){ for(int t=0;t<collonne; t++){
this.fenetre.add(this.tableau[i][t]); panJeu.add(this.tableau[i][t]);
this.tableau[i][t].addMouseListener(new observateurCase(i, t, this.tableau, this)); this.tableau[i][t].addMouseListener(new observateurCase(i, t, this.tableau, this));
} }
} }
this.fenetre.add(panMenu, BorderLayout.NORTH);
this.fenetre.add(panJeu, BorderLayout.CENTER);
//on ajuste la taille de la fenetre a son contenu //on ajuste la taille de la fenetre a son contenu
this.fenetre.pack(); this.fenetre.pack();
} }
@ -360,6 +368,7 @@ public class plateau{
//créons une nouvelle //créons une nouvelle
this.fenetre= new JFrame("démineur"); this.fenetre= new JFrame("démineur");
this.fenetre.setLocation(0,0); this.fenetre.setLocation(0,0);
this.fenetre.setSize(1600, 1000);
this.fenetre.setVisible(true); this.fenetre.setVisible(true);
this.fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//nous utiliserons un gestionnaires avec 27 ligne(de 4 a 30 ligne/collonne) et 3 collonne //nous utiliserons un gestionnaires avec 27 ligne(de 4 a 30 ligne/collonne) et 3 collonne
@ -374,14 +383,12 @@ public class plateau{
//aligment Central plus estetique //aligment Central plus estetique
texte1.setHorizontalAlignment(JLabel.CENTER); texte1.setHorizontalAlignment(JLabel.CENTER);
texte2.setHorizontalAlignment(JLabel.CENTER); texte2.setHorizontalAlignment(JLabel.CENTER);
JTextField nbombe = new JTextField("0"); JTextField nbombe = new JTextField("????");
//nous ajoutons les Case //nous ajoutons les Case
for(int i=0; i<27; i++){ for(int i=0; i<27; i++){
//creons les composant //creons les composant
paintChoix pinceau = new paintChoix(i, 1); paintChoix pinceau = new paintChoix(i, 1);
paintChoix pinceau2 = new paintChoix(i, 2); paintChoix pinceau2 = new paintChoix(i, 2);
pinceau.setPreferredSize(new Dimension(700,100));
pinceau2.setPreferredSize(new Dimension(500, 100));
if(i==0){ if(i==0){
//si c'est la première Case alors ça sera la première pour sa ligne //si c'est la première Case alors ça sera la première pour sa ligne
premier=pinceau; premier=pinceau;
@ -437,8 +444,6 @@ public class plateau{
//enfin nous ajoutons sur la 3ième collonne le 2ième paintChoix //enfin nous ajoutons sur la 3ième collonne le 2ième paintChoix
this.fenetre.add(pinceau2); this.fenetre.add(pinceau2);
} }
//nous ajustons la fenetre a la taille de son contenue volontairement grand qui poussera sûrment un plein ecran (2700x2100)
this.fenetre.pack();
} }
//-----------------------------------------> Fonction pour l'affichage du premier menu (nouvelle partie/reprendrePartie/quitter) <--------------------- //-----------------------------------------> Fonction pour l'affichage du premier menu (nouvelle partie/reprendrePartie/quitter) <---------------------
public void menuChoixTypePartie(){ public void menuChoixTypePartie(){
@ -446,6 +451,7 @@ public class plateau{
this.fenetre.dispose(); this.fenetre.dispose();
this.fenetre= new JFrame("démineur"); this.fenetre= new JFrame("démineur");
this.fenetre.setLocation(0,0); this.fenetre.setLocation(0,0);
this.fenetre.setSize(1600, 1000);
this.fenetre.setVisible(true); this.fenetre.setVisible(true);
this.fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.fenetre.setLayout(new FlowLayout()); this.fenetre.setLayout(new FlowLayout());
@ -461,13 +467,9 @@ public class plateau{
pan1.add(nouveau); pan1.add(nouveau);
pan2.add(reprende); pan2.add(reprende);
pan3.add(quitter); pan3.add(quitter);
pan1.setPreferredSize(new Dimension(800, 800));
pan2.setPreferredSize(new Dimension(800, 800));
pan3.setPreferredSize(new Dimension(800, 800));
this.fenetre.add(pan1); this.fenetre.add(pan1);
this.fenetre.add(pan2); this.fenetre.add(pan2);
this.fenetre.add(pan3); this.fenetre.add(pan3);
this.fenetre.pack();
//nous ajustons la fenetre a la taille de son contenue volontairement grand qui poussera sûrment un plein ecran (2000x2000) //nous ajustons la fenetre a la taille de son contenue volontairement grand qui poussera sûrment un plein ecran (2000x2000)
} }
} }

Binary file not shown.