début documentation
This commit is contained in:
		| @@ -1,12 +1,37 @@ | ||||
| import javax.swing.*; | ||||
| import java.awt.*; | ||||
|  | ||||
| /** | ||||
|  * La classe <code>Banniere</code> affiche l'état de la partie, | ||||
|  * gère la sauvegarde la victoire et la défaite | ||||
|  *   | ||||
|  * @version 1.1 | ||||
|  * @author Kayyissa Haïssous | ||||
|  */ | ||||
| public class Banniere extends JPanel { | ||||
| 	/** | ||||
|     * fenetre de Jeu | ||||
|     */ | ||||
| 	private FrameJeu fenetre; | ||||
| 	/** | ||||
|     * fenetre du menu lié | ||||
|     */ | ||||
| 	private FrameMenu menu; | ||||
| 	/** | ||||
|     * Bouton qui permet de sauver et quitter | ||||
|     */ | ||||
| 	private JButton save; | ||||
| 	/** | ||||
|     * le JLabel qui affiche le nombre de mines restantes | ||||
|     */ | ||||
| 	private JLabel mines; | ||||
| 	//	Définition du constructeur | ||||
| 	 | ||||
| 	/** | ||||
|     * Constructeur qui sert à la création de la bannière et l'ajout du bouton sauver et quitter | ||||
|     * @param mines le nombre de mines dans la partie | ||||
| 	* @param fenetre la fenêtre de jeu | ||||
| 	* @param menu la fenêtre de menu rattachée | ||||
| 	* @param grille la grille de jeu | ||||
|     */ | ||||
| 	public Banniere(int mines, FrameJeu fenetre, FrameMenu menu, Grille grille) { | ||||
| 		super(); | ||||
| 		this.fenetre=fenetre; | ||||
| @@ -18,7 +43,6 @@ public class Banniere extends JPanel { | ||||
| 		this.setLayout(new BorderLayout()); | ||||
|  | ||||
| 		//	Compteur de mines restantes | ||||
|  | ||||
| 		this.mines= new JLabel(); | ||||
| 		this.add(this.mines, BorderLayout.NORTH); | ||||
|  | ||||
| @@ -28,13 +52,18 @@ public class Banniere extends JPanel { | ||||
| 		this.add(this.save, BorderLayout.EAST); | ||||
| 	} | ||||
|  | ||||
| 	//	Méthode pour afficher le nombre de mines restantes | ||||
| 	/** | ||||
|     * Méthode pour afficher le nombre de mines restantes | ||||
|     * @param minesLeft le nombre de mines restantes | ||||
|     */ | ||||
| 	public void setMinesLeft(int minesLeft) { | ||||
| 		this.mines.setText("Mines restantes : "+Integer.toString(minesLeft)); | ||||
| 		this.repaint(); | ||||
| 	} | ||||
|  | ||||
| 	//	Méthode pour indiquer au joueur sa Victoire | ||||
| 	/** | ||||
|     * Méthode pour indiquer au joueur sa Victoire | ||||
|     */ | ||||
| 	public void setVictoire() { | ||||
| 		remove(this.save); | ||||
| 		JLabel victoire = new JLabel("Victoire !   Retour au menu..."); | ||||
| @@ -46,7 +75,9 @@ public class Banniere extends JPanel { | ||||
| 		timerMenu.start(); | ||||
| 	} | ||||
|  | ||||
| 	//	Méthode pour indiquer au joueur sa Défaite | ||||
| 	/** | ||||
|     * Méthode pour indiquer au joueur sa Défaite | ||||
|     */ | ||||
| 	public void setDefaite() { | ||||
| 		remove(this.save); | ||||
| 		JLabel defaite = new JLabel("Défaite !   Retour au menu..."); | ||||
|   | ||||
| @@ -29,7 +29,6 @@ public class Case extends JPanel { | ||||
|  | ||||
| 	//	Méthode qui permet de montrer la case, et fait perdre si elle est minée | ||||
| 	public void setVisible(){ | ||||
|  | ||||
| 		// On vérfie que la case n'est pas déjà visible | ||||
| 		if (!this.visible){ | ||||
| 			this.visible = true; | ||||
|   | ||||
| @@ -1,10 +1,29 @@ | ||||
| import java.awt.event.*; | ||||
| /** | ||||
|  * La classe <code>Chargement</code> implémente l'interface ActionListener | ||||
|  * elle permet de lancer le chargement d'une partie sauvegardée | ||||
|  *   | ||||
|  * @version 1.1 | ||||
|  * @author Kayyissa Haïssous | ||||
|  */ | ||||
| public class Chargement implements ActionListener { | ||||
|     /** | ||||
|     * Fenetre du menu. | ||||
|     */ | ||||
|     private FrameMenu menu; | ||||
|  | ||||
|     /** | ||||
|     * Constructeur qui ne sert qu'à la création de la constante menu | ||||
|     * @param menu la fenêtre de menu | ||||
|     */ | ||||
|     public Chargement(FrameMenu menu){ | ||||
|         this.menu=menu; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|     * Méthode qui doit être rédigée | ||||
|     * @param e l'évenement sur le bouton | ||||
|     */ | ||||
|     @Override | ||||
|     public void actionPerformed(ActionEvent e) { | ||||
|         this.menu.setVisible(false); | ||||
|   | ||||
| @@ -1,10 +1,25 @@ | ||||
| import javax.swing.*; | ||||
| import java.awt.*; | ||||
|  | ||||
| // Cette classe à pour but d'afficher un menu et de réagir aux directives de l'utilisateur (lancer le jeu, le quitter...) | ||||
| /** | ||||
|  * La classe <code>FrameJeu</code> génère une grille de jeu | ||||
|  *   | ||||
|  * @version 1.1 | ||||
|  * @author Kayyissa Haïssous | ||||
|  */ | ||||
| public class FrameJeu extends JFrame{ | ||||
| 	/** | ||||
|     * grille de jeu | ||||
|     */ | ||||
| 	private Grille grille; | ||||
|  | ||||
| 	/** | ||||
|     * Constructeur qui sert à géréner une nouvelle grille | ||||
|     * @param lignes le nombre de lignes | ||||
| 	* @param colonnes le nombre de colonnes | ||||
| 	* @param mines le nombre de mines | ||||
| 	* @param menu la fenêtre du menu rattaché à la partie | ||||
|     */ | ||||
| 	public FrameJeu(int lignes, int colonnes, int mines, FrameMenu menu) { | ||||
| 		super(); | ||||
| 		//	Création d'une grille pour une nouvelle partie | ||||
| @@ -13,13 +28,24 @@ public class FrameJeu extends JFrame{ | ||||
|  | ||||
| 	} | ||||
|  | ||||
| 	//	Génération d'une grille à partir de la sauvegarde | ||||
| 	/** | ||||
|     * Constructeur qui sert à charger la grille d'une ancienne partie | ||||
|     * @param lignes le nombre de lignes | ||||
| 	* @param colonnes le nombre de colonnes | ||||
| 	* @param donnees la sauvegarde | ||||
| 	* @param mines le nombre de mines | ||||
| 	* @param menu la fenêtre du menu rattaché à la partie | ||||
|     */ | ||||
| 	public FrameJeu (int lignes, int colonnes, SaveManager.SaveData donnees, int mines, FrameMenu menu){ | ||||
| 		super(); | ||||
| 		//	Génération d'une grille à partir de la sauvegarde | ||||
| 		this.grille=new Grille(lignes,colonnes,donnees,mines,this, menu); | ||||
| 		MiseEnPage(); | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
|     * Méthode qui sert à créer la fenêtre avec ses élements | ||||
|     */ | ||||
| 	public void MiseEnPage(){ | ||||
| 		 | ||||
| 		// On récupère les dimensions de l'écran pour adapter la taille par défaut de notre fenêtre | ||||
|   | ||||
| @@ -2,20 +2,57 @@ import javax.swing.*; | ||||
| import java.awt.event.*; | ||||
| import java.io.File; | ||||
| import java.awt.*; | ||||
|  | ||||
| // Cette classe à pour but d'afficher un menu et de réagir aux directives de l'utilisateur (lancer le jeu, le quitter...) | ||||
| /** | ||||
|  * La classe <code>FrameMenu</code> correspond à une fenêtre de menu, | ||||
|  * elle l'affiche et régit aux directives de l'utilisateur (Jouer, Charger, Quitter) | ||||
|  * @version 1.1 | ||||
|  * @author Kayyissa Haïssous | ||||
|  */ | ||||
| public class FrameMenu extends JFrame{ | ||||
| 	/** | ||||
|    	* Nombre de lignes pour la partie à lancer | ||||
| 	*/ | ||||
| 	private int lignes; | ||||
| 	/** | ||||
|    	* Nombre de colonnes pour la partie à lancer | ||||
| 	*/ | ||||
| 	private int colonnes; | ||||
| 	/** | ||||
|    	* Nombre de mines pour la partie à lancer | ||||
| 	*/ | ||||
| 	private int mines; | ||||
| 	/** | ||||
|    	* JSlider qui permet de choisir le nombre de lignes | ||||
| 	*/ | ||||
| 	private JSlider sliderLignes; | ||||
| 	/** | ||||
|    	* JSlider qui permet de choisir le nombre de colonnes | ||||
| 	*/ | ||||
| 	private JSlider sliderColonnes; | ||||
| 	/** | ||||
|    	* JSlider qui permet de choisir le nombre de mines | ||||
| 	*/ | ||||
| 	private JSlider sliderMines; | ||||
| 	/** | ||||
|    	* JLabel qui permet d'afficher en temps réel le nombre de lignes | ||||
| 	*/ | ||||
| 	private JLabel showLines; | ||||
| 	/** | ||||
|    	* JLabel qui permet d'afficher en temps réel le nombre de colonnes | ||||
| 	*/ | ||||
| 	private JLabel showColumns; | ||||
| 	/** | ||||
|    	* JLabel qui permet d'afficher en temps réel le nombre de mines | ||||
| 	*/ | ||||
| 	private JLabel showMines; | ||||
| 	/** | ||||
|    	* JButton pour charger une éventuelle sauvegarde | ||||
| 	*/ | ||||
| 	private JButton charger; | ||||
|  | ||||
| 	/** | ||||
|     * Constructeur destiné à la création et l'affichage de la fenêtre de menu | ||||
| 	*/ | ||||
| 	public FrameMenu() { | ||||
| 		super(); | ||||
|  | ||||
| @@ -37,7 +74,7 @@ public class FrameMenu extends JFrame{ | ||||
| 		titre.setBounds((frameSize.width/3), frameSize.height/15,frameSize.width/2,frameSize.height*2/15); | ||||
| 		this.add(titre); | ||||
| 		 | ||||
| 		//	On créer les sliders et les JLabel qui afficheront leur valeur | ||||
| 		//	On créer les Jsliders et les JLabel qui afficheront leur valeur | ||||
| 		this.sliderLignes = new JSlider(4,30,20); | ||||
| 		this.sliderColonnes = new JSlider(4,30,25); | ||||
| 		this.sliderMines = new JSlider(1,900, 50); | ||||
| @@ -70,6 +107,7 @@ public class FrameMenu extends JFrame{ | ||||
| 		this.add(showColumns); | ||||
| 		this.add(showMines); | ||||
| 		 | ||||
| 		//	On créer les boutons Jouer, quitter et si une save existe, charger | ||||
| 		JButton newGame = new JButton("Jouer"); | ||||
| 		newGame.addActionListener(new NewGameListener(this)); | ||||
|  | ||||
| @@ -77,7 +115,7 @@ public class FrameMenu extends JFrame{ | ||||
| 		this.add(newGame); | ||||
|  | ||||
| 		JButton exit = new JButton("Quitter"); | ||||
| 		exit.addActionListener(new ActionListener(){ | ||||
| 		exit.addActionListener(new ActionListener() { | ||||
| 			public void actionPerformed(ActionEvent e) { | ||||
| 				System.exit(0); | ||||
| 			} | ||||
| @@ -98,8 +136,12 @@ public class FrameMenu extends JFrame{ | ||||
| 	    this.setVisible(true); | ||||
| 	} | ||||
|  | ||||
| 	//	Méthode pour récupérer les valeurs des paramètres et les afficher à l'écran | ||||
| 	public void setSettings(int settingToSet, int settingValue){ | ||||
| 	/** | ||||
|     * Méthode pour récupérer les valeurs des paramètres et les afficher à l'écran | ||||
| 	* @param settingToSet Le paramètre qui doit être changé | ||||
| 	* @param settingValue La nouvelle valeur à donner au paramètre | ||||
|     */ | ||||
| 	public void setSettings(int settingToSet, int settingValue) { | ||||
| 		if (settingToSet==0){ | ||||
| 			this.lignes=settingValue; | ||||
| 			showLines.setText("Lignes : "+settingValue); | ||||
| @@ -113,8 +155,11 @@ public class FrameMenu extends JFrame{ | ||||
| 		this.sliderMines.setMaximum(this.colonnes*this.lignes); | ||||
|     } | ||||
|  | ||||
| 	// 	Methode pour connaître les paramètres de la partie | ||||
| 	public int[] getSettings(){ | ||||
| 	/** | ||||
| 	* Renvoie les valeurs des paramètres | ||||
|    	* @return les paramètres pour une nouvelle partie | ||||
|     */ | ||||
| 	public int[] getSettings() { | ||||
| 		int[] settings = new int[3]; | ||||
| 		settings[0]=this.lignes; | ||||
| 		settings[1]=this.colonnes; | ||||
| @@ -122,8 +167,10 @@ public class FrameMenu extends JFrame{ | ||||
| 		return settings; | ||||
| 	} | ||||
|  | ||||
| 	//	Methode pour supprimer le bouton charger après un chargement | ||||
| 	public void deleteCharger(){ | ||||
| 	/** | ||||
|     * Méthode pour supprimer le bouton charger après avoir chargé une partie | ||||
|     */ | ||||
| 	public void deleteCharger() { | ||||
| 		this.remove(this.charger); | ||||
| 	} | ||||
| } | ||||
							
								
								
									
										41
									
								
								Grille.java
									
									
									
									
									
								
							
							
						
						
									
										41
									
								
								Grille.java
									
									
									
									
									
								
							| @@ -15,8 +15,6 @@ public class Grille extends JPanel{ | ||||
| 	private boolean enJeu; | ||||
| 	private FrameJeu fenetre; | ||||
|  | ||||
| 	// TODO : Recréer un tableau avec les cases minees | ||||
|  | ||||
|     // Définition du constructeur qui correspond à une nouvelle grille de jeu | ||||
|     public Grille(int lignes, int colonnes, int mines, FrameJeu fenetre, FrameMenu menu){ | ||||
| 		super(); | ||||
| @@ -85,7 +83,6 @@ public class Grille extends JPanel{ | ||||
| 		this.lignes=lignes; | ||||
| 		this.taille=lignes*colonnes; | ||||
| 		this.minesLeft=mines; | ||||
| 		this.mines=mines; | ||||
| 		this.enJeu=true; | ||||
| 		this.fenetre=fenetre; | ||||
|  | ||||
| @@ -102,33 +99,38 @@ public class Grille extends JPanel{ | ||||
| 		//	On initialise un plateau de cases | ||||
| 		GenererPlateau(caseSize); | ||||
|  | ||||
| 		 | ||||
| 		//	On prépare un tableau pour y placer les cases minées | ||||
| 		//	On créer un tableau pour y placer les cases minées | ||||
| 		int[] caseMine = new int[mines]; | ||||
|  | ||||
|  | ||||
| 		//	On lit maintenant les données pour fixer certains de leurs attributs | ||||
| 		int j=0; | ||||
| 		//	On lit maintenant les données pour fixer certains attributs et savoir où sont les mines | ||||
| 		for (int i=0;i<=taille-1;i++){ | ||||
| 			System.out.println(donnees.cases.substring(i,i+1)); | ||||
| 			if (Integer.parseInt(donnees.cases.substring(i,i+1))==1){ | ||||
| 				plateau[i].setMine(); | ||||
| 				caseMine[j]=i; | ||||
| 				System.out.println(caseMine[j]); | ||||
| 				j++; | ||||
| 			} else if (Integer.parseInt(donnees.cases.substring(i,i+1))==2){ | ||||
| 				plateau[i].setReperee(true); | ||||
| 			} else if (Integer.parseInt(donnees.cases.substring(i,i+1))==3){ | ||||
| 				plateau[i].setMine(); | ||||
| 				caseMine[j]=i; | ||||
| 				System.out.println(caseMine[j]); | ||||
| 				j++; | ||||
| 				plateau[i].setReperee(true); | ||||
| 			} else if (Integer.parseInt(donnees.cases.substring(i,i+1))==4){ | ||||
| 				plateau[i].setVisible(); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
|  | ||||
|  | ||||
| 		 | ||||
| 		//	On détermine l'entourage de chaque case | ||||
| 		SetEntourage(caseMine); | ||||
| 		 | ||||
|  | ||||
| 		//	On affiche les cases qui doivent être visibles | ||||
| 		for (int n=0;n<=taille-1;n++){ | ||||
| 			if (Integer.parseInt(donnees.cases.substring(n,n+1))==4){ | ||||
| 				plateau[n].setVisible(); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		//	On affiche la grille | ||||
| 		AfficherPlateau(); | ||||
| @@ -138,18 +140,6 @@ public class Grille extends JPanel{ | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| 	//	Méthode pour Génerer le plateau | ||||
| 	protected void GenererPlateau(Dimension caseSize){ | ||||
| 		this.plateau= new Case[this.taille]; | ||||
| @@ -236,6 +226,7 @@ public class Grille extends JPanel{ | ||||
| 				} | ||||
| 			} | ||||
| 			plateau[i].setEntourage(entourage); | ||||
| 			System.out.println(entourage); | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,12 @@ | ||||
| /** | ||||
|  * La classe <code>Main</code> est le main qui débute le programme du démineur | ||||
|  * @version 1.1 | ||||
|  * @author Kayyissa Haïssous | ||||
|  */ | ||||
| public class Main{ | ||||
|         /** | ||||
|         * main ouvrant la fenêtre de menu | ||||
|         */ | ||||
| 	public static void main(String[] args) { | ||||
|         new FrameMenu();     | ||||
|         } | ||||
|   | ||||
							
								
								
									
										27
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										27
									
								
								Makefile
									
									
									
									
									
								
							| @@ -11,40 +11,49 @@ JVMFLAGS = | ||||
| Main.class : Main.java FrameMenu.class | ||||
| 	${JC} ${JCFLAGS} Main.java | ||||
|  | ||||
| FrameMenu.class : FrameMenu.java SettingsListener.class NewGameListener.class | ||||
| FrameMenu.class : FrameMenu.java SettingsListener.class NewGameListener.class Chargement.class | ||||
| 	${JC} ${JCFLAGS} FrameMenu.java | ||||
|  | ||||
| SettingsListener.class : SettingsListener.java | ||||
| 	${JC} ${JCFLAGS} SettingsListener.java | ||||
|  | ||||
| NewGameListener.class : NewGameListener.java FrameJeu.class | ||||
| NewGameListener.class : NewGameListener.java FrameJeu.class  | ||||
| 	${JC} ${JCFLAGS} NewGameListener.java | ||||
|  | ||||
| Chargement.class : Chargement.java FrameJeu.class | ||||
| 	${JC} ${JCFLAGS} Chargement.java | ||||
|  | ||||
| FrameJeu.class : FrameJeu.java Grille.class | ||||
| 	${JC} ${JCFLAGS} FrameJeu.java | ||||
|  | ||||
| Grille.class : Grille.java Banniere.class Case.class | ||||
| .Grille.class : Grille.java Banniere.class Case.class | ||||
| 	${JC} ${JCFLAGS} Grille.java | ||||
|  | ||||
| Banniere.class : Banniere.java MenuListener.class | ||||
| Banniere.class : Banniere.java MenuListener.class SaveListener.class | ||||
| 	${JC} ${JCFLAGS} Banniere.java | ||||
|  | ||||
| Case.class : Case.java ListenerCase.class Entourage.class | ||||
| .Case.class : Case.java ListenerCase.class Entourage.class | ||||
| 	${JC} ${JCFLAGS} Case.java | ||||
|  | ||||
| MenuListener.class : MenuListener.java | ||||
| 	${JC} ${JCFLAGS} MenuListener.java | ||||
|  | ||||
| ListenerCase.class : ListenerCase.java Etoile.class Doute.class | ||||
| SaveListener.class : SaveListener.java SaveManager.class | ||||
| 	${JC} ${JCFLAGS} SaveListener.java | ||||
|  | ||||
| SaveManager.class : SaveManager.java | ||||
| 	${JC} ${JCFLAGS} SaveManager.java | ||||
|  | ||||
| .ListenerCase.class : ListenerCase.java Etoile.class Doute.class | ||||
| 	${JC} ${JCFLAGS} ListenerCase.java | ||||
|  | ||||
| Entourage.class : Entourage.java | ||||
| .Entourage.class : Entourage.java | ||||
| 	${JC} ${JCFLAGS} Entourage.java | ||||
|  | ||||
| Etoile.class : Etoile.java | ||||
| .Etoile.class : Etoile.java | ||||
| 	${JC} ${JCFLAGS} Etoile.java | ||||
|  | ||||
| Doute.class : Doute.java | ||||
| .Doute.class : Doute.java | ||||
| 	${JC} ${JCFLAGS} Doute.java | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,12 +1,35 @@ | ||||
| import java.awt.event.*; | ||||
| /** | ||||
|  * La classe <code>MenuListener</code> implémente l'interface ActionListener | ||||
|  * ferme le jeu et réouvre la fenêtre de menu | ||||
|  *   | ||||
|  * @version 1.1 | ||||
|  * @author Kayyissa Haïssous | ||||
|  */ | ||||
| public class MenuListener implements ActionListener{ | ||||
|     /** | ||||
|     * fenetre de Jeu | ||||
|     */ | ||||
|     private FrameJeu fenetre; | ||||
|     /** | ||||
|     * fenetre de Menu | ||||
|     */ | ||||
|     private FrameMenu menu; | ||||
|  | ||||
|     /** | ||||
|     * Constructeur qui ne sert qu'à la création de constantes | ||||
|     * @param fenetre la fenêtre de jeu | ||||
|     * @param menu la fenêtre de menu | ||||
|     */ | ||||
|     public MenuListener(FrameJeu fenetre, FrameMenu menu){ | ||||
|         this.fenetre=fenetre; | ||||
|         this.menu=menu; | ||||
|     } | ||||
|      | ||||
|      /** | ||||
|     * Méthode qui doit être rédigée | ||||
|     * @param event l'évenement | ||||
|     */ | ||||
|     @Override | ||||
|     public void actionPerformed(ActionEvent event){ | ||||
|         this.menu.setVisible(true); | ||||
|   | ||||
| @@ -1,10 +1,29 @@ | ||||
| import java.awt.event.*; | ||||
| /** | ||||
|  * La classe <code>NewGameListener</code> implémente l'interface ActionListener | ||||
|  * et permet de lancer une nouvelle partie. | ||||
|  *   | ||||
|  * @version 1.1 | ||||
|  * @author Kayyissa Haïssous | ||||
|  */ | ||||
| public class NewGameListener implements ActionListener{ | ||||
|     /** | ||||
|     * Fenetre du menu. | ||||
|     */ | ||||
|     private FrameMenu menu; | ||||
|  | ||||
|     /** | ||||
|     * Constructeur qui ne sert qu'à la création de la constante menu | ||||
|     * @param menu la fenêtre de menu | ||||
|     */ | ||||
|     public NewGameListener(FrameMenu menu){ | ||||
|         this.menu=menu; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|     * Méthode qui doit être rédigée | ||||
|     * @param event l'évenement sur le bouton | ||||
|     */ | ||||
|     @Override | ||||
|     public void actionPerformed(ActionEvent event){ | ||||
|         int[] settings =this.menu.getSettings(); | ||||
|   | ||||
							
								
								
									
										4
									
								
								Save.txt
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								Save.txt
									
									
									
									
									
								
							| @@ -1,2 +1,2 @@ | ||||
| 25x20x50 | ||||
| 44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444 | ||||
| 11x8x0 | ||||
| 4444444444444444444444444444444304444444310044444444000444444441004444444410044444444000 | ||||
| @@ -1,12 +1,35 @@ | ||||
| import java.awt.event.*; | ||||
| /** | ||||
|  * La classe <code>MenuListener</code> implémente l'interface ActionListener | ||||
|  * ferme le jeu et sauvegarde la partie en cours dans le fichier Save.txt | ||||
|  *   | ||||
|  * @version 1.1 | ||||
|  * @author Kayyissa Haïssous | ||||
|  */ | ||||
| public class SaveListener implements ActionListener { | ||||
|     /** | ||||
|     * Grille de Jeu | ||||
|     */ | ||||
|     private Grille grille; | ||||
|     /** | ||||
|     * fenetre de Jeu | ||||
|     */ | ||||
|     private FrameJeu fenetre; | ||||
|  | ||||
|     /** | ||||
|     * Constructeur qui ne sert qu'à la création de constantes | ||||
|     * @param grille la grille de Jeu | ||||
|     * @param fenetre la fenêtre de jeu | ||||
|     */ | ||||
|     public SaveListener(Grille grille, FrameJeu fenetre){ | ||||
|         this.grille=grille; | ||||
|         this.fenetre=fenetre; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|     * Méthode qui doit être rédigée | ||||
|     * @param event l'évenement sur le Bouton | ||||
|     */ | ||||
|     @Override | ||||
|     public void actionPerformed(ActionEvent event){ | ||||
|         SaveManager saveManager = new SaveManager(); | ||||
|   | ||||
| @@ -1,8 +1,19 @@ | ||||
| import java.awt.Dimension; | ||||
| import java.io.*; | ||||
|  | ||||
| /** | ||||
|  * La classe <code>SaveManager</code> sert à sauvegarder la partie en cours | ||||
|  *   | ||||
|  * @version 1.1 | ||||
|  * @author Kayyissa Haïssous | ||||
|  */ | ||||
| public class SaveManager { | ||||
|      | ||||
|  | ||||
|     /** | ||||
|     * Méthode pour récupérer les infos et les écrires dans le fichier voulu | ||||
|     * @param grille la grille de jeu | ||||
|     * @param nomFichier le nom du fichier de sauvegarde | ||||
|     */ | ||||
|     public void save(Grille grille, String nomFichier) { | ||||
|         Dimension taille = grille.getDimensionGrille(); | ||||
|  | ||||
| @@ -23,6 +34,10 @@ public class SaveManager { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|     * Méthode qui charge les infos de sauvegarde  | ||||
|     * @param nomFicher le nom du fichier de save | ||||
|     */ | ||||
|     public SaveData load(String nomFichier) { | ||||
|         String toReturn=""; | ||||
|         String ligne; | ||||
| @@ -61,6 +76,9 @@ public class SaveManager { | ||||
|         return toRet; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|     * La classe <code>SaveDate</code> correspond aux données de sauvegarde d'une partie | ||||
|     */ | ||||
|     public class SaveData{ | ||||
|         public Dimension taille; | ||||
|         public String cases; | ||||
|   | ||||
| @@ -2,6 +2,13 @@ import javax.swing.JSlider; | ||||
| import javax.swing.event.ChangeEvent; | ||||
| import javax.swing.event.ChangeListener; | ||||
|  | ||||
| /** | ||||
|  * La classe <code>SettingsListener</code> implémente l'interface ChangeListener | ||||
|  * et permet de connaître la valeur des paramètres | ||||
|  *   | ||||
|  * @version 1.1 | ||||
|  * @author Kayyissa Haïssous | ||||
|  */ | ||||
| public class SettingsListener implements ChangeListener{ | ||||
|     private int settingToSet; | ||||
|     private int settingValue; | ||||
| @@ -11,6 +18,10 @@ public class SettingsListener implements ChangeListener{ | ||||
|         this.menu=menu; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|     * Méthode qui doit être rédigée | ||||
|     * @param evenement l'évenement sur le JSlider | ||||
|     */ | ||||
|     @Override | ||||
|     public void stateChanged(ChangeEvent evenement) { | ||||
|         JSlider slider = (JSlider) evenement.getSource(); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user