From 87222f3b39aaeba3db21c1d83a88b13df0605076 Mon Sep 17 00:00:00 2001 From: James Seibel Date: Sat, 31 Jan 2026 10:27:49 -0600 Subject: [PATCH] Handle MC running at 0 FPS --- .../minecraft/MinecraftClientWrapper.java | 27 +++++++++++++++++++ .../minecraft/MinecraftRenderWrapper.java | 13 +++++++-- coreSubProjects | 2 +- 3 files changed, 39 insertions(+), 3 deletions(-) diff --git a/common/src/main/java/com/seibel/distanthorizons/common/wrappers/minecraft/MinecraftClientWrapper.java b/common/src/main/java/com/seibel/distanthorizons/common/wrappers/minecraft/MinecraftClientWrapper.java index 9d6915f92..4e406537a 100644 --- a/common/src/main/java/com/seibel/distanthorizons/common/wrappers/minecraft/MinecraftClientWrapper.java +++ b/common/src/main/java/com/seibel/distanthorizons/common/wrappers/minecraft/MinecraftClientWrapper.java @@ -76,6 +76,7 @@ public class MinecraftClientWrapper implements IMinecraftClientWrapper, IMinecra //======================// // multiplayer handling // //======================// + //region @Override public boolean hasSinglePlayerServer() { return MINECRAFT.hasSingleplayerServer(); } @@ -125,11 +126,14 @@ public class MinecraftClientWrapper implements IMinecraftClientWrapper, IMinecra return (server != null) ? server.version.getString() : "UNKOWN"; } + //endregion + //=================// // player handling // //=================// + //region public LocalPlayer getPlayer() { return MINECRAFT.player; } @@ -166,11 +170,14 @@ public class MinecraftClientWrapper implements IMinecraftClientWrapper, IMinecra return new DhChunkPos(playerPos.x, playerPos.z); } + //endregion + //================// // level handling // //================// + //region @Nullable @Override @@ -189,11 +196,14 @@ public class MinecraftClientWrapper implements IMinecraftClientWrapper, IMinecra return ClientLevelWrapper.getWrapper(level, bypassLevelKeyManager); } + //endregion + //===========// // messaging // //===========// + //region @Override public void sendChatMessage(String string) @@ -233,11 +243,14 @@ public class MinecraftClientWrapper implements IMinecraftClientWrapper, IMinecra #endif } + //endregion + //==========================// // vanilla option overrides // //==========================// + //region public void disableVanillaClouds() { @@ -257,11 +270,14 @@ public class MinecraftClientWrapper implements IMinecraftClientWrapper, IMinecra #endif } + //endregion + //======// // misc // //======// + //region /** * no override and not included in {@link IMinecraftClientWrapper} @@ -315,20 +331,29 @@ public class MinecraftClientWrapper implements IMinecraftClientWrapper, IMinecra #endif } + @Override + public void executeOnRenderThread(Runnable runnable) { MINECRAFT.execute(runnable); } + + //endregion + //=============// // mod support // //=============// + //region @Override public Object getOptionsObject() { return MINECRAFT.options; } + //endregion + //========// // shared // //========// + //region @Override public boolean isDedicatedServer() { return false; } @@ -350,6 +375,8 @@ public class MinecraftClientWrapper implements IMinecraftClientWrapper, IMinecra } } + //endregion + } diff --git a/common/src/main/java/com/seibel/distanthorizons/common/wrappers/minecraft/MinecraftRenderWrapper.java b/common/src/main/java/com/seibel/distanthorizons/common/wrappers/minecraft/MinecraftRenderWrapper.java index 97a113119..11e7cc5d5 100644 --- a/common/src/main/java/com/seibel/distanthorizons/common/wrappers/minecraft/MinecraftRenderWrapper.java +++ b/common/src/main/java/com/seibel/distanthorizons/common/wrappers/minecraft/MinecraftRenderWrapper.java @@ -299,14 +299,23 @@ public class MinecraftRenderWrapper implements IMinecraftRenderWrapper @Override public int getRenderDistance() { - #if MC_VER < MC_1_18_2 - //FIXME: How to resolve this? + #if MC_VER <= MC_1_17_1 return MC.options.renderDistance; #else return MC.options.getEffectiveRenderDistance(); #endif } + @Override + public int getFrameLimit() + { + #if MC_VER <= MC_1_18_2 + return MC.options.framerateLimit; + #else + return MC.options.framerateLimit().get(); + #endif + } + protected RenderTarget getRenderTarget() { return MC.getMainRenderTarget(); } @Override diff --git a/coreSubProjects b/coreSubProjects index 59e35ffad..00be9a3c4 160000 --- a/coreSubProjects +++ b/coreSubProjects @@ -1 +1 @@ -Subproject commit 59e35ffad36c7f97fe4f716787ec6e23797b5614 +Subproject commit 00be9a3c4fa12fa9ce56ed8f9635985ecd4977e9