Skip to content
Snippets Groups Projects
Commit 47bae667 authored by Gehrung Jonas's avatar Gehrung Jonas
Browse files

Merge branch 'sound' into 'development'

FIX: Adaption of SoundEffects-Volume #22

See merge request !46
parents 751139d7 85a949ac
No related branches found
Tags v0.4.5
6 merge requests!74V1,!73Initial commit,!71Merge DataBase into Development,!54Update: coreMaps.json (added new maps),!48Development,!46FIX: Adaption of SoundEffects-Volume #22
......@@ -3,6 +3,7 @@ package de.hdm_stuttgart.battlearena.Controller;
import de.hdm_stuttgart.battlearena.Controller.Utilities.SceneLoader;
import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.Persistence;
import de.hdm_stuttgart.battlearena.Model.Sound.MusicPlayer;
import de.hdm_stuttgart.battlearena.Model.Sound.SoundEffects;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Slider;
......@@ -20,6 +21,7 @@ public class PauseSettingsController implements Initializable {
private int musicVolume, sfxVolume;
Persistence persistence = Persistence.getInstance();
MusicPlayer player = MusicPlayer.getInstance();
SoundEffects sfx = new SoundEffects();
@Override
public void initialize(URL url, ResourceBundle resourceBundle) {
......@@ -46,7 +48,7 @@ public class PauseSettingsController implements Initializable {
sfxSlider.setValue(persistence.getSettings().getSfxVolume());
sfxSlider.valueProperty().addListener(((observableValue, oldValue, newValue) -> {
sfxVolume = newValue.intValue();
persistence.getSettings().setSfxVolume(sfxVolume);
sfx.setSfxVolume(sfxVolume);
// sfxPlayer.getMediaPlayer().setVolume((double) sfxVolume / 100);
}));
}
......
......@@ -25,6 +25,7 @@ public class SoundEffects {
private SoundFileManager fileManager = new SoundFileManager();
private Persistence persistence = Persistence.getInstance();
......@@ -44,7 +45,7 @@ public class SoundEffects {
String resource = fileManager.convertPathToResourcePath(randomPath);
Thread sfxLoop = new Thread(() -> {
AudioClip effect = new AudioClip(getClass().getResource(resource).toString());
effect.setVolume((double) Persistence.getInstance().getSettings().getSfxVolume() /100);
effect.setVolume((double) persistence.getSettings().getSfxVolume() /100);
effect.play();
});
sfxLoop.setDaemon(true);
......@@ -59,8 +60,9 @@ public class SoundEffects {
String resource = path.substring(18); // Begins at Ressource Folder
Thread sfx = new Thread(()->{
AudioClip audioClip = new AudioClip(getClass().getResource(resource).toExternalForm());
audioClip.setVolume((double) persistence.getSettings().getSfxVolume()/100);
audioClip.play();
audioClip.setVolume((double) Persistence.getInstance().getSettings().getSfxVolume()/100);
});
sfx.setDaemon(true);
sfx.start();
......@@ -70,11 +72,11 @@ public class SoundEffects {
public void setSfxVolume(int volume){
Persistence.getInstance().getSettings().setSfxVolume(volume);
persistence.getSettings().setSfxVolume(volume);
}
public int getVolume(){
return Persistence.getInstance().getSettings().getMusicVolume();
return Persistence.getInstance().getSettings().getSfxVolume();
}
......
{
"sfxVolume": 42,
"sfxVolume": 0,
"musicVolume": 11
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment