@@ -24,7 +24,8 @@ public final class AudioSettings extends PScene {
24
24
25
25
private Button quit ;
26
26
private Button apply ;
27
- private Slider masterVolume ;
27
+ private Slider volumeBGM ;
28
+ private Slider volumeSFX ;
28
29
29
30
private float originalVolumeBGM ;
30
31
private float originalVolumeSFX ;
@@ -42,18 +43,23 @@ public AudioSettings(SideScroller a) {
42
43
quit .setText ("Quit" );
43
44
quit .setPosition (a .width / 2 , 600 );
44
45
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 );
48
49
50
+ volumeSFX = new Slider (game , 0.75f );
51
+ volumeSFX .setText ("SFX" );
52
+ volumeSFX .setPosition (a .width / 2 , 350 );
53
+
49
54
}
50
55
51
56
@ Override
52
57
public void switchTo () {
53
58
originalVolumeBGM = Options .gainBGM ;
54
59
originalVolumeSFX = Options .gainSFX ;
55
60
// 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));
57
63
super .switchTo ();
58
64
}
59
65
@@ -62,15 +68,19 @@ public void drawUI() {
62
68
game .background (Constants .Colors .MENU_GREY );
63
69
apply .display ();
64
70
quit .display ();
65
- masterVolume .display ();
71
+ volumeBGM .display ();
72
+ volumeSFX .display ();
73
+
66
74
}
67
75
68
76
@ Override
69
77
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 );
74
84
}
75
85
76
86
@ Override
@@ -86,11 +96,12 @@ void mouseReleased(MouseEvent e) {
86
96
return ;
87
97
}
88
98
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 ;
94
105
Notifications .addNotification ("Sound Settings Applied" , "Your configuration has been successfully applied." );
95
106
game .returnScene ();
96
107
}
0 commit comments