From add7dd46092d61174a86f9a477c82caee7c73812 Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Thu, 21 Mar 2024 14:14:35 -0400 Subject: [PATCH] Deholderize item mesher mixin --- .../ItemModelMesherForgeMixin.java | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/neoforge/src/main/java/org/embeddedt/modernfix/neoforge/mixin/perf/dynamic_resources/ItemModelMesherForgeMixin.java b/neoforge/src/main/java/org/embeddedt/modernfix/neoforge/mixin/perf/dynamic_resources/ItemModelMesherForgeMixin.java index bb06a10a..4fe8dd4e 100644 --- a/neoforge/src/main/java/org/embeddedt/modernfix/neoforge/mixin/perf/dynamic_resources/ItemModelMesherForgeMixin.java +++ b/neoforge/src/main/java/org/embeddedt/modernfix/neoforge/mixin/perf/dynamic_resources/ItemModelMesherForgeMixin.java @@ -4,7 +4,6 @@ import net.minecraft.client.renderer.ItemModelShaper; import net.minecraft.client.resources.model.BakedModel; import net.minecraft.client.resources.model.ModelManager; import net.minecraft.client.resources.model.ModelResourceLocation; -import net.minecraft.core.Holder; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.Item; import net.neoforged.neoforge.client.model.RegistryAwareItemModelShaper; @@ -23,11 +22,11 @@ import java.util.Map; @Mixin(RegistryAwareItemModelShaper.class) @ClientOnlyMixin public abstract class ItemModelMesherForgeMixin extends ItemModelShaper { - @Shadow(remap = false) @Final @Mutable private Map, ModelResourceLocation> locations; + @Shadow(remap = false) @Final @Mutable private Map locations; - private Map, ModelResourceLocation> overrideLocations; + private Map overrideLocations; - private final DynamicModelCache> mfix$modelCache = new DynamicModelCache<>(k -> this.mfix$getModelSlow((Holder.Reference)k), true); + private final DynamicModelCache mfix$modelCache = new DynamicModelCache<>(k -> this.mfix$getModelSlow((Item)k), true); public ItemModelMesherForgeMixin(ModelManager arg) { super(arg); @@ -43,16 +42,16 @@ public abstract class ItemModelMesherForgeMixin extends ItemModelShaper { } @Unique - private ModelResourceLocation mfix$getLocationForge(Holder.Reference item) { + private ModelResourceLocation mfix$getLocationForge(Item item) { ModelResourceLocation map = overrideLocations.getOrDefault(item, SENTINEL); if(map == SENTINEL) { /* generate the appropriate location from our cache */ - map = ModelLocationCache.get(item.value()); + map = ModelLocationCache.get(item); } return map; } - private BakedModel mfix$getModelSlow(Holder.Reference key) { + private BakedModel mfix$getModelSlow(Item key) { ModelResourceLocation map = mfix$getLocationForge(key); return map == null ? null : getModelManager().getModel(map); } @@ -65,7 +64,7 @@ public abstract class ItemModelMesherForgeMixin extends ItemModelShaper { @Overwrite @Override public BakedModel getItemModel(Item item) { - return this.mfix$modelCache.get(item.builtInRegistryHolder()); + return this.mfix$modelCache.get(item); } /** @@ -76,7 +75,7 @@ public abstract class ItemModelMesherForgeMixin extends ItemModelShaper { @Overwrite @Override public void register(Item item, ModelResourceLocation location) { - overrideLocations.put(item.builtInRegistryHolder(), location); + overrideLocations.put(item, location); } /**