Update to latest neoforge 1.21.9 version

This commit is contained in:
James Seibel
2025-10-07 07:18:32 -05:00
parent 9cfdbdc0ca
commit 8708ca3048
9 changed files with 36 additions and 22 deletions
+1 -1
View File
@@ -19,7 +19,7 @@ plugins {
id "systems.manifold.manifold-gradle-plugin" version "0.0.2-alpha"
// Architectury is used here only as a replacement for forge's own loom
id "dev.architectury.loom" version "1.10-SNAPSHOT" apply false
id "dev.architectury.loom" version "1.11-SNAPSHOT" apply false
}
@@ -5,7 +5,7 @@ import com.seibel.distanthorizons.api.methods.events.abstractEvents.DhApiAfterDh
import com.seibel.distanthorizons.api.methods.events.abstractEvents.DhApiBeforeDhInitEvent;
import com.seibel.distanthorizons.common.commands.CommandInitializer;
import com.seibel.distanthorizons.common.wrappers.DependencySetup;
import com.seibel.distanthorizons.common.wrappers.gui.DebugScreenEntry;
import com.seibel.distanthorizons.common.wrappers.gui.DhDebugScreenEntry;
import com.seibel.distanthorizons.common.wrappers.minecraft.MinecraftServerWrapper;
import com.seibel.distanthorizons.core.api.internal.ClientApi;
import com.seibel.distanthorizons.core.api.internal.SharedApi;
@@ -87,7 +87,7 @@ public abstract class AbstractModInitializer
#if MC_VER < MC_1_21_9
// debug screen rendering handled via a mixin
#else
DebugScreenEntry.register();
DhDebugScreenEntry.register();
#endif
this.subscribeClientStartedEvent(this::postInit);
@@ -21,10 +21,10 @@ import net.minecraft.world.level.chunk.LevelChunk;
#if MC_VER < MC_1_21_9
// not supported for older MC versions
public class DebugScreenEntry
public class DhDebugScreenEntry
{}
#else
public class DebugScreenEntry implements net.minecraft.client.gui.components.debug.DebugScreenEntry
public class DhDebugScreenEntry implements net.minecraft.client.gui.components.debug.DebugScreenEntry
{
public static void register()
{
@@ -33,7 +33,7 @@ public class DebugScreenEntry implements net.minecraft.client.gui.components.deb
// The id, this will be displayed on the options screen
ResourceLocation.fromNamespaceAndPath(ModInfo.RESOURCE_NAMESPACE, "distant_horizons"),
// The screen entry
new DebugScreenEntry()
new DhDebugScreenEntry()
);
}
@@ -8,6 +8,7 @@ accessible field net/minecraft/world/level/biome/BiomeManager biomeZoomSeed J
# used when rendering
accessible method net/minecraft/client/renderer/GameRenderer getFov (Lnet/minecraft/client/Camera;FZ)F
accessible field net/minecraft/client/Minecraft deltaTracker Lnet/minecraft/client/DeltaTracker$Timer;
accessible field net/minecraft/client/renderer/LevelRenderer level Lnet/minecraft/client/multiplayer/ClientLevel;
# used for grabbing vanilla rendered chunks
@@ -259,7 +259,6 @@ public class FabricClientProxy implements AbstractModInitializer.IEventProxy
});
// TODO add to forge and neo
WorldRenderEvents.AFTER_ENTITIES.register((renderContext) ->
{
Mat4f projectionMatrix = McObjectConverter.Convert(renderContext.projectionMatrix());
+1 -1
View File
@@ -54,7 +54,7 @@ versionStr=
# This defines what MC version Intellij will use for the preprocessor
# and what version is used automatically by build and run commands
mcVer=1.21.8
mcVer=1.21.9
# Defines the maximum amount of memory Minecraft is allowed when run in a development environment
#minecraftMemoryJavaArg="-Xmx4G"
@@ -61,13 +61,6 @@ import java.util.concurrent.AbstractExecutorService;
#endif
/**
* This handles all events sent to the client,
* and is the starting point for most of the mod.
*
* @author James_Seibel
* @version 2023-7-27
*/
public class NeoforgeClientProxy implements AbstractModInitializer.IEventProxy
{
private static final IMinecraftClientWrapper MC = SingletonInjector.INSTANCE.get(IMinecraftClientWrapper.class);
@@ -257,11 +250,17 @@ public class NeoforgeClientProxy implements AbstractModInitializer.IEventProxy
@SubscribeEvent
public void afterLevelEntityRenderEvent(RenderLevelStageEvent.AfterEntities event)
{
#if MC_VER < MC_1_21_9
IClientLevelWrapper levelWrapper = ClientLevelWrapper.getWrapper((ClientLevel)event.getLevel());
#else
IClientLevelWrapper levelWrapper = ClientLevelWrapper.getWrapper(event.getLevelRenderer().level);
#endif
ClientApi.INSTANCE.renderFade(
ClientApi.RENDER_STATE.mcModelViewMatrix,
ClientApi.RENDER_STATE.mcProjectionMatrix,
ClientApi.RENDER_STATE.frameTime,
ClientLevelWrapper.getWrapper((ClientLevel)event.getLevel())
levelWrapper
);
}
@@ -269,7 +268,14 @@ public class NeoforgeClientProxy implements AbstractModInitializer.IEventProxy
@SubscribeEvent
public void afterLevelTranslucentRenderEvent(RenderLevelStageEvent.AfterTranslucentBlocks event)
{
ClientApi.INSTANCE.renderDeferredLodsForShaders(ClientLevelWrapper.getWrapper((ClientLevel)event.getLevel()),
#if MC_VER < MC_1_21_9
IClientLevelWrapper levelWrapper = ClientLevelWrapper.getWrapper((ClientLevel)event.getLevel());
#else
IClientLevelWrapper levelWrapper = ClientLevelWrapper.getWrapper(event.getLevelRenderer().level);
#endif
ClientApi.INSTANCE.renderDeferredLodsForShaders(
levelWrapper,
ClientApi.RENDER_STATE.mcModelViewMatrix,
ClientApi.RENDER_STATE.mcProjectionMatrix,
ClientApi.RENDER_STATE.frameTime
@@ -279,6 +285,13 @@ public class NeoforgeClientProxy implements AbstractModInitializer.IEventProxy
@SubscribeEvent
public void afterLevelRenderEvent(RenderLevelStageEvent.AfterLevel event)
{
#if MC_VER < MC_1_21_9
IClientLevelWrapper levelWrapper = ClientLevelWrapper.getWrapper((ClientLevel)event.getLevel());
#else
IClientLevelWrapper levelWrapper = ClientLevelWrapper.getWrapper(event.getLevelRenderer().level);
#endif
try
{
// should generally only need to be set once per game session
@@ -296,7 +309,7 @@ public class NeoforgeClientProxy implements AbstractModInitializer.IEventProxy
ClientApi.RENDER_STATE.mcModelViewMatrix,
ClientApi.RENDER_STATE.mcProjectionMatrix,
ClientApi.RENDER_STATE.frameTime,
ClientLevelWrapper.getWrapper((ClientLevel)event.getLevel())
levelWrapper
);
}
@@ -26,7 +26,7 @@ public class MixinDebugScreenOverlay
F3Screen.addStringToDisplay(messages);
}
#else
// handled by DebugScreenEntry for MC versions after 1.21.9
// handled by DhDebugScreenEntry for MC versions after 1.21.9
#endif
}
+4 -3
View File
@@ -41,9 +41,10 @@ fabric_api_version=0.133.14+1.21.9
# (Neo)Forge loader
forge_version=
neoforge_version=21.9.1-beta
# around 6.19 neo changed how their render API works, failing to meet this causes the game to crash
neoforge_version_range=[*,)
neoforge_version=21.9.15-beta
# sometime before 21.9.15-beta Neoforge changed how their rendering API events handle levels
# so we can't support both versions at once
neoforge_version_range=[21.9.15-beta,)
# (Neo)Forge mod versions
starlight_version_forge=