From 2d3611882ebf4a62ede38eeb944958240bb60586 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?sddsd2332=EF=BC=88ARrain=E4=B9=90=E9=9B=AA=EF=BC=89?= <3207168480@qq.com> Date: Sun, 1 Dec 2024 09:29:05 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E9=99=A4=20=20=E7=9F=BF=E8=BE=9E?= =?UTF-8?q?=E7=BB=9F=E4=B8=80=E5=AF=B9=20MEKCEU=20=E5=A4=B1=E6=95=88=20?= =?UTF-8?q?=E7=9A=84=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 因为 MEKCEU 9.9.1.216进行了修复 修复自动构建失效问题 更新MEKCEU 依赖版本 --- .github/workflows/build.yml | 2 +- build.gradle.kts | 2 +- .../mixin/NovaEngCoreLateMixinLoader.java | 1 - .../unidict/MixinMekanismIntegration.java | 80 ------------------- .../mixins.novaeng_core_unidict.json | 10 --- 5 files changed, 2 insertions(+), 93 deletions(-) delete mode 100644 src/main/java/github/kasuminova/novaeng/mixin/unidict/MixinMekanismIntegration.java delete mode 100644 src/main/resources/mixins.novaeng_core_unidict.json diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 433a4839..e3c72a46 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -19,7 +19,7 @@ jobs: - name: Build with Gradle run: ./gradlew -Pnet.minecraftforge.gradle.disableUpdateChecker=true build - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: NovaEngineering-Core path: build/libs diff --git a/build.gradle.kts b/build.gradle.kts index 1aecbf9f..bceea062 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -225,7 +225,7 @@ dependencies { compileOnly(rfg.deobf("curse.maven:nuclearcraft-overhauled-336895:3862197")) compileOnly(rfg.deobf("curse.maven:industrialcraft-2-242638:3078604")) // implementation(rfg.deobf("sddsd233:mekceu-9.8.11.185")) - implementation(rfg.deobf("curse.maven:mekanism-ce-unofficial-840735:5397944")) + implementation(rfg.deobf("curse.maven:mekanism-ce-unofficial-840735:5946841")) implementation(rfg.deobf("curse.maven:RedstoneFlux-270789:2920436")) implementation(rfg.deobf("software.bernie.geckolib:geckolib-forge-1.12.2:3.0.31")) implementation(rfg.deobf("curse.maven:botania-225643:3330934")) diff --git a/src/main/java/github/kasuminova/novaeng/mixin/NovaEngCoreLateMixinLoader.java b/src/main/java/github/kasuminova/novaeng/mixin/NovaEngCoreLateMixinLoader.java index ada9c3ff..f94563df 100644 --- a/src/main/java/github/kasuminova/novaeng/mixin/NovaEngCoreLateMixinLoader.java +++ b/src/main/java/github/kasuminova/novaeng/mixin/NovaEngCoreLateMixinLoader.java @@ -27,7 +27,6 @@ public class NovaEngCoreLateMixinLoader implements ILateMixinLoader { addModdedMixinCFG("mixins.novaeng_core_mets.json", "mets"); addModdedMixinCFG("mixins.novaeng_core_nae2.json", "nae2"); addMixinCFG("mixins.novaeng_core_forge_late.json"); - addMixinCFG("mixins.novaeng_core_unidict.json", () -> Mods.UNIDICT.loaded() && Mods.MEKCEU.loaded()); addMixinCFG("mixins.novaeng_core_dme.json", () -> Loader.isModLoaded("deepmoblearning") && Loader.instance().getIndexedModList().get("deepmoblearning").getName().equals("DeepMobEvolution")); } diff --git a/src/main/java/github/kasuminova/novaeng/mixin/unidict/MixinMekanismIntegration.java b/src/main/java/github/kasuminova/novaeng/mixin/unidict/MixinMekanismIntegration.java deleted file mode 100644 index 135ac81c..00000000 --- a/src/main/java/github/kasuminova/novaeng/mixin/unidict/MixinMekanismIntegration.java +++ /dev/null @@ -1,80 +0,0 @@ -package github.kasuminova.novaeng.mixin.unidict; - -import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; -import it.unimi.dsi.fastutil.objects.Reference2ObjectOpenHashMap; -import mekanism.common.recipe.RecipeHandler; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Unique; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; - -/** - * 修复矿辞统一对 MEKCEU 失效的问题。 - */ -@SuppressWarnings({"rawtypes", "unchecked"}) -@Mixin(targets = "wanion.unidict.integration.MekanismIntegration") -public class MixinMekanismIntegration { - - @Unique - private final Map novaeng_core$mapping = new Reference2ObjectOpenHashMap<>(); - - @Redirect( - method = "call()Ljava/lang/String;", - at = @At( - value = "INVOKE", - target = "Lmekanism/common/recipe/RecipeHandler$Recipe;get()Ljava/util/HashMap;", - remap = false - ), - remap = false - ) - private HashMap redirectCallGet(final RecipeHandler.Recipe instance) { - Object2ObjectOpenHashMap original = instance.get(); - HashMap newMap = new HashMap<>(original); - novaeng_core$mapping.put(newMap, original); - return newMap; - } - - @Redirect( - method = {"fixMachineRecipes", "fixSawmillRecipes"}, - at = @At( - value = "INVOKE", - target = "Ljava/util/Map;putAll(Ljava/util/Map;)V", - remap = false - ), - remap = false - ) - private void redirectPutAllToOriginal(final Map instance, final Map toPut) { - novaeng_core$applyModification(instance, toPut); - } - - @Redirect( - method = {"fixCrystallizerRecipes", "fixPRCRecipes"}, - at = @At( - value = "INVOKE", - target = "Ljava/util/HashMap;putAll(Ljava/util/Map;)V", - remap = false - ), - remap = false - ) - private void redirectHashMapPutAllToOriginal(final HashMap instance, final Map toPut) { - novaeng_core$applyModification(instance, toPut); - } - - @Unique - private void novaeng_core$applyModification(final Map instance, final Map toPut) { - Map original = novaeng_core$mapping.get(instance); - Iterator it = original.entrySet().iterator(); - while (it.hasNext()) { - Map.Entry entry = (Map.Entry) it.next(); - if (!instance.containsKey(entry.getKey())) { - it.remove(); - } - } - original.putAll(toPut); - } - -} diff --git a/src/main/resources/mixins.novaeng_core_unidict.json b/src/main/resources/mixins.novaeng_core_unidict.json deleted file mode 100644 index c6415007..00000000 --- a/src/main/resources/mixins.novaeng_core_unidict.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "package": "github.kasuminova.novaeng.mixin.unidict", - "refmap": "mixins.novaeng_core.refmap.json", - "target": "@env(DEFAULT)", - "minVersion": "0.8", - "compatibilityLevel": "JAVA_8", - "mixins": [ - "MixinMekanismIntegration" - ] -} \ No newline at end of file