30 lines
1.0 KiB
Java
30 lines
1.0 KiB
Java
package appeng.mixins;
|
|
|
|
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 net.minecraft.client.render.item.ItemRenderer;
|
|
import net.minecraft.client.render.model.BakedModel;
|
|
import net.minecraft.item.ItemStack;
|
|
|
|
import appeng.hooks.ItemRendererHooks;
|
|
|
|
/**
|
|
* This mixin specifically targets rendering of items in the user interface to
|
|
* allow us to customize _only_ the UI representation of an item, and none of
|
|
* the others (held items, in-world, etc.)
|
|
*/
|
|
@Mixin(ItemRenderer.class)
|
|
public abstract class RenderEncodedPatternMixin {
|
|
|
|
@Inject(method = "renderGuiItemModel", at = @At("HEAD"), cancellable = true)
|
|
protected void renderGuiItemModel(ItemStack stack, int x, int y, BakedModel model, CallbackInfo ci) {
|
|
if (ItemRendererHooks.onRenderGuiItemModel((ItemRenderer) (Object) this, stack, x, y, model)) {
|
|
ci.cancel();
|
|
}
|
|
}
|
|
|
|
}
|