From 4de7fe39e543a002ea0dbcc12a4cab952147b9a5 Mon Sep 17 00:00:00 2001 From: tibs Date: Thu, 18 Aug 2022 20:28:36 -0400 Subject: [PATCH] Use access widener instead of accessor --- build.gradle | 4 ++++ .../mixin/CauldronBehaviorMixin.java | 3 +-- .../cauldron_dyeing/mixin/DyeItemAccessor.java | 16 ---------------- src/main/resources/cauldron-dyeing.accesswidener | 3 +++ src/main/resources/cauldron-dyeing.mixins.json | 1 - src/main/resources/fabric.mod.json | 1 + 6 files changed, 9 insertions(+), 19 deletions(-) delete mode 100644 src/main/java/me/tibinonest/mods/cauldron_dyeing/mixin/DyeItemAccessor.java create mode 100644 src/main/resources/cauldron-dyeing.accesswidener diff --git a/build.gradle b/build.gradle index e0f528e..030f7b7 100644 --- a/build.gradle +++ b/build.gradle @@ -30,6 +30,10 @@ dependencies { modCompileOnly libs.sodium } +loom { + accessWidenerPath.set file("src/main/resources/cauldron-dyeing.accesswidener") +} + processResources { inputs.property 'version', project.version filteringCharset 'UTF-8' diff --git a/src/main/java/me/tibinonest/mods/cauldron_dyeing/mixin/CauldronBehaviorMixin.java b/src/main/java/me/tibinonest/mods/cauldron_dyeing/mixin/CauldronBehaviorMixin.java index b518b76..78e570c 100644 --- a/src/main/java/me/tibinonest/mods/cauldron_dyeing/mixin/CauldronBehaviorMixin.java +++ b/src/main/java/me/tibinonest/mods/cauldron_dyeing/mixin/CauldronBehaviorMixin.java @@ -53,8 +53,7 @@ public interface CauldronBehaviorMixin { @Inject(method = "registerBehavior", at = @At("TAIL")) private static void cauldron_dyeing$injectRegisterBehavior(CallbackInfo ci) { - var dyeMap = DyeItemAccessor.getDyeMap(); - for (Map.Entry dyeItem : dyeMap.entrySet()) { + for (Map.Entry dyeItem : DyeItem.DYES.entrySet()) { CauldronBehavior.WATER_CAULDRON_BEHAVIOR.put(dyeItem.getValue(), CauldronBehaviorExtended.DYE_WATER); } } diff --git a/src/main/java/me/tibinonest/mods/cauldron_dyeing/mixin/DyeItemAccessor.java b/src/main/java/me/tibinonest/mods/cauldron_dyeing/mixin/DyeItemAccessor.java deleted file mode 100644 index f470fef..0000000 --- a/src/main/java/me/tibinonest/mods/cauldron_dyeing/mixin/DyeItemAccessor.java +++ /dev/null @@ -1,16 +0,0 @@ -package me.tibinonest.mods.cauldron_dyeing.mixin; - -import net.minecraft.item.DyeItem; -import net.minecraft.util.DyeColor; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Accessor; - -import java.util.Map; - -@Mixin(DyeItem.class) -public interface DyeItemAccessor { - @Accessor("DYES") - static Map getDyeMap() { - throw new AssertionError(); - } -} diff --git a/src/main/resources/cauldron-dyeing.accesswidener b/src/main/resources/cauldron-dyeing.accesswidener new file mode 100644 index 0000000..a994c4d --- /dev/null +++ b/src/main/resources/cauldron-dyeing.accesswidener @@ -0,0 +1,3 @@ +accessWidener v1 named + +accessible field net/minecraft/item/DyeItem DYES Ljava/util/Map; diff --git a/src/main/resources/cauldron-dyeing.mixins.json b/src/main/resources/cauldron-dyeing.mixins.json index 2165738..133184d 100644 --- a/src/main/resources/cauldron-dyeing.mixins.json +++ b/src/main/resources/cauldron-dyeing.mixins.json @@ -4,7 +4,6 @@ "compatibilityLevel": "JAVA_17", "mixins": [ "CauldronBehaviorMixin", - "DyeItemAccessor", "LeveledCauldronBlockMixin" ], "client": [ diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 6ff963e..d7e2627 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -19,6 +19,7 @@ "me.tibinonest.mods.cauldron_dyeing.CauldronDyeing" ] }, + "accessWidener": "cauldron-dyeing.accesswidener", "mixins": [ "cauldron-dyeing.mixins.json" ],