fabric-rendering-v1-16.2.0+bee81f016f.jar
Download file
package net.fabricmc.fabric.mixin.client.rendering;
import com.google.common.collect.ImmutableMap;
import com.llamalad7.mixinextras.sugar.Local;
import java.util.Map;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.fabricmc.fabric.api.client.rendering.v1.EntityModelLayerRegistry;
import net.fabricmc.fabric.impl.client.rendering.EntityModelLayerImpl;
import net.minecraft.class_11677;
import net.minecraft.class_5600;
import net.minecraft.class_5601;
import net.minecraft.class_5607;
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.CallbackInfoReturnable;
@Environment(EnvType.CLIENT)
@Mixin({class_5600.class})
abstract class EntityModelsMixin {
@Inject(
method = {"method_32073()Ljava/util/Map;"},
at = {@At(
value = "INVOKE",
target = "Lcom/google/common/collect/ImmutableMap$Builder;build()Lcom/google/common/collect/ImmutableMap;"
)}
)
private static void registerExtraModelData(CallbackInfoReturnable<Map<class_5601, class_5607>> info, @Local ImmutableMap.Builder<class_5601, class_5607> builder) {
for(Map.Entry<class_5601, EntityModelLayerRegistry.TexturedModelDataProvider> entry : EntityModelLayerImpl.PROVIDERS.entrySet()) {
builder.put((class_5601)entry.getKey(), ((EntityModelLayerRegistry.TexturedModelDataProvider)entry.getValue()).createModelData());
}
for(Map.Entry<class_11677<class_5601>, EntityModelLayerRegistry.TexturedEquipmentModelDataProvider> entry : EntityModelLayerImpl.EQUIPMENT_PROVIDERS.entrySet()) {
((class_11677)entry.getKey()).method_72960(((EntityModelLayerRegistry.TexturedEquipmentModelDataProvider)entry.getValue()).createEquipmentModelData(), builder);
}
}
}
Download file