mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-08-03 00:16:36 -04:00
Merge branches 'poecount' and 'main' of ssh://github.com/TwilitRealm/dusklight into poecount
This commit is contained in:
@@ -176,6 +176,7 @@ namespace dusk::config {
|
||||
template class ConfigImpl<dusk::GameLanguage>;
|
||||
template class ConfigImpl<dusk::GyroMode>;
|
||||
template class ConfigImpl<dusk::FrameInterpMode>;
|
||||
template class ConfigImpl<dusk::MenuScaling>;
|
||||
template class ConfigImpl<dusk::Resampler>;
|
||||
}
|
||||
|
||||
|
||||
@@ -55,6 +55,7 @@ UserSettings g_userSettings = {
|
||||
.enableAchievementToasts {"game.enableAchievementToasts", true},
|
||||
.enableControllerToasts {"game.enableControllerToasts", true},
|
||||
.enableDiscordPresence {"game.enableDiscordPresence", true},
|
||||
.menuScalingMode {"game.menuScalingMode", MenuScaling::Wii},
|
||||
|
||||
// Graphics
|
||||
.bloomMode {"game.bloomMode", BloomMode::Dusk},
|
||||
@@ -249,6 +250,7 @@ void registerSettings() {
|
||||
Register(g_userSettings.game.liveSplitEnabled);
|
||||
Register(g_userSettings.game.showSpeedrunRTATimer);
|
||||
Register(g_userSettings.game.recordingMode);
|
||||
Register(g_userSettings.game.menuScalingMode);
|
||||
Register(g_userSettings.game.removeQuestMapMarkers);
|
||||
Register(g_userSettings.game.showInputViewer);
|
||||
Register(g_userSettings.game.showInputViewerGyro);
|
||||
|
||||
@@ -19,6 +19,7 @@ void applyPresetClassic() {
|
||||
s.game.internalResolutionScale.setValue(1);
|
||||
s.game.shadowResolutionMultiplier.setValue(1);
|
||||
s.game.hideTvSettingsScreen.setValue(false);
|
||||
s.game.menuScalingMode.setValue(MenuScaling::GameCube);
|
||||
AuroraSetViewportPolicy(AURORA_VIEWPORT_FIT);
|
||||
}
|
||||
|
||||
@@ -47,6 +48,7 @@ void applyPresetDusk() {
|
||||
s.game.shadowResolutionMultiplier.setValue(4);
|
||||
s.game.enableGyroAim.setValue(true);
|
||||
s.game.autoSave.setValue(true);
|
||||
s.game.menuScalingMode.setValue(MenuScaling::Dusklight);
|
||||
s.game.enhancedMapMenus.setValue(true);
|
||||
}
|
||||
|
||||
|
||||
@@ -70,6 +70,12 @@ constexpr std::array kGyroInputModeLabels = {
|
||||
"Mouse",
|
||||
};
|
||||
|
||||
constexpr std::array kMenuScalingModeLabels = {
|
||||
"GameCube",
|
||||
"Wii",
|
||||
"Dusklight",
|
||||
};
|
||||
|
||||
bool try_parse_backend(std::string_view backend, AuroraBackend& outBackend) {
|
||||
if (backend == "auto") {
|
||||
outBackend = BACKEND_AUTO;
|
||||
@@ -1420,8 +1426,44 @@ SettingsWindow::SettingsWindow(bool prelaunch) : mPrelaunch(prelaunch) {
|
||||
.helpText = "Show gyro sensor values in the input viewer.",
|
||||
.isDisabled = [] { return !getSettings().game.showInputViewer; },
|
||||
});
|
||||
|
||||
leftPane.add_section("Game");
|
||||
leftPane.register_control(
|
||||
leftPane.add_select_button({
|
||||
.key = "Menu Scaling Mode",
|
||||
.getValue =
|
||||
[] {
|
||||
return kMenuScalingModeLabels[static_cast<u8>(
|
||||
getSettings().game.menuScalingMode.getValue())];
|
||||
},
|
||||
.isModified =
|
||||
[] {
|
||||
const auto& mode = getSettings().game.menuScalingMode;
|
||||
return mode.getValue() != mode.getDefaultValue();
|
||||
},
|
||||
}),
|
||||
rightPane, [](Pane& pane) {
|
||||
for (int i = 0; i < static_cast<int>(kMenuScalingModeLabels.size()); ++i) {
|
||||
pane
|
||||
.add_button({
|
||||
.text = kMenuScalingModeLabels[i],
|
||||
.isSelected =
|
||||
[i] {
|
||||
return getSettings().game.menuScalingMode.getValue() ==
|
||||
static_cast<MenuScaling>(i);
|
||||
;
|
||||
},
|
||||
})
|
||||
.on_pressed([i] {
|
||||
mDoAud_seStartMenu(kSoundItemChange);
|
||||
getSettings().game.menuScalingMode.setValue(
|
||||
static_cast<MenuScaling>(i));
|
||||
;
|
||||
config::Save();
|
||||
});
|
||||
}
|
||||
pane.add_rml("<br/>Changes how the Collection and File Select menus scale to your "
|
||||
"aspect ratio.");
|
||||
});
|
||||
config_bool_select(leftPane, rightPane, getSettings().game.hideTvSettingsScreen,
|
||||
{
|
||||
.key = "Skip TV Settings Screen",
|
||||
|
||||
Reference in New Issue
Block a user