From 54e2ae4039ccdd5599abd814ab8af81ef8d50e34 Mon Sep 17 00:00:00 2001 From: Bastien NOEL Date: Mon, 4 May 2020 16:15:01 +0200 Subject: [PATCH] ajustement et ajout d'effets sonores --- src/ihm/EffetSonore.java | 17 +++++++++---- src/ihm/controller/MenuController.java | 9 +++++-- src/ihm/controller/ParametreController.java | 10 +++----- src/ihm/controller/PlayersController.java | 26 +++++++++++++++----- src/ihm/ressources/musique/Beep2.wav | Bin 0 -> 10318 bytes src/ihm/ressources/musique/BeepError.wav | Bin 0 -> 30798 bytes 6 files changed, 43 insertions(+), 19 deletions(-) create mode 100644 src/ihm/ressources/musique/Beep2.wav create mode 100644 src/ihm/ressources/musique/BeepError.wav diff --git a/src/ihm/EffetSonore.java b/src/ihm/EffetSonore.java index 83e22f9..539748f 100644 --- a/src/ihm/EffetSonore.java +++ b/src/ihm/EffetSonore.java @@ -1,6 +1,7 @@ package ihm; -import java.io.File; +import java.io.BufferedInputStream; +import java.io.InputStream; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; @@ -9,18 +10,24 @@ import javax.sound.sampled.Clip; public class EffetSonore { static boolean soundOK; + + public InputStream fileSound1 = getClass().getResourceAsStream("/ihm/ressources/musique/BEEP1.wav"); + public InputStream fileSound2 = getClass().getResourceAsStream("/ihm/ressources/musique/BeepError.wav"); - public static void playSoundEffect(String path) { + public static void playSoundEffect(InputStream path) { if (soundOK == true) { try { - File soundPath = new File(path); + //File soundPath = new File(path); + InputStream soundPath = path; - if (soundPath.exists()) { + if (soundPath!=null) { - AudioInputStream audioInput = AudioSystem.getAudioInputStream(soundPath); + InputStream bufferedIn = new BufferedInputStream(soundPath); + + AudioInputStream audioInput = AudioSystem.getAudioInputStream(bufferedIn); Clip clipSound = AudioSystem.getClip(); clipSound.open(audioInput); clipSound.start(); diff --git a/src/ihm/controller/MenuController.java b/src/ihm/controller/MenuController.java index cd64a47..5db3678 100644 --- a/src/ihm/controller/MenuController.java +++ b/src/ihm/controller/MenuController.java @@ -22,6 +22,7 @@ public class MenuController implements Initializable{ @FXML private AnchorPane rootPane; @FXML private ImageView titre; + @Override public void initialize(URL arg0, ResourceBundle arg1) { InputStream input; @@ -32,8 +33,9 @@ public class MenuController implements Initializable{ @FXML public void commencerPartie(MouseEvent mouseEvent) throws IOException{ + InputStream fileSound1 = getClass().getResourceAsStream("/ihm/ressources/musique/BEEP1.wav"); - EffetSonore.playSoundEffect("src//ihm//ressources//musique//BEEP1.wav"); + EffetSonore.playSoundEffect(fileSound1); System.out.println("Passage à l'écran de choix des joueurs"); final URL fxmlURL = getClass().getResource("/ihm/ressources/Choix_joueur.fxml"); @@ -49,7 +51,10 @@ public class MenuController implements Initializable{ } public void afficherRegle(MouseEvent mouseEvent) { - EffetSonore.playSoundEffect("src//ihm//ressources//musique//BEEP1.wav"); + + InputStream fileSound1 = getClass().getResourceAsStream("/ihm/ressources/musique/BEEP1.wav"); + + EffetSonore.playSoundEffect(fileSound1); System.out.println("blaaaa"); } diff --git a/src/ihm/controller/ParametreController.java b/src/ihm/controller/ParametreController.java index 5743428..25da9f1 100644 --- a/src/ihm/controller/ParametreController.java +++ b/src/ihm/controller/ParametreController.java @@ -34,14 +34,10 @@ public class ParametreController implements Initializable { String filepathMusique = "/ihm/ressources/musique/The_Red_Fox_Tavern.wav"; // lien vers la musique : https://www.youtube.com/watch?v=LBpKUIyOHdo InputStream fileMusique = getClass().getResourceAsStream("/ihm/ressources/musique/The_Red_Fox_Tavern.wav"); + File repertoire = new File("src//ihm//ressources"); File repertoire2; String liste[] = repertoire.list(); - - /* - public void ParametreController() { - EffetSonore sound = soundEffects; - }*/ @Override public void initialize(URL arg0, ResourceBundle arg1) { @@ -54,6 +50,8 @@ public class ParametreController implements Initializable { @FXML public void enregistre(MouseEvent mouseEvent) throws IOException, Exception { + + InputStream fileSound1 = getClass().getResourceAsStream("/ihm/ressources/musique/BEEP1.wav"); //Pour la musique if (fileMusique!=null) { @@ -120,7 +118,7 @@ public class ParametreController implements Initializable { }*/ - EffetSonore.playSoundEffect("src//ihm//ressources//musique//BEEP1.wav"); //emet un bruit sur le bouton si les effets sonores sont activés + EffetSonore.playSoundEffect(fileSound1); //emet un bruit sur le bouton si les effets sonores sont activés // Quitter les paramètres final URL fxmlURL = getClass().getResource("/ihm/ressources/Menu.fxml"); diff --git a/src/ihm/controller/PlayersController.java b/src/ihm/controller/PlayersController.java index a2a30a6..ec33f24 100644 --- a/src/ihm/controller/PlayersController.java +++ b/src/ihm/controller/PlayersController.java @@ -1,6 +1,7 @@ package ihm.controller; import java.io.IOException; +import java.io.InputStream; import java.net.URL; import java.util.ArrayList; import java.util.HashMap; @@ -15,14 +16,12 @@ import javafx.fxml.FXML; import javafx.fxml.FXMLLoader; import javafx.fxml.Initializable; import javafx.scene.Node; -import javafx.scene.Parent; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.CheckBox; import javafx.scene.control.TextField; import javafx.scene.input.MouseEvent; import javafx.scene.layout.AnchorPane; -import javafx.scene.layout.GridPane; import javafx.scene.layout.HBox; import javafx.stage.Stage; import main.Configuration; @@ -52,8 +51,7 @@ public class PlayersController implements Initializable{ private int nbJoueursH = 0; private int nbJoueursV = 0; - - + /** * recup�re chaque bouton textField et Checkebox a partir des hbox */ @@ -119,7 +117,8 @@ public class PlayersController implements Initializable{ // Creer une configuration //View.applyConfiguration(new Configuration(joueurs, nbJoueursV, nbJoueursH)); - EffetSonore.playSoundEffect("src//ihm//ressources//musique//BEEP1.wav"); + InputStream fileSound1 = getClass().getResourceAsStream("/ihm/ressources/musique/BEEP1.wav"); + EffetSonore.playSoundEffect(fileSound1); System.out.println(this.joueurs); GestionnaireJeu gj = GestionnaireJeu.getGestionnaireJeu(); @@ -144,6 +143,12 @@ public class PlayersController implements Initializable{ gj.lancerPartie(); } + + else { + InputStream fileSound2 = getClass().getResourceAsStream("/ihm/ressources/musique/BeepError.wav"); + EffetSonore.playSoundEffect(fileSound2); + System.out.println("Il manque des joueurs pour lancer une partie."); + } } @@ -155,6 +160,10 @@ public class PlayersController implements Initializable{ */ public void ajoutJoueur(int indice){ System.out.println("Ajout du joueur " + (indice+1)); + + InputStream fileSound3 = getClass().getResourceAsStream("/ihm/ressources/musique/Beep2.wav"); + EffetSonore.playSoundEffect(fileSound3); + plus.get(indice).setText("-"); txt.get(indice).setEditable(true); txt.get(indice).setStyle("-fx-background-color: white;"); @@ -162,8 +171,9 @@ public class PlayersController implements Initializable{ if (ia.get(indice).isSelected()) { nbJoueursV++; - }else + }else { nbJoueursH++; + } if (nbJoueursH + nbJoueursV >= 4) { btnCommencer.setStyle("-fx-background-color: #1d1d1d; -fx-text-fill: #d8d8d8;"); @@ -177,6 +187,10 @@ public class PlayersController implements Initializable{ */ public void enleverJoueur(int indice) { System.out.println("Desistement du joueur " + (indice+1)); + + InputStream fileSound3 = getClass().getResourceAsStream("/ihm/ressources/musique/Beep2.wav"); + EffetSonore.playSoundEffect(fileSound3); + plus.get(indice).setText("+"); txt.get(indice).setEditable(false); txt.get(indice).setText(""); diff --git a/src/ihm/ressources/musique/Beep2.wav b/src/ihm/ressources/musique/Beep2.wav new file mode 100644 index 0000000000000000000000000000000000000000..37bf5daf2a7ab00f74df5463926171476cf378d9 GIT binary patch literal 10318 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 F{{aWVY}Nn( literal 0 HcmV?d00001 diff --git a/src/ihm/ressources/musique/BeepError.wav b/src/ihm/ressources/musique/BeepError.wav new file mode 100644 index 0000000000000000000000000000000000000000..3465a8b60e89135bfda93f0bf9182df1356cb4c5 GIT binary patch literal 30798 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

{c18 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 W{>tg^|KaT)z5+jd1^)lO0{;X|;Nfuq literal 0 HcmV?d00001