diff --git a/src/main/java/com/replaymod/core/handler/MainMenuHandler.java b/src/main/java/com/replaymod/core/handler/MainMenuHandler.java index 5f8b325b..2f73dc93 100644 --- a/src/main/java/com/replaymod/core/handler/MainMenuHandler.java +++ b/src/main/java/com/replaymod/core/handler/MainMenuHandler.java @@ -48,7 +48,7 @@ public class MainMenuHandler extends EventRegistrations { // Buttons that aren't in a rectangle directly above our space don't need moving if (button.x + width(button) < gui.width / 2 - 100 || button.x > gui.width / 2 + 100 - || button.y > gui.height / 4 + 10 + 4 * 24) continue; + || button.y > gui.height / 4 + 10 + 4 * 24 + 20) continue; // Move button up to make space for one rows of buttons // and then move back down by 10 to compensate for the space to the exit button that was already there int offset = -1 * 24 + 10; diff --git a/src/main/java/com/replaymod/core/versions/MCVer.java b/src/main/java/com/replaymod/core/versions/MCVer.java index a32e03af..eefca372 100644 --- a/src/main/java/com/replaymod/core/versions/MCVer.java +++ b/src/main/java/com/replaymod/core/versions/MCVer.java @@ -22,6 +22,7 @@ import net.minecraft.world.chunk.WorldChunk; //#if MC>=11400 import com.replaymod.core.mixin.AbstractButtonWidgetAccessor; +import net.minecraft.client.gui.screen.TitleScreen; import net.minecraft.client.gui.widget.AbstractButtonWidget; import java.util.concurrent.CompletableFuture; //#else @@ -470,6 +471,13 @@ public class MCVer { public static void addButton(Screen screen, ButtonWidget button) { GuiScreenAccessor acc = (GuiScreenAccessor) screen; + //#if MC>=11400 + if (screen instanceof TitleScreen && isModLoaded("modmenu")) { + // Since we bypass the usual addButton, we need to manually move our buttons down + // https://github.com/Prospector/ModMenu/blob/eea70ec37581a7229142cf21df795fdacc6a7b4c/src/main/java/io/github/prospector/modmenu/mixin/TitleScreenMixin.java#L42 + button.y += 12; + } + //#endif acc.getButtons().add(button); //#if MC>=11300 acc.getChildren().add(button);