Skip to content
This repository was archived by the owner on Aug 5, 2025. It is now read-only.

Commit 4898fd3

Browse files
committed
AAGAJGAJGJ
1 parent 65242ff commit 4898fd3

File tree

3 files changed

+53
-40
lines changed

3 files changed

+53
-40
lines changed

assets/languages/en/Options.xml

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
<str id="optionsMenu.desc-missing">No Description</str>
44

55
<group name="OptionsMenu">
6+
<str id="optionsMenu.advanced">Advanced</str>
67
<str id="optionsMenu.header.title">Options Menu</str>
78
<str id="optionsMenu.header.desc">Select a category to continue.</str>
89

@@ -11,6 +12,7 @@
1112

1213
<str id="optionsTree.gameplay-name">Gameplay</str>
1314
<str id="optionsTree.gameplay-desc">Change Gameplay options such as Downscroll, Scroll Speed, Naughtyness...</str>
15+
<str id="optionsTree.gameplay.advanced-desc">Change more advanced options such as Window Size, Streaming Audio...</str>
1416

1517
<str id="optionsTree.appearance-name">Appearance</str>
1618
<str id="optionsTree.appearance-desc">Change Appearance options such as Flashing menus...</str>
@@ -80,15 +82,6 @@
8082

8183
<str id="gpuOnlyBitmaps-name">VRAM-Only Sprites</str>
8284
<str id="gpuOnlyBitmaps-desc">If checked, will only store the bitmaps in the GPU, freeing a LOT of memory (EXPERIMENTAL). Turning this off will consume a lot of memory, especially on bigger sprites. If you aren't sure, leave this on.</str>
83-
84-
<str id="autoPause-name">Auto Pause</str>
85-
<str id="autoPause-desc">If checked, switching windows will pause the game.</str>
86-
87-
<str id="streamedMusic-name">Streamed Music</str>
88-
<str id="streamedMusic-desc">"If checked, only musics will have streamed audio, ALSO freeing a LOT of memory with the downside of higher cpu usage if more audio are being streamed at once (EXPERIMENTAL). Turning this off will consume a lot of memory, especially on longer songs. If you aren't sure, leave this on.</str>
89-
90-
<str id="streamedVocals-name">Streamed Vocals</str>
91-
<str id="streamedVocals-desc">If checked, vocals will also be streamed if Streamed Music is checked, will impact the performance if the song uses alot of vocals (EXPERIMENTAL). If you aren't sure, leave this on.</str>
9285
</group>
9386

9487
<group name="GameplayOptions" prefix="GameplayOptions.">
@@ -98,17 +91,31 @@
9891
<str id="ghostTapping-name">Ghost Tapping</str>
9992
<str id="ghostTapping-desc">If unchecked, trying to hit any strum that have no note that can be hit will cause a miss.</str>
10093

101-
<str id="songOffset-name">Song Offset</str>
102-
<str id="songOffset-desc">Changes the offset that songs should start with.</str>
103-
10494
<str id="naughtyness-name">Naughtyness</str>
10595
<str id="naughtyness-desc">If unchecked, will censor the Week 7 cutscenes.</str>
10696

10797
<str id="camZoomOnBeat-name">Camera Zoom on Beat</str>
10898
<str id="camZoomOnBeat-desc">If unchecked, will stop the camera from zooming in every 4 beats.</str>
10999

100+
<str id="autoPause-name">Auto Pause</str>
101+
<str id="autoPause-desc">If checked, switching windows will pause the game.</str>
102+
110103
<str id="volumeSFX-name">SFX Volume</str>
111104
<str id="volumeSFX-desc">Changes only the volume of the SFX instead of everything.</str>
105+
106+
<str id="songOffset-name">Song Offset</str>
107+
<str id="songOffset-desc">Changes the offset that songs should start with.</str>
108+
109+
<group name="GameplayOptionsAdvanced" prefix="Advanced.">
110+
<str id="windowSize-name">Window Size</str>
111+
<str id="windowSize-desc">...</str>
112+
113+
<str id="streamedMusic-name">Streamed Music</str>
114+
<str id="streamedMusic-desc">If checked, only musics will have streamed audio, ALSO freeing a LOT of memory with the downside of higher cpu usage if more audio are being streamed at once (EXPERIMENTAL). Turning this off will consume a lot of memory, especially on longer songs. If you aren't sure, leave this on.</str>
115+
116+
<str id="streamedVocals-name">Streamed Vocals</str>
117+
<str id="streamedVocals-desc">If checked, vocals will also be streamed if Streamed Music is checked, will impact the performance if the song uses alot of vocals (EXPERIMENTAL). If you aren't sure, leave this on.</str>
118+
</group>
112119
</group>
113120

114121
<group name="LanguageOptions" prefix="LanguageOptions.">

source/funkin/options/categories/AppearanceOptions.hx

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -43,18 +43,6 @@ class AppearanceOptions extends OptionsScreen {
4343
"gpuOnlyBitmaps"));
4444
}
4545
#end
46-
add(new Checkbox(
47-
getName("streamedMusic"),
48-
getDesc("streamedMusic"),
49-
"streamedMusic"));
50-
add(new Checkbox(
51-
getName("streamedVocals"),
52-
getDesc("streamedVocals"),
53-
"streamedVocals"));
54-
add(new Checkbox(
55-
getName("autoPause"),
56-
getDesc("autoPause"),
57-
"autoPause"));
5846
}
5947

6048
private function __changeFPS(change:Float) {

source/funkin/options/categories/GameplayOptions.hx

Lines changed: 34 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,6 @@ class GameplayOptions extends OptionsScreen {
1818
getName("ghostTapping"),
1919
getDesc("ghostTapping"),
2020
"ghostTapping"));
21-
add(offsetSetting = new NumOption(
22-
getName("songOffset"),
23-
getDesc("songOffset"),
24-
-999, // minimum
25-
999, // maximum
26-
1, // change
27-
"songOffset", // save name or smth
28-
__changeOffset)); // callback
2921
add(new Checkbox(
3022
getName("naughtyness"),
3123
getDesc("naughtyness"),
@@ -34,13 +26,27 @@ class GameplayOptions extends OptionsScreen {
3426
getName("camZoomOnBeat"),
3527
getDesc("camZoomOnBeat"),
3628
"camZoomOnBeat"));
29+
add(new Checkbox(
30+
getName("autoPause"),
31+
getDesc("autoPause"),
32+
"autoPause"));
3733
add(new MeterOption(
3834
getName("volumeSFX"),
3935
getDesc("volumeSFX"),
4036
0, // minimum
4137
1, // maximum
4238
0.1, // change
4339
"volumeSFX"));
40+
add(offsetSetting = new NumOption(
41+
getName("songOffset"),
42+
getDesc("songOffset"),
43+
-999, // minimum
44+
999, // maximum
45+
1, // change
46+
"songOffset", // save name or smth
47+
__changeOffset)); // callback
48+
add(new TextOption('optionsMenu.advanced', 'optionsTree.gameplay.advanced-desc', ' >', () ->
49+
parent.add(new AdvancedGameplayOptions('optionsMenu.advanced', 'optionsTree.gameplay.advanced-desc'))));
4450
}
4551

4652
private function __changeOffset(offset)
@@ -66,15 +72,27 @@ class GameplayOptions extends OptionsScreen {
6672
__lastSongBeat = beat;
6773
}
6874
}
69-
else FlxG.sound.music.volume = 1;
75+
else
76+
FlxG.sound.music.volume = 1;
7077
}
7178

72-
public override function close() {
73-
// To remove this timer move super.update(elapsed); to the end, but im afraid it will cause stuff to break
74-
new FlxTimer().start(0.0000001, (_) -> {
75-
FlxG.camera.zoom = 1;
76-
FlxG.sound.music.volume = 1;
77-
});
79+
override function close() {
80+
FlxG.camera.zoom = 1;
81+
FlxG.sound.music.volume = 1;
7882
super.close();
7983
}
80-
}
84+
}
85+
86+
class AdvancedGameplayOptions extends OptionsScreen {
87+
public override function new(title:String, desc:String) {
88+
super(title, desc, "GameplayOptions.Advanced.");
89+
add(new Checkbox(
90+
getName("streamedMusic"),
91+
getDesc("streamedMusic"),
92+
"streamedMusic"));
93+
add(new Checkbox(
94+
getName("streamedVocals"),
95+
getDesc("streamedVocals"),
96+
"streamedVocals"));
97+
}
98+
}

0 commit comments

Comments
 (0)