SAE21_2021/CASE/main_ex.java
2022-04-29 12:04:55 +02:00

65 lines
1.9 KiB
Java

// Tom Monint et Clément Martins
// main_ex V4
// Classe ayant pour but d'être executer
//importons les packages necessaires
import java.awt.*;
import javax.swing.*;
public class main_ex{
public static void main(String[] Args){
// on initialise une fenettre
JFrame fenetre = new JFrame("Démineur");
int ligne=10;
int collonne=20;
int bombe=1;
fenetre.setLocation(0,0);
//on choisi une taille arbitraire
//nous utiliserons un gestionnaire GridLayout de dimensions choisi précédament
GridLayout grille = new GridLayout(ligne+1,collonne);
paintMenuJeu[] tabScore= new paintMenuJeu[3];
for(int i=0; i<collonne; i++){
paintMenuJeu menu= new paintMenuJeu(0, bombe);
menu.setPreferredSize(new Dimension(100,100));
if(i==1){
tabScore[0]=menu;
menu.setChoix(1);
}
if(i==2){
tabScore[1]=menu;
menu.setChoix(2);
}
if(i==3){
tabScore[2]=menu;
menu.setChoix(3);
}
if(i==collonne-1){
menu.setChoix(4);
menu.addMouseListener(new observateurSAV(menu, fenetre));
}
fenetre.add(menu);
}
fenetre.setLayout(grille);
// l'application ne se fermera que si on clique sur
fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
fenetre.setVisible(true);
// nous creons le tableau de Case qui représente l'etat du jeu
Case[][] tab = new Case[ligne][collonne];
// on ajoute a la fenetre toute les case (ligne*collonne)
for(int i=0; i<ligne; i++){
for(int t=0; t<collonne; t++){
tab[i][t]= new Case();
tab[i][t].setPreferredSize(new Dimension(50,50));
//nous ajoutons aussi a chaque case son observateur de case
tab[i][t].addMouseListener(new observateurCase(i, t, tab, tabScore));
fenetre.add(tab[i][t]);
}
}
//nous disposons les bombe dans le jeu
plateau.setAllBombe(bombe, ligne, collonne, tab);
//maitenant que les bombe sont mise nous pouvons modifier le nombre de voisin des cases
plateau.setAllVoisin(tab);
fenetre.pack();
}
}