Le système de grille a été ajouterr, la prochaine étape est l'interface graphique
This commit is contained in:
@@ -2,14 +2,14 @@ public class Case {
|
||||
|
||||
private boolean estMinee;
|
||||
private boolean estRevelee;
|
||||
private int Marqueur;
|
||||
private int marqueur;
|
||||
private int nbMinesautour;
|
||||
|
||||
public Case() {
|
||||
|
||||
this.estMinee = false;
|
||||
this.estRevelee = false;
|
||||
this.Marqueur = 0;
|
||||
this.marqueur = 0;
|
||||
this.nbMinesautour = 0;
|
||||
}
|
||||
|
||||
|
||||
+63
@@ -0,0 +1,63 @@
|
||||
import java.util.Random;
|
||||
|
||||
public class Grille {
|
||||
|
||||
private Case[][] grille;
|
||||
private int ligne,colonne;
|
||||
private Random generateur = new Random();
|
||||
|
||||
public Grille(int ligne,int colonne) {
|
||||
this.ligne = ligne;
|
||||
this.colonne = colonne;
|
||||
this.grille = new Case[ligne][colonne];
|
||||
for(int i =0;i<ligne;i++){
|
||||
for(int j =0;j<colonne;j++){
|
||||
this.grille[i][j] = new Case();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void placerMines(int nbMines){
|
||||
int randomLigne,randomColonne;
|
||||
for(int i=0;i<nbMines;i++){
|
||||
randomLigne = generateur.nextInt(ligne);
|
||||
randomColonne = generateur.nextInt(colonne);
|
||||
if (grille[randomLigne][randomColonne].getEstMinee() == true){
|
||||
i--; } else {
|
||||
grille[randomLigne][randomColonne].setEstMinee(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void compterMinesVoisines(int l, int c){
|
||||
int compteur = 0;
|
||||
for(int i = -1; i <= 1; i++){
|
||||
for(int j = -1; j <= 1; j++){
|
||||
int vL = l + i;
|
||||
int vC = c + j;
|
||||
if(vL >= 0 && vL < ligne && vC >= 0 && vC < colonne){
|
||||
if (grille[vL][vC].getEstMinee()) {
|
||||
compteur++;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
grille[l][c].setNbMinesautour(compteur);
|
||||
}
|
||||
|
||||
public void calculerToutesLesMines(){
|
||||
for(int i =0;i<ligne;i++){
|
||||
for(int j =0;j<colonne;j++){
|
||||
compterMinesVoisines(i,j);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,13 +1,16 @@
|
||||
Case.class : Case.java
|
||||
javac -implicit:none Case.java
|
||||
|
||||
Grille.class : Grille.java Case.class
|
||||
javac -implicit:none Grille.java
|
||||
|
||||
Quitter.class : Quitter.java
|
||||
javac -implicit:none Quitter.java
|
||||
|
||||
NouvellePartie.class : NouvellePartie.java Menu.class
|
||||
NouvellePartie.class : NouvellePartie.java Menu.class Grille.class
|
||||
javac -implicit:none NouvellePartie.java
|
||||
|
||||
Menu.class : Menu.java
|
||||
Menu.class : Menu.java NouvellePartie.class Quitter.class
|
||||
javac -implicit:none Menu.java
|
||||
|
||||
Demineur.class : Demineur.java Menu.class
|
||||
|
||||
@@ -24,10 +24,12 @@ public class Menu {
|
||||
|
||||
// Les bouton du Menu
|
||||
boutonNouvellePartie = new JButton("Nouvelle partie");
|
||||
boutonNouvellePartie.addActionListener(new NouvellePartie(this));
|
||||
panneauMenu.add(boutonNouvellePartie);
|
||||
boutonReprendre = new JButton("Reprendre");
|
||||
panneauMenu.add(boutonReprendre);
|
||||
boutonQuitter = new JButton("Quitter");
|
||||
boutonQuitter.addActionListener(new Quitter());
|
||||
panneauMenu.add(boutonQuitter);
|
||||
|
||||
fenetre.add(panneauMenu, BorderLayout.CENTER);
|
||||
|
||||
Reference in New Issue
Block a user