Handle MC running at 0 FPS

This commit is contained in:
James Seibel
2026-01-31 10:27:49 -06:00
parent d7358ed7a3
commit 87222f3b39
3 changed files with 39 additions and 3 deletions
@@ -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
}
@@ -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