]> git.lizzy.rs Git - LightOverlay.git/commitdiff
Update to Forge 1.18 and fix #128
authorshedaniel <daniel@shedaniel.me>
Mon, 6 Dec 2021 18:02:25 +0000 (02:02 +0800)
committershedaniel <daniel@shedaniel.me>
Mon, 6 Dec 2021 18:02:25 +0000 (02:02 +0800)
21 files changed:
README.md
common/build.gradle
common/src/main/java/me/shedaniel/lightoverlay/common/ClothScreen.java
common/src/main/java/me/shedaniel/lightoverlay/common/LightOverlay.java
common/src/main/java/me/shedaniel/lightoverlay/common/LightOverlayTicker.java
fabric/build.gradle
forge/build.gradle
forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlay.java
forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlayCloth.java
forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlayImpl.java
forge/src/main/java/me/shedaniel/lightoverlay/forge/mixin/MixinClientConnection.java
forge/src/main/java/me/shedaniel/lightoverlay/forge/mixin/MixinDebugRenderer.java
forge/src/main/java/me/shedaniel/lightoverlay/forge/mixin/MixinLevelRenderer.java
forge/src/main/resources/META-INF/Connection.js [deleted file]
forge/src/main/resources/META-INF/DebugRenderer.js [deleted file]
forge/src/main/resources/META-INF/LevelRenderer.js [deleted file]
forge/src/main/resources/META-INF/coremods.json [deleted file]
forge/src/main/resources/META-INF/mods.toml
forge/src/main/resources/lightoverlay-forge.mixins.json [new file with mode: 0644]
gradle.properties
settings.gradle

index 381a798f0147e7e5f4c00b3cf34debd29a42a28f..e2acc10a2d463b9eeabb424e033bd3f315ddd62a 100644 (file)
--- a/README.md
+++ b/README.md
@@ -9,4 +9,4 @@ Forge: `gradlew :forge:runClient`
 Or use the run configs if you are using IntelliJ IDEA.
 
 # Compiling
-Run `gradlew buildMerged`, and the merged jar will be in `build/libs/`.
\ No newline at end of file
+Run `gradlew build`, and the merged jar will be in `fabric|forge/build/libs/`.
\ No newline at end of file
index 9ff509ea9590c040762a32f63e40ca434619bf29..8d4e31d998896c93dbde3c337b2d3108eab8f68d 100644 (file)
@@ -9,7 +9,7 @@ dependencies {
 }
 
 architectury {
-    common(false)
+    common()
 }
 
 configurations {
index 5812d2f75c633bbb5a0ac30c1a3a6397d7f91927..243d4f33a7906d112d071757309fe30a97623cb5 100644 (file)
@@ -22,14 +22,10 @@ public class ClothScreen {
         general.addEntry(eb.startTextDescription(Component.nullToEmpty("ยง7" + I18n.get("description.lightoverlay.caching"))).build());
         general.addEntry(eb.startBooleanToggle(new TranslatableComponent("config.lightoverlay.caching"), LightOverlay.caching).setDefaultValue(false).setSaveConsumer(bool -> LightOverlay.caching = bool).build());
         general.addEntry(eb.startIntSlider(new TranslatableComponent("config.lightoverlay.reach"), LightOverlay.reach, 1, 64).setDefaultValue(12).setTextGetter(integer -> Component.nullToEmpty("Reach: " + integer + " Blocks")).setSaveConsumer(integer -> LightOverlay.reach = integer).build());
-        IntegerSliderEntry crossLevel = eb.startIntSlider(new TranslatableComponent("config.lightoverlay.crossLevel"), LightOverlay.crossLevel, 0, 15).setDefaultValue(7).setTextGetter(integer -> Component.nullToEmpty("Cross Level: " + integer)).setSaveConsumer(integer -> LightOverlay.crossLevel = integer).build();
+        IntegerSliderEntry crossLevel = eb.startIntSlider(new TranslatableComponent("config.lightoverlay.crossLevel"), LightOverlay.crossLevel, 0, 15).setDefaultValue(0).setTextGetter(integer -> Component.nullToEmpty("Cross Level: " + integer)).setSaveConsumer(integer -> LightOverlay.crossLevel = integer).build();
         general.addEntry(crossLevel);
         general.addEntry(eb.startIntSlider(new TranslatableComponent("config.lightoverlay.secondaryLevel"), LightOverlay.secondaryLevel, -1, 15)
-                .setErrorSupplier(integer -> {
-                    if (integer >= 0 && integer >= crossLevel.getValue())
-                        return Optional.of(new TextComponent("Secondary Level cannot be higher than Cross Level!"));
-                    return Optional.empty();
-                }).setDefaultValue(-1).setTextGetter(integer -> new TextComponent(integer < 0 ? "Off" : "Level: " + integer)).setSaveConsumer(integer -> LightOverlay.secondaryLevel = integer).build());
+              .setDefaultValue(7).setTextGetter(integer -> new TextComponent(integer < 0 ? "Off" : "Level: " + integer)).setSaveConsumer(integer -> LightOverlay.secondaryLevel = integer).build());
         general.addEntry(eb.startBooleanToggle(new TranslatableComponent("config.lightoverlay.showNumber"), LightOverlay.showNumber).setDefaultValue(false).setSaveConsumer(bool -> LightOverlay.showNumber = bool).build());
         general.addEntry(eb.startBooleanToggle(new TranslatableComponent("config.lightoverlay.underwater"), LightOverlay.underwater).setDefaultValue(false).setSaveConsumer(bool -> LightOverlay.underwater = bool).build());
         general.addEntry(eb.startBooleanToggle(new TranslatableComponent("config.lightoverlay.mushroom"), LightOverlay.mushroom).setDefaultValue(false).setSaveConsumer(bool -> LightOverlay.mushroom = bool).build());
index 9d93dc477bf588f78344feb7f55d7fcc624e2e21..b8afb195eee3f94958e7dd4c613325804aa3d81b 100644 (file)
@@ -22,8 +22,8 @@ import java.util.function.Consumer;
 public class LightOverlay {
     public static final DecimalFormat FORMAT = new DecimalFormat("#.#");
     public static int reach = 12;
-    public static int crossLevel = 7;
-    public static int secondaryLevel = -1;
+    public static int crossLevel = 0;
+    public static int secondaryLevel = 7;
     public static int lowerCrossLevel = -1;
     public static int higherCrossLevel = -1;
     public static boolean caching = false;
@@ -96,8 +96,8 @@ public class LightOverlay {
             properties.load(fis);
             fis.close();
             reach = Integer.parseInt((String) properties.computeIfAbsent("reach", a -> "12"));
-            crossLevel = Integer.parseInt((String) properties.computeIfAbsent("crossLevel", a -> "7"));
-            secondaryLevel = Integer.parseInt((String) properties.computeIfAbsent("secondaryLevel", a -> "-1"));
+            crossLevel = Integer.parseInt((String) properties.computeIfAbsent("crossLevel", a -> "0"));
+            secondaryLevel = Integer.parseInt((String) properties.computeIfAbsent("secondaryLevel", a -> "7"));
             caching = ((String) properties.computeIfAbsent("caching", a -> "false")).equalsIgnoreCase("true");
             showNumber = ((String) properties.computeIfAbsent("showNumber", a -> "false")).equalsIgnoreCase("true");
             underwater = ((String) properties.computeIfAbsent("underwater", a -> "false")).equalsIgnoreCase("true");
@@ -128,8 +128,8 @@ public class LightOverlay {
         } catch (Exception e) {
             e.printStackTrace();
             reach = 12;
-            crossLevel = 7;
-            secondaryLevel = -1;
+            crossLevel = 0;
+            secondaryLevel = 7;
             lineWidth = 1.0F;
             redColor = 0xFF0000;
             yellowColor = 0xFFFF00;
@@ -144,7 +144,13 @@ public class LightOverlay {
                 ex.printStackTrace();
             }
         }
-        if (secondaryLevel >= crossLevel) System.err.println("[Light Overlay] Secondary Level is higher than Cross Level");
+        if (secondaryLevel >= crossLevel) {
+            higherCross = CROSS_SECONDARY;
+            lowerCross = CROSS_YELLOW;
+        } else {
+            higherCross = CROSS_YELLOW;
+            lowerCross = CROSS_SECONDARY;
+        }
         lowerCrossLevel = Math.min(crossLevel, secondaryLevel);
         higherCrossLevel = Math.max(crossLevel, secondaryLevel);
         ticker.CHUNK_MAP.clear();
@@ -207,5 +213,7 @@ public class LightOverlay {
     public static final byte CROSS_YELLOW = 0;
     public static final byte CROSS_RED = 1;
     public static final byte CROSS_SECONDARY = 2;
-    public static final byte CROSS_NONE = 2;
+    public static final byte CROSS_NONE = 3;
+    public static byte higherCross = CROSS_YELLOW;
+    public static byte lowerCross = CROSS_SECONDARY;
 }
index fd0fe177d517744838353d7c5a50d8cc7f8d1f81..8cf2275ecf76cf863615de10b4ce2c159734e8a1 100644 (file)
@@ -250,8 +250,9 @@ public class LightOverlayTicker {
         if (blockLightLevel > LightOverlay.higherCrossLevel)
             return LightOverlay.CROSS_NONE;
         if (skyLightLevel > LightOverlay.higherCrossLevel)
-            return LightOverlay.CROSS_YELLOW;
-        return LightOverlay.lowerCrossLevel >= 0 && blockLightLevel > LightOverlay.lowerCrossLevel ? LightOverlay.CROSS_SECONDARY : LightOverlay.CROSS_RED;
+            return LightOverlay.higherCross;
+        return LightOverlay.lowerCrossLevel >= 0 && blockLightLevel > LightOverlay.lowerCrossLevel ? 
+                LightOverlay.lowerCross : LightOverlay.CROSS_RED;
     }
     
     public static int getCrossLevel(BlockPos pos, BlockPos down, BlockGetter world, LayerLightEventListener view, CollisionContext collisionContext) {
index 390e370f39c67d21e90472a17162c13f8123ec20..3e74394e576976d6a706737d3e1498e49c2b47b1 100755 (executable)
@@ -40,7 +40,7 @@ dependencies {
     }
     modImplementation("dev.architectury:architectury-fabric:${rootProject.architectury_version}")
 
-    common(project(path: ":common", configuration: "dev")) {
+    common(project(path: ":common", configuration: "namedElements")) {
         transitive = false
     }
     shadowCommon(project(path: ":common", configuration: "transformProductionFabric")) {
index ce0bbf08270e86d536b83b42b5079870b77b60ba..de6d3df8cf57364b35017580ba065f2d8d443995 100644 (file)
@@ -11,6 +11,12 @@ architectury {
     forge()
 }
 
+loom {
+    forge {
+        mixinConfig "lightoverlay-forge.mixins.json"
+    }
+}
+
 processResources {
     filesMatching("META-INF/mods.toml") {
         expand "version": project.version
@@ -25,10 +31,10 @@ dependencies {
     modImplementation("me.shedaniel.cloth:cloth-config-forge:${rootProject.cloth_config_version}")
     modImplementation("dev.architectury:architectury-forge:${rootProject.architectury_version}")
 
-    implementation(project(path: ":common")) {
+    implementation(project(path: ":common", configuration: "namedElements")) {
         transitive = false
     }
-    developmentForge(project(path: ":common")) {
+    developmentForge(project(path: ":common", configuration: "namedElements")) {
         transitive = false
     }
     shadow(project(path: ":common", configuration: "transformProductionForge")) {
index eeee0e787d357efacbf8a598dd31934a11551210..18d85bb804d1caa4b93690a4e1c912a223bf01bf 100644 (file)
@@ -5,12 +5,12 @@ import net.minecraftforge.fml.DistExecutor;
 import net.minecraftforge.fml.IExtensionPoint;
 import net.minecraftforge.fml.ModLoadingContext;
 import net.minecraftforge.fml.common.Mod;
-import net.minecraftforge.fmllegacy.network.FMLNetworkConstants;
+import net.minecraftforge.network.NetworkConstants;
 
 @Mod("lightoverlay")
 public class LightOverlay {
     public LightOverlay() {
-        ModLoadingContext.get().registerExtensionPoint(IExtensionPoint.DisplayTest.class, () -> new IExtensionPoint.DisplayTest(() -> FMLNetworkConstants.IGNORESERVERONLY, (a, b) -> true));
+        ModLoadingContext.get().registerExtensionPoint(IExtensionPoint.DisplayTest.class, () -> new IExtensionPoint.DisplayTest(() -> NetworkConstants.IGNORESERVERONLY, (a, b) -> true));
         DistExecutor.safeRunWhenOn(Dist.CLIENT, () -> LightOverlayImpl::register);
     }
 }
index 2b65c3938ea04c742ed091a43075b9801ab6088b..707f1766e77566c6fb13f0e8ab2ea2b89d760635 100644 (file)
@@ -1,8 +1,8 @@
 package me.shedaniel.lightoverlay.forge;
 
 import me.shedaniel.lightoverlay.common.ClothScreen;
+import net.minecraftforge.client.ConfigGuiHandler;
 import net.minecraftforge.fml.ModLoadingContext;
-import net.minecraftforge.fmlclient.ConfigGuiHandler;
 
 public class LightOverlayCloth {
     public static void register() {
index 676208d0b5d19b07b7cd7acc502ef5bfad5485dc..f9ac6ef87cd986b972021fdaa28a48d5f3c36ab3 100644 (file)
@@ -2,6 +2,7 @@ package me.shedaniel.lightoverlay.forge;
 
 import com.mojang.blaze3d.vertex.PoseStack;
 import me.shedaniel.lightoverlay.common.LightOverlay;
+import me.shedaniel.lightoverlay.common.LightOverlayRenderer;
 import net.minecraft.client.renderer.culling.Frustum;
 import net.minecraftforge.api.distmarker.Dist;
 import net.minecraftforge.fml.DistExecutor;
@@ -9,6 +10,7 @@ import net.minecraftforge.fml.DistExecutor;
 import java.util.function.Consumer;
 
 public class LightOverlayImpl {
+    public static LightOverlayRenderer renderer = LightOverlay.renderer;
     public static Consumer<PoseStack> debugRenderer = poses -> {};
     
     public static void register() {
index fcf74b7d19995e49f0b5c59c2630966ad329f2df..8b5b7379dd3d48c1637cb6561354c65385fc5fb8 100644 (file)
@@ -2,8 +2,8 @@ package me.shedaniel.lightoverlay.forge.mixin;
 
 import me.shedaniel.lightoverlay.common.CubicChunkPos;
 import me.shedaniel.lightoverlay.common.LightOverlay;
-//import net.minecraft.network.Connection;
 import net.minecraft.client.multiplayer.ClientPacketListener;
+import net.minecraft.network.Connection;
 import net.minecraft.network.PacketListener;
 import net.minecraft.network.protocol.Packet;
 import net.minecraft.network.protocol.game.ClientboundBlockUpdatePacket;
@@ -11,18 +11,18 @@ import net.minecraft.network.protocol.game.ClientboundLightUpdatePacket;
 import net.minecraft.network.protocol.game.ClientboundSectionBlocksUpdatePacket;
 import net.minecraft.network.protocol.game.ClientboundSetChunkCacheCenterPacket;
 import net.minecraft.util.Mth;
-//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;
+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(Connection.class)
+@Mixin(Connection.class)
 public class MixinClientConnection {
-//    @Inject(method = "genericsFtw", at = @At("HEAD"))
-//    private static void handlePacket(Packet packet, PacketListener listener, CallbackInfo ci) {
+    @Inject(method = "genericsFtw", at = @At("HEAD"))
+    private static void handlePacket(Packet packet, PacketListener listener, CallbackInfo ci) {
 //        
 //    }
-    public static void handlePacket(Packet packet, PacketListener listener) {
+//    public static void handlePacket(Packet packet, PacketListener listener) {
         try {
             if (!(listener instanceof ClientPacketListener packetListener)) return;
             var level = packetListener.getLevel();
index b34bf7197b3583936c918d189b4104ec22b8531f..5f04d5a7d17101df7f945e9b6e709d02aa0c87da 100644 (file)
@@ -2,22 +2,17 @@ package me.shedaniel.lightoverlay.forge.mixin;
 
 import com.mojang.blaze3d.vertex.PoseStack;
 import me.shedaniel.lightoverlay.forge.LightOverlayImpl;
-/*import com.mojang.blaze3d.vertex.PoseStack;
 import net.minecraft.client.renderer.MultiBufferSource;
 import net.minecraft.client.renderer.debug.DebugRenderer;
 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;*/
+import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
 
-//@Mixin(DebugRenderer.class)
+@Mixin(DebugRenderer.class)
 public class MixinDebugRenderer {
-//    @Inject(method = "render", at = @At("HEAD"))
-//    private void render(PoseStack arg, MultiBufferSource.BufferSource arg2, double d, double e, double f, CallbackInfo ci) {
-//        LightOverlayImpl.renderWorldLast();
-//    }
-    
-    public static void render(PoseStack stack) {
-        LightOverlayImpl.renderWorldLast(stack);
+    @Inject(method = "render", at = @At("HEAD"))
+    private void render(PoseStack arg, MultiBufferSource.BufferSource arg2, double d, double e, double f, CallbackInfo ci) {
+        LightOverlayImpl.renderWorldLast(arg);
     }
 }
index 3b9277ca51dbb31a520c3b49c2c24bc8c3bbbac9..8a039d3b46118bba9265e63b52e980d4f2c7d61e 100644 (file)
@@ -1,22 +1,18 @@
 package me.shedaniel.lightoverlay.forge.mixin;
 
-import me.shedaniel.lightoverlay.common.LightOverlay;
+import me.shedaniel.lightoverlay.forge.LightOverlayImpl;
+import net.minecraft.client.Camera;
+import net.minecraft.client.renderer.LevelRenderer;
 import net.minecraft.client.renderer.culling.Frustum;
-//import net.minecraft.client.Camera;
-//import net.minecraft.client.renderer.LevelRenderer;
-//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;
+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(LevelRenderer.class)
+@Mixin(LevelRenderer.class)
 public class MixinLevelRenderer {
-//    @Inject(method = "setupRender", at = @At("HEAD"))
-//    private void setupTerrain(Camera camera, Frustum frustum, boolean bl, int i, boolean bl2, CallbackInfo ci) {
-//        LightOverlay.renderer.frustum = frustum;
-//    }
-    
-    public static void setupTerrain(Frustum frustum) {
-        LightOverlay.renderer.frustum = frustum;
+    @Inject(method = "setupRender", at = @At("HEAD"))
+    private void setupTerrain(Camera camera, Frustum frustum, boolean bl, boolean bl2, CallbackInfo ci) {
+        LightOverlayImpl.renderer.frustum = frustum;
     }
 }
diff --git a/forge/src/main/resources/META-INF/Connection.js b/forge/src/main/resources/META-INF/Connection.js
deleted file mode 100644 (file)
index 7f7e122..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-var Opcodes = Java.type("org.objectweb.asm.Opcodes");
-var VarInsnNode = Java.type("org.objectweb.asm.tree.VarInsnNode");
-var MethodInsnNode = Java.type("org.objectweb.asm.tree.MethodInsnNode");
-var ASMAPI = Java.type("net.minecraftforge.coremod.api.ASMAPI");
-
-function transformMethod(method) {
-    var instructions = method.instructions;
-    instructions.insert(new MethodInsnNode(Opcodes.INVOKESTATIC, "me/shedaniel/lightoverlay/forge/mixin/MixinClientConnection", "handlePacket", "(Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketListener;)V", false));
-    instructions.insert(new VarInsnNode(Opcodes.ALOAD, 1));
-    instructions.insert(new VarInsnNode(Opcodes.ALOAD, 0));
-}
-
-function initializeCoreMod() {
-    return {
-        "lightoverlay": {
-            'target': {
-                'type': 'CLASS',
-                'name': 'net.minecraft.network.Connection'
-            },
-            'transformer': function (classNode) {
-                var genericsFtw = ASMAPI.mapMethod("m_129517_");
-                for (i in classNode.methods) {
-                    var method = classNode.methods[i];
-                    if (method.name === genericsFtw) {
-                        transformMethod(method)
-                        break;
-                    }
-                }
-                return classNode;
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/forge/src/main/resources/META-INF/DebugRenderer.js b/forge/src/main/resources/META-INF/DebugRenderer.js
deleted file mode 100644 (file)
index c67dba3..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var Opcodes = Java.type("org.objectweb.asm.Opcodes");
-var VarInsnNode = Java.type("org.objectweb.asm.tree.VarInsnNode");
-var MethodInsnNode = Java.type("org.objectweb.asm.tree.MethodInsnNode");
-var ASMAPI = Java.type("net.minecraftforge.coremod.api.ASMAPI");
-
-function transformMethod(method) {
-    var instructions = method.instructions;
-    instructions.insert(new MethodInsnNode(Opcodes.INVOKESTATIC, "me/shedaniel/lightoverlay/forge/mixin/MixinDebugRenderer", "render", "(Lcom/mojang/blaze3d/vertex/PoseStack;)V", false));
-    instructions.insert(new VarInsnNode(Opcodes.ALOAD, 1));
-}
-
-function initializeCoreMod() {
-    return {
-        "lightoverlay": {
-            'target': {
-                'type': 'CLASS',
-                'name': 'net.minecraft.client.renderer.debug.DebugRenderer'
-            },
-            'transformer': function (classNode) {
-                var render = ASMAPI.mapMethod("m_113457_");
-                for (i in classNode.methods) {
-                    var method = classNode.methods[i];
-                    if (method.name === render) {
-                        transformMethod(method)
-                        break;
-                    }
-                }
-                return classNode;
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/forge/src/main/resources/META-INF/LevelRenderer.js b/forge/src/main/resources/META-INF/LevelRenderer.js
deleted file mode 100644 (file)
index 6ad2b6d..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var Opcodes = Java.type("org.objectweb.asm.Opcodes");
-var VarInsnNode = Java.type("org.objectweb.asm.tree.VarInsnNode");
-var MethodInsnNode = Java.type("org.objectweb.asm.tree.MethodInsnNode");
-var ASMAPI = Java.type("net.minecraftforge.coremod.api.ASMAPI");
-
-function transformMethod(method) {
-    var instructions = method.instructions;
-    instructions.insert(new MethodInsnNode(Opcodes.INVOKESTATIC, "me/shedaniel/lightoverlay/forge/mixin/MixinLevelRenderer", "setupTerrain", "(Lnet/minecraft/client/renderer/culling/Frustum;)V", false));
-    instructions.insert(new VarInsnNode(Opcodes.ALOAD, 2));
-}
-
-function initializeCoreMod() {
-    return {
-        "lightoverlay": {
-            'target': {
-                'type': 'CLASS',
-                'name': 'net.minecraft.client.renderer.LevelRenderer'
-            },
-            'transformer': function (classNode) {
-                var setupRender = ASMAPI.mapMethod("m_109695_");
-                for (i in classNode.methods) {
-                    var method = classNode.methods[i];
-                    if (method.name === setupRender) {
-                        transformMethod(method)
-                        break;
-                    }
-                }
-                return classNode;
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/forge/src/main/resources/META-INF/coremods.json b/forge/src/main/resources/META-INF/coremods.json
deleted file mode 100644 (file)
index 17c6500..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "Connection": "META-INF/Connection.js",
-  "DebugRenderer": "META-INF/DebugRenderer.js",
-  "LevelRenderer": "META-INF/LevelRenderer.js"
-}
\ No newline at end of file
index c4670ba23303ff7d97186607711711f000d390e6..661646cc01b50d4f4fb20243856f1ba06e6981ba 100755 (executable)
@@ -15,13 +15,13 @@ To provide users with NEI-like light overlay.
 [[dependencies.lightoverlay]]
 modId = "cloth_config"
 mandatory = true
-versionRange = "[5.0.36,)"
+versionRange = "[6,)"
 ordering = "NONE"
 side = "CLIENT"
 
 [[dependencies.lightoverlay]]
 modId = "architectury"
 mandatory = true
-versionRange = "[2.3.22,)"
+versionRange = "[3,)"
 ordering = "NONE"
 side = "CLIENT"
diff --git a/forge/src/main/resources/lightoverlay-forge.mixins.json b/forge/src/main/resources/lightoverlay-forge.mixins.json
new file mode 100644 (file)
index 0000000..798efb5
--- /dev/null
@@ -0,0 +1,15 @@
+{
+  "required": true,
+  "package": "me.shedaniel.lightoverlay.forge.mixin",
+  "minVersion": "0.7.11",
+  "compatibilityLevel": "JAVA_8",
+  "mixins": [],
+  "client": [
+    "MixinClientConnection",
+    "MixinDebugRenderer",
+    "MixinLevelRenderer"
+  ],
+  "injectors": {
+    "defaultRequire": 1
+  }
+}
\ No newline at end of file
index b205965a9961200d7ef78e62ec3186c475f596d1..8a713e23c4484f54c6998f4e0c821c889018a121 100755 (executable)
@@ -1,16 +1,16 @@
 org.gradle.jvmargs=-Xmx3G
 org.gradle.daemon=false
 
-mod_version=6.0.3
-minecraft_version=1.18-rc3
+mod_version=6.0.4
+minecraft_version=1.18
 
-architectury_version=3.0.39
+architectury_version=3.1.45
 
 # fabric
 fabric_loader_version=0.12.5
 fabric_api_version=0.43.1+1.18
-cloth_config_version=6.0.42
+cloth_config_version=6.0.45
 modmenu_version=3.0.0
 
 # forge
-forge_version=37.0.13
\ No newline at end of file
+forge_version=38.0.15
\ No newline at end of file
index 323a92b2c0469908ea2a4ed3fc34881b527abe6a..a232ac9e2b4c4f3bec988c1203a274ef8113264f 100644 (file)
@@ -11,5 +11,5 @@ rootProject.name = "light-overlay"
 
 include("common")
 include("fabric")
-//include("forge")
+include("forge")