Skip to content

Commit b037c65

Browse files
authored
Merge pull request #158 from liannegonzales/master
Separated volume slider to bgm and sfx slider
2 parents 470b4bf + 00e559e commit b037c65

File tree

1 file changed

+26
-15
lines changed

1 file changed

+26
-15
lines changed

src/main/java/project_16x16/scene/AudioSettings.java

Lines changed: 26 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ public final class AudioSettings extends PScene {
2424

2525
private Button quit;
2626
private Button apply;
27-
private Slider masterVolume;
27+
private Slider volumeBGM;
28+
private Slider volumeSFX;
2829

2930
private float originalVolumeBGM;
3031
private float originalVolumeSFX;
@@ -42,18 +43,23 @@ public AudioSettings(SideScroller a) {
4243
quit.setText("Quit");
4344
quit.setPosition(a.width / 2, 600);
4445

45-
masterVolume = new Slider(game, 0.75f);
46-
masterVolume.setText("Volume");
47-
masterVolume.setPosition(a.width / 2, 300);
46+
volumeBGM = new Slider(game, 0.75f);
47+
volumeBGM.setText("BGM");
48+
volumeBGM.setPosition(a.width / 2, 300);
4849

50+
volumeSFX = new Slider(game, 0.75f);
51+
volumeSFX.setText("SFX");
52+
volumeSFX.setPosition(a.width / 2, 350);
53+
4954
}
5055

5156
@Override
5257
public void switchTo() {
5358
originalVolumeBGM = Options.gainBGM;
5459
originalVolumeSFX = Options.gainSFX;
5560
// TODO properly align audio value and slider position
56-
masterVolume.setValue(PApplet.map(originalVolumeBGM, -60, 0, 0, 1));
61+
//volumeBGM.setValue(PApplet.map(originalVolumeBGM, -60, 0, 0, 1));
62+
//volumeSFX.setValue(PApplet.map(originalVolumeSFX, -60, 0, 0, 1));
5763
super.switchTo();
5864
}
5965

@@ -62,15 +68,19 @@ public void drawUI() {
6268
game.background(Constants.Colors.MENU_GREY);
6369
apply.display();
6470
quit.display();
65-
masterVolume.display();
71+
volumeBGM.display();
72+
volumeSFX.display();
73+
6674
}
6775

6876
@Override
6977
void mouseDragged(MouseEvent e) {
70-
masterVolume.update();
71-
float volume = 20 * (float) Math.log(masterVolume.getValue());
72-
Audio.setGainBGM(volume);
73-
Audio.setGainSFX(volume);
78+
volumeBGM.update();
79+
volumeSFX.update();
80+
float volBGM = 20 * (float) Math.log(volumeBGM.getValue());
81+
float volSFX = 20 * (float) Math.log(volumeSFX.getValue());
82+
Audio.setGainBGM(volBGM);
83+
Audio.setGainSFX(volSFX);
7484
}
7585

7686
@Override
@@ -86,11 +96,12 @@ void mouseReleased(MouseEvent e) {
8696
return;
8797
}
8898
if (apply.hover()) {
89-
float volume = 20 * (float) Math.log(masterVolume.getValue());
90-
Options.save(Option.gainBGM, volume);
91-
Options.save(Option.gainSFX, volume);
92-
Options.gainBGM = volume;
93-
Options.gainSFX = volume;
99+
float volBGM = 20 * (float) Math.log(volumeBGM.getValue());
100+
float volSFX = 20 * (float) Math.log(volumeSFX.getValue());
101+
Options.save(Option.gainBGM, volBGM);
102+
Options.save(Option.gainSFX, volSFX);
103+
Options.gainBGM = volBGM;
104+
Options.gainSFX = volSFX;
94105
Notifications.addNotification("Sound Settings Applied", "Your configuration has been successfully applied.");
95106
game.returnScene();
96107
}

0 commit comments

Comments
 (0)