fixed minor issues and cleaned up code to not include duplicate code.

This commit is contained in:
Fleischer Hanno hanno.fleischer@unibw.de
2024-10-07 17:54:35 +02:00
parent 4820a76ff0
commit da2508395c
7 changed files with 24 additions and 18 deletions

View File

@@ -9,7 +9,7 @@
# #
# Specifies the map used by the opponent in single mode. # Specifies the map used by the opponent in single mode.
# Single mode is activated if this property is set. # Single mode is activated if this property is set.
#map.opponent=maps/map2.json map.opponent=maps/map2.json
# #
# Specifies the map used by the player in single mode. # Specifies the map used by the player in single mode.
# The player must define their own map if this property is not set. # The player must define their own map if this property is not set.

View File

@@ -67,7 +67,7 @@ public BackgroundMusic(BattleshipApp app) {
*/ */
private AudioNode createAudioNode(String musicFilePath) { private AudioNode createAudioNode(String musicFilePath) {
AudioNode audioNode = new AudioNode(app.getAssetManager(), musicFilePath, DataType.Stream); AudioNode audioNode = new AudioNode(app.getAssetManager(), musicFilePath, DataType.Stream);
audioNode.setVolume(volume * app.getMainVolume().getMainVolume()); audioNode.setVolume(volume * app.getMainVolumeControl().getMainVolume());
audioNode.setPositional(false); audioNode.setPositional(false);
audioNode.setLooping(true); audioNode.setLooping(true);
audioNode.setName(musicFilePath); audioNode.setName(musicFilePath);
@@ -152,7 +152,7 @@ public void setVolume(){
*/ */
public void setVolume(float volume) { public void setVolume(float volume) {
this.volume = volume; this.volume = volume;
float mainVolume = app.getMainVolume().getMainVolume(); float mainVolume = app.getMainVolumeControl().getMainVolume();
menuMusic.setVolume(volume * mainVolume); menuMusic.setVolume(volume * mainVolume);
battleMusic.setVolume(volume * mainVolume); battleMusic.setVolume(volume * mainVolume);
gameOverMusicL.setVolume(volume * mainVolume); gameOverMusicL.setVolume(volume * mainVolume);

View File

@@ -455,7 +455,7 @@ public BackgroundMusic getBackgroundMusic(){
* *
* @return an object of MainVolume * @return an object of MainVolume
*/ */
public MainVolume getMainVolume(){ public MainVolume getMainVolumeControl(){
return mainVolume; return mainVolume;
} }
} }

View File

@@ -137,7 +137,7 @@ public void shipDestroyed() {
* @param volume the volume to be set to * @param volume the volume to be set to
*/ */
public void setSoundVolume(float volume) { public void setSoundVolume(float volume) {
float mainVolume = app.getMainVolume().getMainVolume(); float mainVolume = app.getMainVolumeControl().getMainVolume();
shipDestroyedSound.setVolume(volume); shipDestroyedSound.setVolume(volume);
splashSound.setVolume(volume); splashSound.setVolume(volume);
explosionSound.setVolume(volume); explosionSound.setVolume(volume);
@@ -149,7 +149,7 @@ public void setSoundVolume(float volume) {
* this method will be used if the main volume changes * this method will be used if the main volume changes
*/ */
public void setSoundVolume() { public void setSoundVolume() {
float mainVolume = app.getMainVolume().getMainVolume(); float mainVolume = app.getMainVolumeControl().getMainVolume();
shipDestroyedSound.setVolume(volume * mainVolume); shipDestroyedSound.setVolume(volume * mainVolume);
splashSound.setVolume(volume * mainVolume); splashSound.setVolume(volume * mainVolume);
explosionSound.setVolume(volume * mainVolume); explosionSound.setVolume(volume * mainVolume);

View File

@@ -56,18 +56,14 @@ public Menu(BattleshipApp app) {
addChild(new Label(lookup("battleship.name"), new ElementId("header"))); //NON-NLS addChild(new Label(lookup("battleship.name"), new ElementId("header"))); //NON-NLS
addChild(new Label(lookup("menu.main.volume"), new ElementId("label"))); addChild(new Label(lookup("menu.main.volume"), new ElementId("label")));
Slider mainVolumeSlider = new Slider(); Slider mainVolumeSlider = createSlider(app.getMainVolumeControl().getMainVolume());
mainVolumeSlider.setModel(new DefaultRangedValueModel(SLIDER_MIN_VALUE, SLIDER_MAX_VALUE, app.getMainVolume().getMainVolume()));
mainVolumeSlider.setDelta(SLIDER_DELTA);
addChild(mainVolumeSlider); addChild(mainVolumeSlider);
mainVolumeRef = mainVolumeSlider.getModel().createReference(); mainVolumeRef = mainVolumeSlider.getModel().createReference();
addChild(new Label(lookup("menu.sound.volume"), new ElementId("label"))); addChild(new Label(lookup("menu.sound.volume"), new ElementId("label")));
addChild(new Checkbox(lookup("menu.sound-enabled"), addChild(new Checkbox(lookup("menu.sound-enabled"),
new StateCheckboxModel(app, GameSound.class))); new StateCheckboxModel(app, GameSound.class)));
Slider soundSlider = new Slider(); Slider soundSlider = createSlider(app.getStateManager().getState(GameSound.class).getVolume());
soundSlider.setModel(new DefaultRangedValueModel(SLIDER_MIN_VALUE, SLIDER_MAX_VALUE, app.getStateManager().getState(GameSound.class).getVolume()));
soundSlider.setDelta(SLIDER_DELTA);
addChild(soundSlider); addChild(soundSlider);
soundVolumeRef = soundSlider.getModel().createReference(); soundVolumeRef = soundSlider.getModel().createReference();
@@ -76,9 +72,7 @@ public Menu(BattleshipApp app) {
musicToggle.setChecked(app.getBackgroundMusic().isMusicEnabled()); musicToggle.setChecked(app.getBackgroundMusic().isMusicEnabled());
musicToggle.addClickCommands(s -> toggleMusic()); musicToggle.addClickCommands(s -> toggleMusic());
addChild(musicToggle); addChild(musicToggle);
Slider volumeSlider = new Slider(); Slider volumeSlider = createSlider(app.getBackgroundMusic().getVolume());
volumeSlider.setModel(new DefaultRangedValueModel(SLIDER_MIN_VALUE, SLIDER_MAX_VALUE, app.getBackgroundMusic().getVolume()));
volumeSlider.setDelta(SLIDER_DELTA);
addChild(volumeSlider); addChild(volumeSlider);
volumeRef = volumeSlider.getModel().createReference(); volumeRef = volumeSlider.getModel().createReference();
@@ -93,6 +87,19 @@ public Menu(BattleshipApp app) {
update(); update();
} }
/**
* this method creates a slider to be used in the menu
*
* @param relativePosition the position of the regulator on the slider
* @return the creates slider
*/
private Slider createSlider(double relativePosition){
Slider slider = new Slider();
slider.setModel(new DefaultRangedValueModel(SLIDER_MIN_VALUE, SLIDER_MAX_VALUE, relativePosition));
slider.setDelta(SLIDER_DELTA);
return slider;
}
/** /**
* this method is used update the volume when there is a change in the slider * this method is used update the volume when there is a change in the slider
* @param tpf time per frame * @param tpf time per frame
@@ -118,7 +125,7 @@ else if (soundVolumeRef.update()) {
* @param newVolume the volume to be set as main volume * @param newVolume the volume to be set as main volume
*/ */
private void adjustMainVolume(double newVolume) { private void adjustMainVolume(double newVolume) {
app.getMainVolume().setMainVolume((float) newVolume); app.getMainVolumeControl().setMainVolume((float) newVolume);
} }
/** /**

View File

@@ -56,7 +56,6 @@ public void createHitEffect(Node battleshipNode, Shot shot) {
hitEffect.setParticlesPerSec(0); hitEffect.setParticlesPerSec(0);
hitEffect.setLocalTranslation(shot.getY() + 0.5f, 0 , shot.getX() + 0.5f); hitEffect.setLocalTranslation(shot.getY() + 0.5f, 0 , shot.getX() + 0.5f);
LOGGER.log(Level.DEBUG, "Created HitEffect at {0}", hitEffect.getLocalTranslation().toString()); LOGGER.log(Level.DEBUG, "Created HitEffect at {0}", hitEffect.getLocalTranslation().toString());
LOGGER.log(Level.DEBUG, "Created HitEffect at {0}", hitEffect.getLocalTranslation().toString());
hitEffect.emitAllParticles(); hitEffect.emitAllParticles();

View File

@@ -30,7 +30,7 @@ wait.its.not.your.turn=Warte, Du bist nicht dran!!
menu.quit=Spiel beenden menu.quit=Spiel beenden
menu.return-to-game=Zurück zum Spiel menu.return-to-game=Zurück zum Spiel
menu.sound-enabled=An/Ausschalten des Sounds menu.sound-enabled=An/Ausschalten des Sounds
menu.main.volume=Gesammt Lautst<73>rke menu.main.volume=Gesamt Lautst<73>rke
menu.map.load=Karte von Datei laden... menu.map.load=Karte von Datei laden...
menu.map.save=Karte in Datei speichern... menu.map.save=Karte in Datei speichern...
menu.music.toggle=An/Ausschalten der Musik menu.music.toggle=An/Ausschalten der Musik