From b3b3eb4d556282c12582a8e4971b86a51534e620 Mon Sep 17 00:00:00 2001 From: Martin Prokoph Date: Thu, 2 Oct 2025 16:21:48 +0200 Subject: [PATCH] feat: switch to new MidnightLib-based screen What used to be the advanced config screen is now the one-and-only default config screen --- .../midnightcontrols/client/MidnightControlsModMenu.java | 8 ++++---- .../client/mixin/GameOptionsScreenMixin.java | 3 ++- .../resources/assets/midnightcontrols/lang/en_us.json | 3 ++- gradle.properties | 2 +- 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/common/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightControlsModMenu.java b/common/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightControlsModMenu.java index 010234d..a603608 100644 --- a/common/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightControlsModMenu.java +++ b/common/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightControlsModMenu.java @@ -21,8 +21,8 @@ import eu.midnightdust.midnightcontrols.client.gui.MidnightControlsSettingsScree * @since 1.1.0 */ public class MidnightControlsModMenu implements ModMenuApi { - @Override - public ConfigScreenFactory getModConfigScreenFactory() { - return parent -> new MidnightControlsSettingsScreen(parent, false); - } +// @Override +// public ConfigScreenFactory getModConfigScreenFactory() { +// return parent -> new MidnightControlsSettingsScreen(parent, false); +// } } diff --git a/common/src/main/java/eu/midnightdust/midnightcontrols/client/mixin/GameOptionsScreenMixin.java b/common/src/main/java/eu/midnightdust/midnightcontrols/client/mixin/GameOptionsScreenMixin.java index 6fb92b2..8608817 100644 --- a/common/src/main/java/eu/midnightdust/midnightcontrols/client/mixin/GameOptionsScreenMixin.java +++ b/common/src/main/java/eu/midnightdust/midnightcontrols/client/mixin/GameOptionsScreenMixin.java @@ -9,6 +9,7 @@ package eu.midnightdust.midnightcontrols.client.mixin; +import eu.midnightdust.midnightcontrols.client.MidnightControlsConfig; import eu.midnightdust.midnightcontrols.client.gui.MidnightControlsSettingsScreen; import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.screen.Screen; @@ -34,7 +35,7 @@ import static eu.midnightdust.midnightcontrols.MidnightControls.id; public abstract class GameOptionsScreenMixin extends Screen { @Shadow @Nullable protected OptionListWidget body; @Unique TextIconButtonWidget midnightcontrols$button = TextIconButtonWidget.builder(Text.translatable("midnightcontrols.menu.title.controller"), - (button -> this.client.setScreen(new MidnightControlsSettingsScreen(this, false))), true) + (button -> this.client.setScreen(MidnightControlsConfig.getScreen(this, "midnightcontrols"))), true) .dimension(20,20).texture(id("icon/controller"), 20, 20).build(); protected GameOptionsScreenMixin(Text title) { diff --git a/common/src/main/resources/assets/midnightcontrols/lang/en_us.json b/common/src/main/resources/assets/midnightcontrols/lang/en_us.json index c338c17..ca27b4d 100644 --- a/common/src/main/resources/assets/midnightcontrols/lang/en_us.json +++ b/common/src/main/resources/assets/midnightcontrols/lang/en_us.json @@ -1,5 +1,5 @@ { - "midnightcontrols.midnightconfig.title": "MidnightControls Advanced Config", + "midnightcontrols.midnightconfig.title": "MidnightControls Config", "midnightcontrols.midnightconfig.enum.VirtualMouseSkin.DEFAULT_LIGHT": "Default Light", "midnightcontrols.midnightconfig.enum.VirtualMouseSkin.DEFAULT_DARK": "Default Dark", "midnightcontrols.midnightconfig.enum.VirtualMouseSkin.SECOND_LIGHT": "Second Light", @@ -237,6 +237,7 @@ "midnightcontrols.virtual_mouse.skin.second_light": "Second Light", "midnightcontrols.virtual_mouse.skin.second_dark": "Second Dark", "midnightcontrols.midnightconfig.category.controller": "Controller", + "midnightcontrols.midnightconfig.category.buttons": "Buttons", "midnightcontrols.midnightconfig.category.misc": "Miscellaneous", "midnightcontrols.midnightconfig.category.screens": "Screens", "midnightcontrols.midnightconfig.category.gameplay": "Gameplay", diff --git a/gradle.properties b/gradle.properties index 533f0b4..4c387ee 100644 --- a/gradle.properties +++ b/gradle.properties @@ -15,7 +15,7 @@ modrinth_id = bXX9h73M curseforge_id = 621768 # Configure the IDs here after creating the projects on the websites -midnightlib_version=1.8.0+1.21.9-rc1 +midnightlib_version=1.8.1+1.21.9 fabric_loader_version=0.17.2 fabric_api_version=0.133.13+1.21.9