From 55b94d82d2265f179901fbcd5c0de094301409ba Mon Sep 17 00:00:00 2001 From: Ennui Langeweile <85590273+EnnuiL@users.noreply.github.com> Date: Tue, 5 Nov 2024 14:34:12 -0300 Subject: [PATCH] Backport Murderleague to 1.21.1 --- .../OkZoomerAbstractSelectionList.java | 18 +++++--- .../mixin/common/GameRendererMixin.java | 4 +- .../ok_zoomer/mixin/common/GuiMixin.java | 8 ++++ .../mixin/common/MouseHandlerMixin.java | 2 +- .../mixin/common/RenderStateShardMixin.java | 45 ------------------- .../ennuil/ok_zoomer/utils/ZoomUtils.java | 6 +-- .../wrench_wrapper/WrenchWrapper.java | 4 +- .../zoom/overlays/SpyglassZoomOverlay.java | 5 ++- .../zoom/overlays/ZoomerZoomOverlay.java | 17 +++++-- .../src/main/resources/ok_zoomer.mixins.json | 3 +- fabric/build.gradle | 5 ++- .../ennuil/ok_zoomer/OkZoomerClientMod.java | 6 +-- .../ok_zoomer/compat/TrinketsCompat.java | 14 ++++++ fabric/src/main/resources/fabric.mod.json | 2 +- gradle/libs.versions.toml | 8 ++-- .../resources/META-INF/neoforge.mods.toml | 12 ++++- 16 files changed, 82 insertions(+), 77 deletions(-) delete mode 100644 common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/RenderStateShardMixin.java create mode 100644 fabric/src/main/java/io/github/ennuil/ok_zoomer/compat/TrinketsCompat.java diff --git a/common/src/main/java/io/github/ennuil/ok_zoomer/config/screen/components/OkZoomerAbstractSelectionList.java b/common/src/main/java/io/github/ennuil/ok_zoomer/config/screen/components/OkZoomerAbstractSelectionList.java index 5c208d46..19937d7f 100644 --- a/common/src/main/java/io/github/ennuil/ok_zoomer/config/screen/components/OkZoomerAbstractSelectionList.java +++ b/common/src/main/java/io/github/ennuil/ok_zoomer/config/screen/components/OkZoomerAbstractSelectionList.java @@ -1,5 +1,6 @@ package io.github.ennuil.ok_zoomer.config.screen.components; +import com.mojang.blaze3d.systems.RenderSystem; import it.unimi.dsi.fastutil.ints.IntArrayList; import it.unimi.dsi.fastutil.ints.IntList; import net.minecraft.client.Minecraft; @@ -17,7 +18,6 @@ import net.minecraft.client.gui.navigation.ScreenAxis; import net.minecraft.client.gui.navigation.ScreenDirection; import net.minecraft.client.gui.screens.Screen; -import net.minecraft.client.renderer.RenderType; import net.minecraft.network.chat.CommonComponents; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; @@ -133,15 +133,19 @@ protected void narrateListElementPosition(NarrationElementOutput narrationElemen } private void renderListBackground(GuiGraphics graphics) { + RenderSystem.enableBlend(); var backgroundLocation = this.minecraft.level == null ? MENU_LIST_BACKGROUND : INWORLD_MENU_LIST_BACKGROUND; - graphics.blit(RenderType::guiTextured, backgroundLocation, this.getX(), this.getY(), this.getRight(), this.getBottom() + this.getScrollAmount(), this.width, this.height, 32,32); + graphics.blit(backgroundLocation, this.getX(), this.getY(), this.getRight(), this.getBottom() + this.getScrollAmount(), this.width, this.height, 32,32); + RenderSystem.disableBlend(); } private void renderListSeparators(GuiGraphics graphics) { + RenderSystem.enableBlend(); var headerSeparatorLocation = this.minecraft.level == null ? Screen.HEADER_SEPARATOR : Screen.INWORLD_HEADER_SEPARATOR; var footerSeparatorLocation = this.minecraft.level == null ? Screen.FOOTER_SEPARATOR : Screen.INWORLD_FOOTER_SEPARATOR; - graphics.blit(RenderType::guiTextured, headerSeparatorLocation, this.getX(), this.getY() - 2, 0.0F, 0.0F, this.width, 2, 32, 2); - graphics.blit(RenderType::guiTextured, footerSeparatorLocation, this.getX(), this.getBottom(), 0.0F, 0.0F, this.width, 2, 32, 2); + graphics.blit(headerSeparatorLocation, this.getX(), this.getY() - 2, 0.0F, 0.0F, this.width, 2, 32, 2); + graphics.blit(footerSeparatorLocation, this.getX(), this.getBottom(), 0.0F, 0.0F, this.width, 2, 32, 2); + RenderSystem.disableBlend(); } private void renderScrollBar(GuiGraphics graphics) { @@ -151,8 +155,10 @@ private void renderScrollBar(GuiGraphics graphics) { var scale = (this.scrollAmount / (double) (this.contentHeight - this.height)); var y = this.getY() + (int) (scale * (this.height - size)); - graphics.blitSprite(RenderType::guiTextured, SCROLLER_BACKGROUND_SPRITE, x, this.getY(), 6, this.height); - graphics.blitSprite(RenderType::guiTextured, SCROLLER_SPRITE, x, y, 6, size); + RenderSystem.enableBlend(); + graphics.blitSprite(SCROLLER_BACKGROUND_SPRITE, x, this.getY(), 6, this.height); + graphics.blitSprite(SCROLLER_SPRITE, x, y, 6, size); + RenderSystem.disableBlend(); } protected int getScrollBarPosX() { diff --git a/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/GameRendererMixin.java b/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/GameRendererMixin.java index ce6e1590..fc946551 100644 --- a/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/GameRendererMixin.java +++ b/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/GameRendererMixin.java @@ -46,11 +46,11 @@ private int modifyCulling(int original) { } @ModifyReturnValue(method = "getFov", at = @At(value = "RETURN", ordinal = 1)) - private float modifyFov(float original, @Local(argsOnly = true) float partialTicks) { + private double modifyFov(double original, @Local(argsOnly = true) float partialTicks) { if (!Zoom.isTransitionActive()) { return original; } else { - return Zoom.getTransitionMode().applyZoom(original, partialTicks); + return Zoom.getTransitionMode().applyZoom((float) original, partialTicks); } } diff --git a/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/GuiMixin.java b/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/GuiMixin.java index cd7c44a6..76d631be 100644 --- a/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/GuiMixin.java +++ b/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/GuiMixin.java @@ -7,6 +7,7 @@ import com.llamalad7.mixinextras.sugar.Local; import com.llamalad7.mixinextras.sugar.Share; import com.llamalad7.mixinextras.sugar.ref.LocalBooleanRef; +import com.mojang.blaze3d.systems.RenderSystem; import io.github.ennuil.ok_zoomer.config.OkZoomerConfigManager; import io.github.ennuil.ok_zoomer.zoom.Zoom; import net.minecraft.client.DeltaTracker; @@ -89,7 +90,14 @@ private void hideCrosshair(GuiGraphics graphics, DeltaTracker deltaTracker, Oper boolean persistentInterface = OkZoomerConfigManager.CONFIG.features.persistentInterface.value(); boolean hideCrosshair = OkZoomerConfigManager.CONFIG.tweaks.hideCrosshair.value(); if (persistentInterface || hideCrosshair || !Zoom.isTransitionActive()) { + if (hideCrosshair) { + float fade = 1.0F - Zoom.getTransitionMode().getFade(deltaTracker.getGameTimeDeltaPartialTick(true)); + RenderSystem.setShaderColor(fade, fade, fade, fade); + } original.call(graphics, deltaTracker); + if (hideCrosshair) { + RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F); + } } else { // TODO - This has been recycled once, this should become a method var lastPose = graphics.pose().last().pose(); diff --git a/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/MouseHandlerMixin.java b/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/MouseHandlerMixin.java index 95faf272..7b957595 100644 --- a/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/MouseHandlerMixin.java +++ b/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/MouseHandlerMixin.java @@ -30,7 +30,7 @@ public abstract class MouseHandlerMixin { at = @At(value = "INVOKE", target = "Lnet/minecraft/client/player/LocalPlayer;isSpectator()Z"), cancellable = true ) - private void zoomerOnMouseScroll(CallbackInfo ci, @Local int k) { + private void zoomerOnMouseScroll(CallbackInfo ci, @Local(ordinal = 2) int k) { if (k != 0) { if (OkZoomerConfigManager.CONFIG.features.zoomScrolling.value()) { if (OkZoomerConfigManager.CONFIG.features.zoomMode.value().equals(ZoomModes.PERSISTENT)) { diff --git a/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/RenderStateShardMixin.java b/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/RenderStateShardMixin.java deleted file mode 100644 index a1073975..00000000 --- a/common/src/main/java/io/github/ennuil/ok_zoomer/mixin/common/RenderStateShardMixin.java +++ /dev/null @@ -1,45 +0,0 @@ -package io.github.ennuil.ok_zoomer.mixin.common; - -import com.mojang.blaze3d.systems.RenderSystem; -import io.github.ennuil.ok_zoomer.config.OkZoomerConfigManager; -import io.github.ennuil.ok_zoomer.zoom.Zoom; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.RenderStateShard; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; - -@Mixin(RenderStateShard.class) -public abstract class RenderStateShardMixin { - @Inject( - method = { - "method_62269", - "lambda$static$14()V" - }, - at = @At("TAIL"), - allow = 1, - remap = false - ) - private static void fadeCrosshair(CallbackInfo ci) { - if (OkZoomerConfigManager.CONFIG.tweaks.hideCrosshair.value()) { - float fade = 1.0F - Zoom.getTransitionMode().getFade(Minecraft.getInstance().getDeltaTracker().getGameTimeDeltaPartialTick(true)); - RenderSystem.setShaderColor(fade, fade, fade, fade); - } - } - - @Inject( - method = { - "method_62268", - "lambda$static$15()V" - }, - at = @At("HEAD"), - allow = 1, - remap = false - ) - private static void resetCrosshairFade(CallbackInfo ci) { - if (OkZoomerConfigManager.CONFIG.tweaks.hideCrosshair.value()) { - RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F); - } - } -} diff --git a/common/src/main/java/io/github/ennuil/ok_zoomer/utils/ZoomUtils.java b/common/src/main/java/io/github/ennuil/ok_zoomer/utils/ZoomUtils.java index bb2abf5d..7a8f48d7 100644 --- a/common/src/main/java/io/github/ennuil/ok_zoomer/utils/ZoomUtils.java +++ b/common/src/main/java/io/github/ennuil/ok_zoomer/utils/ZoomUtils.java @@ -45,7 +45,7 @@ public static void validateZoomCulling(Minecraft minecraft) { int zoomCullingFov = Math.ceilDiv(fov, divisor); if (zoomCullingFov != lastZoomCullingFov) { - minecraft.levelRenderer.getSectionOcclusionGraph().invalidate(); + minecraft.levelRenderer.needsUpdate(); } lastZoomCullingFov = zoomCullingFov; @@ -96,7 +96,7 @@ public static void unbindConflictingKey(Minecraft client, boolean userPrompted) if (client.options.keySaveHotbarActivator.isDefault()) { if (userPrompted) { ZoomUtils.LOGGER.info("[Ok Zoomer] The \"Save Toolbar Activator\" keybind was occupying C! Unbinding..."); - client.getToastManager().addToast(SystemToast.multiline( + client.getToasts().addToast(SystemToast.multiline( client, TOAST_ID, Component.translatable("toast.ok_zoomer.title"), Component.translatable("toast.ok_zoomer.unbind_conflicting_key.success"))); } else { @@ -108,7 +108,7 @@ public static void unbindConflictingKey(Minecraft client, boolean userPrompted) } else { ZoomUtils.LOGGER.info("[Ok Zoomer] No conflicts with the \"Save Toolbar Activator\" keybind were found!"); if (userPrompted) { - client.getToastManager().addToast(SystemToast.multiline( + client.getToasts().addToast(SystemToast.multiline( client, TOAST_ID, Component.translatable("toast.ok_zoomer.title"), Component.translatable("toast.ok_zoomer.unbind_conflicting_key.no_conflict"))); } diff --git a/common/src/main/java/io/github/ennuil/ok_zoomer/wrench_wrapper/WrenchWrapper.java b/common/src/main/java/io/github/ennuil/ok_zoomer/wrench_wrapper/WrenchWrapper.java index beb1a3be..3b2d03a7 100644 --- a/common/src/main/java/io/github/ennuil/ok_zoomer/wrench_wrapper/WrenchWrapper.java +++ b/common/src/main/java/io/github/ennuil/ok_zoomer/wrench_wrapper/WrenchWrapper.java @@ -12,7 +12,9 @@ public static C create(String family, String id, Cl if (WrenchWrapper.getClass("org.quiltmc.loader.api.QuiltLoader") != null) { var clazz = WrenchWrapper.getClass("io.github.ennuil.ok_zoomer.wrench_wrapper.quilt.QuiltWrapper"); return (C) clazz.getMethod("create", String.class, String.class, Class.class).invoke(null, family, id, configCreatorClass); - } else if (WrenchWrapper.getClass("net.fabricmc.loader.FabricLoader") != null) { + } else if (WrenchWrapper.getClass("net.fabricmc.loader.FabricLoader") != null + && WrenchWrapper.getClass("net.neoforged.neoforge.common.NeoForge") == null) { + // The above check immunizes Wrench Wrapper's wrapper against Sinytra Connector var clazz = WrenchWrapper.getClass("io.github.ennuil.ok_zoomer.wrench_wrapper.fabric.FabricWrapper"); return (C) clazz.getMethod("create", String.class, String.class, Class.class).invoke(null, family, id, configCreatorClass); } else if (WrenchWrapper.getClass("net.neoforged.neoforge.common.NeoForge") != null) { diff --git a/common/src/main/java/io/github/ennuil/ok_zoomer/zoom/overlays/SpyglassZoomOverlay.java b/common/src/main/java/io/github/ennuil/ok_zoomer/zoom/overlays/SpyglassZoomOverlay.java index 005a0c10..433c9c44 100644 --- a/common/src/main/java/io/github/ennuil/ok_zoomer/zoom/overlays/SpyglassZoomOverlay.java +++ b/common/src/main/java/io/github/ennuil/ok_zoomer/zoom/overlays/SpyglassZoomOverlay.java @@ -1,5 +1,6 @@ package io.github.ennuil.ok_zoomer.zoom.overlays; +import com.mojang.blaze3d.systems.RenderSystem; import io.github.ennuil.ok_zoomer.zoom.transitions.TransitionMode; import net.minecraft.client.DeltaTracker; import net.minecraft.client.gui.GuiGraphics; @@ -45,7 +46,9 @@ public void renderOverlay(GuiGraphics graphics, DeltaTracker deltaTracker, Trans int y = (guiHeight - height) / 2; int borderX = x + width; int borderY = y + height; - graphics.blit(RenderType::guiTextured, textureId, x, y, 0.0F, 0.0F, width, height, width, height); + RenderSystem.enableBlend(); + graphics.blit(textureId, x, y, 0.0F, 0.0F, width, height, width, height); + RenderSystem.disableBlend(); graphics.fill(RenderType.guiOverlay(), 0, borderY, guiWidth, guiHeight, -90, CommonColors.BLACK); graphics.fill(RenderType.guiOverlay(), 0, 0, guiWidth, y, -90, CommonColors.BLACK); graphics.fill(RenderType.guiOverlay(), 0, y, x, borderY, -90, CommonColors.BLACK); diff --git a/common/src/main/java/io/github/ennuil/ok_zoomer/zoom/overlays/ZoomerZoomOverlay.java b/common/src/main/java/io/github/ennuil/ok_zoomer/zoom/overlays/ZoomerZoomOverlay.java index 3b58b706..3414995e 100644 --- a/common/src/main/java/io/github/ennuil/ok_zoomer/zoom/overlays/ZoomerZoomOverlay.java +++ b/common/src/main/java/io/github/ennuil/ok_zoomer/zoom/overlays/ZoomerZoomOverlay.java @@ -1,11 +1,11 @@ package io.github.ennuil.ok_zoomer.zoom.overlays; +import com.mojang.blaze3d.platform.GlStateManager; +import com.mojang.blaze3d.systems.RenderSystem; import io.github.ennuil.ok_zoomer.zoom.transitions.TransitionMode; import net.minecraft.client.DeltaTracker; import net.minecraft.client.gui.GuiGraphics; -import net.minecraft.client.renderer.RenderType; import net.minecraft.resources.ResourceLocation; -import net.minecraft.util.ARGB; // Implements the zoom overlay public class ZoomerZoomOverlay implements ZoomOverlay { @@ -24,9 +24,18 @@ public boolean getActive() { @Override public void renderOverlay(GuiGraphics graphics, DeltaTracker deltaTracker, TransitionMode transitionMode) { + RenderSystem.disableDepthTest(); + RenderSystem.depthMask(false); + RenderSystem.enableBlend(); + RenderSystem.blendFuncSeparate(GlStateManager.SourceFactor.ZERO, GlStateManager.DestFactor.ONE_MINUS_SRC_COLOR, GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO); float fade = transitionMode.getFade(deltaTracker.getGameTimeDeltaPartialTick(true)); - int color = ARGB.colorFromFloat(1.0F, fade, fade, fade); - graphics.blit(RenderType::vignette, this.textureId, 0, 0, 0.0F, 0.0F, graphics.guiWidth(), graphics.guiHeight(), graphics.guiWidth(), graphics.guiHeight(), color); + RenderSystem.setShaderColor(fade, fade, fade, 1.0F); + graphics.blit(this.textureId, 0, 0, -90, 0.0F, 0.0F, graphics.guiWidth(), graphics.guiHeight(), graphics.guiWidth(), graphics.guiHeight()); + RenderSystem.depthMask(true); + RenderSystem.enableDepthTest(); + RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F); + RenderSystem.defaultBlendFunc(); + RenderSystem.disableBlend(); } @Override diff --git a/common/src/main/resources/ok_zoomer.mixins.json b/common/src/main/resources/ok_zoomer.mixins.json index f1771b93..56169317 100644 --- a/common/src/main/resources/ok_zoomer.mixins.json +++ b/common/src/main/resources/ok_zoomer.mixins.json @@ -9,8 +9,7 @@ "common.EditBoxMixin", "common.GameRendererMixin", "common.GuiMixin", - "common.MouseHandlerMixin", - "common.RenderStateShardMixin" + "common.MouseHandlerMixin" ], "injectors": { "defaultRequire": 1 diff --git a/fabric/build.gradle b/fabric/build.gradle index 59ceae74..ae3fdb8d 100644 --- a/fabric/build.gradle +++ b/fabric/build.gradle @@ -5,6 +5,7 @@ plugins { repositories { maven { url = 'https://maven.terraformersmc.com/releases' } + maven { url = 'https://maven.ladysnake.org/releases' } } base.archivesName = 'ok_zoomer-fabric' @@ -26,8 +27,8 @@ dependencies { modCompileOnly libs.wrench.wrapper - //modCompileOnly libs.bundles.trinkets - //modLocalRuntime libs.bundles.trinkets + modCompileOnly libs.bundles.trinkets + modLocalRuntime libs.bundles.trinkets include libs.wrench.wrapper } diff --git a/fabric/src/main/java/io/github/ennuil/ok_zoomer/OkZoomerClientMod.java b/fabric/src/main/java/io/github/ennuil/ok_zoomer/OkZoomerClientMod.java index fdbbc2e8..d7c64fe5 100644 --- a/fabric/src/main/java/io/github/ennuil/ok_zoomer/OkZoomerClientMod.java +++ b/fabric/src/main/java/io/github/ennuil/ok_zoomer/OkZoomerClientMod.java @@ -1,5 +1,6 @@ package io.github.ennuil.ok_zoomer; +import io.github.ennuil.ok_zoomer.compat.TrinketsCompat; import io.github.ennuil.ok_zoomer.config.OkZoomerConfigManager; import io.github.ennuil.ok_zoomer.events.*; import io.github.ennuil.ok_zoomer.key_binds.ZoomKeyBinds; @@ -9,6 +10,7 @@ import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper; +import net.fabricmc.loader.api.FabricLoader; // This class is responsible for registering the commands and packets public class OkZoomerClientMod implements ClientModInitializer { @@ -34,11 +36,9 @@ public void onInitializeClient() { FabricZoomUtils.addInitialPredicates(); - /* - // mod compat + // Mod compat if (FabricLoader.getInstance().isModLoaded("trinkets")) { TrinketsCompat.init(); } - */ } } diff --git a/fabric/src/main/java/io/github/ennuil/ok_zoomer/compat/TrinketsCompat.java b/fabric/src/main/java/io/github/ennuil/ok_zoomer/compat/TrinketsCompat.java new file mode 100644 index 00000000..475728a4 --- /dev/null +++ b/fabric/src/main/java/io/github/ennuil/ok_zoomer/compat/TrinketsCompat.java @@ -0,0 +1,14 @@ +package io.github.ennuil.ok_zoomer.compat; + +import dev.emi.trinkets.api.TrinketsApi; +import io.github.ennuil.ok_zoomer.utils.FabricZoomUtils; +import io.github.ennuil.ok_zoomer.utils.ZoomUtils; + +public class TrinketsCompat { + public static void init() { + ZoomUtils.addSpyglassProvider(player -> { + // Trinkets inventory is an AutoSyncedComponent and therefore safe to query on the client + return player.getComponent(TrinketsApi.TRINKET_COMPONENT).isEquipped(FabricZoomUtils.IS_VALID_SPYGLASS); + }); + } +} diff --git a/fabric/src/main/resources/fabric.mod.json b/fabric/src/main/resources/fabric.mod.json index 4499ff6c..42a15e33 100644 --- a/fabric/src/main/resources/fabric.mod.json +++ b/fabric/src/main/resources/fabric.mod.json @@ -26,7 +26,7 @@ ], "depends": { "fabricloader": ">=0.16.7", - "minecraft": ">=1.21.2 <1.22", + "minecraft": ">=1.21.0 <1.21.2", "fabric-api": ">=0.106.0" }, "custom": { diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 648e8a60..45e1e871 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,6 +1,6 @@ # The latest versions are available at https://quiltmc.org/en/usage/latest-versions/ [versions] -minecraft = "1.21.3" +minecraft = "1.21.1" parchment_minecraft = "1.21" parchment_mappings = "2024.07.28" @@ -8,12 +8,12 @@ parchment_mappings = "2024.07.28" quilt_loom = "1.8.5" quilt_loader = "0.27.0-beta.1" moddevgradle = "2.0.42-beta" -neoforge = "21.3.10-beta" +neoforge = "21.1.74" -fabric_api = "0.107.0+1.21.3" +fabric_api = "0.107.0+1.21.1" wrench_wrapper = "0.6.0" -modmenu = "12.0.0-beta.1" +modmenu = "11.0.3" trinkets = "3.10.0" cca = "6.1.1" diff --git a/norge/src/main/resources/META-INF/neoforge.mods.toml b/norge/src/main/resources/META-INF/neoforge.mods.toml index 83fc7cd9..697956c3 100644 --- a/norge/src/main/resources/META-INF/neoforge.mods.toml +++ b/norge/src/main/resources/META-INF/neoforge.mods.toml @@ -21,17 +21,25 @@ Adds a highly configurable zoom key. By default, this mod provides its own take [[dependencies.ok_zoomer]] modId = "neoforge" type = "required" -versionRange = "[21.2.0-beta,)" +versionRange = "[21.1.0,21.2.0)" ordering = "NONE" side = "CLIENT" [[dependencies.ok_zoomer]] modId = "minecraft" type = "required" -versionRange = "[1.21.2,1.22)" +versionRange = "[1.21.0,1.21.2)" ordering = "NONE" side = "CLIENT" +[[dependencies.ok_zoomer]] +modId = "okzoomer" +type = "incompatible" +reason = "The mod \"okzoomer-neoforge\", a now-redundant port of Ok Zoomer, causes interference with the official Ok Zoomer's zoom. This causes issues on the proper functioning of the zoom when both are used. Please remove one of the zoom mod JARs to proceed." +versionRange = "*" +ordering = "NONE" +side = "BOTH" + [mc-publish] modrinth = "${modrinth_id}" curseforge = "${curseforge_id}"