diff --git a/src/ihm/Musique.java b/src/ihm/Musique.java index 89880e5..2490cd6 100644 --- a/src/ihm/Musique.java +++ b/src/ihm/Musique.java @@ -14,7 +14,7 @@ public class Musique { public static long clipTimePosition = 0; public static boolean musiqueEnCours = false; - static FloatControl volume ; + public static FloatControl volume ; public static void playMusique(InputStream path) { @@ -61,5 +61,14 @@ public class Musique { public static void volumeDown(Float valeur) { volume.setValue(volume.getValue() -valeur); } + + public static void setVolume(Float fValeur) { + volume.setValue(fValeur); + } + + public static void setVolume(double dValeur) { + float decibel = (float) (Math.log(dValeur) / Math.log(10) * 20); + volume.setValue(decibel); + } } diff --git a/src/ihm/controller/ParametreController.java b/src/ihm/controller/ParametreController.java index db625ab..9bf4755 100644 --- a/src/ihm/controller/ParametreController.java +++ b/src/ihm/controller/ParametreController.java @@ -14,6 +14,7 @@ import javafx.fxml.FXMLLoader; import javafx.fxml.Initializable; import javafx.scene.control.CheckBox; import javafx.scene.control.ComboBox; +import javafx.scene.control.Slider; import javafx.scene.input.MouseEvent; import javafx.scene.layout.Pane; @@ -28,9 +29,13 @@ public class ParametreController implements Initializable { private CheckBox clair; @FXML private ComboBox langues; + @FXML + private Slider sliderMusique; + public static boolean cbMusiqueCoche = false; // verifi si la checbox musical est coche public static boolean cbSonCoche = false; public static boolean cbClair = false; + public static double slideValue; boolean MusiqueLancee = false; //verifi si la musique a déja été lancé une première fois @@ -45,10 +50,10 @@ public class ParametreController implements Initializable { @Override public void initialize(URL arg0, ResourceBundle arg1) { - cmusique.setSelected(cbMusiqueCoche); - cbEffetSonore.setSelected(cbSonCoche); - clair.setSelected(cbClair); - + cmusique.setSelected(cbMusiqueCoche); + cbEffetSonore.setSelected(cbSonCoche); + clair.setSelected(cbClair); + sliderMusique.setValue(slideValue); langues.getItems().add("Anglais"); @@ -75,6 +80,7 @@ public class ParametreController implements Initializable { } else if (Musique.musiqueEnCours != true) { Musique.resumeMusique(Musique.clip); // si elle a deja été lancé mais mis en pause, reprend a partir du point d'arret + Musique.musiqueEnCours = true; } } else { @@ -161,5 +167,16 @@ public class ParametreController implements Initializable { Musique.volumeDown(5.f); System.out.println("on baisse le son"); } + + @FXML + public void slideVolumeMusique(MouseEvent mouseEvent) throws IOException{ + + if(Musique.musiqueEnCours == true) { + Musique.setVolume(sliderMusique.getValue()); + slideValue = sliderMusique.getValue(); + + } + + } } diff --git a/src/ihm/controller/PauseController.java b/src/ihm/controller/PauseController.java index 51cb9c4..6e1435e 100644 --- a/src/ihm/controller/PauseController.java +++ b/src/ihm/controller/PauseController.java @@ -70,6 +70,8 @@ public class PauseController implements Initializable { System.out.println("fichier audio non trouvé"); } + + // Pour les effets sonores if (cbEffet.isSelected() == true) { System.out.println("\tEffets sonores activé"); diff --git a/src/ihm/ressources/parametre.fxml b/src/ihm/ressources/parametre.fxml index ff6bd51..7a0f892 100644 --- a/src/ihm/ressources/parametre.fxml +++ b/src/ihm/ressources/parametre.fxml @@ -5,12 +5,13 @@ + - + @@ -18,23 +19,7 @@ - - - - - - +