diff --git a/src/main/java/kamkeel/npcs/addon/client/DBCClient.java b/src/main/java/kamkeel/npcs/addon/client/DBCClient.java index 4bb807010..c5f90713f 100644 --- a/src/main/java/kamkeel/npcs/addon/client/DBCClient.java +++ b/src/main/java/kamkeel/npcs/addon/client/DBCClient.java @@ -1,6 +1,11 @@ package kamkeel.npcs.addon.client; +import net.minecraft.client.model.ModelBiped; +import net.minecraft.client.model.ModelRenderer; +import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.util.ResourceLocation; import noppes.npcs.client.gui.mainmenu.GuiNpcStats; import noppes.npcs.client.gui.util.GuiNPCInterface2; import noppes.npcs.client.gui.util.GuiNpcButton; @@ -42,4 +47,8 @@ public class DBCClient { public GuiNPCInterface2 manageCustomAuras(EntityNPCInterface npcInterface) { return null; } + + // Animation Render Helper + public void applyRenderModel(ModelRenderer renderer){} + public boolean firstPersonAnimation(float partialRenderTick, EntityPlayer player, ModelBiped model, RenderBlocks renderBlocksIr, ResourceLocation resItemGlint) { return false; } } diff --git a/src/main/java/noppes/npcs/AnimationMixinFunctions.java b/src/main/java/noppes/npcs/AnimationMixinFunctions.java index 8cde2557c..ce4f3babe 100644 --- a/src/main/java/noppes/npcs/AnimationMixinFunctions.java +++ b/src/main/java/noppes/npcs/AnimationMixinFunctions.java @@ -1,6 +1,7 @@ package noppes.npcs; import kamkeel.npcs.addon.DBCAddon; +import kamkeel.npcs.addon.client.DBCClient; import net.minecraft.block.Block; import net.minecraft.client.Minecraft; import net.minecraft.client.entity.EntityClientPlayerMP; @@ -52,7 +53,9 @@ public class AnimationMixinFunctions { return false; } - if (!DBCAddon.IsAvailable() && ClientEventHandler.renderingPlayer != null) { + if(DBCAddon.IsAvailable() && ClientEventHandler.renderingPlayer != null){ + DBCClient.Instance.applyRenderModel(modelRenderer); + } else if (!DBCAddon.IsAvailable() && ClientEventHandler.renderingPlayer != null) { ClientEventHandler.playerModel = (modelRenderer).baseModel; if (ClientCacheHandler.playerAnimations.containsKey(ClientEventHandler.renderingPlayer.getUniqueID())) { AnimationData animData = ClientCacheHandler.playerAnimations.get(ClientEventHandler.renderingPlayer.getUniqueID()); @@ -221,8 +224,8 @@ public class AnimationMixinFunctions { } public static boolean mixin_renderFirstPersonAnimation(float partialRenderTick, EntityPlayer player, ModelBiped model, RenderBlocks renderBlocksIr, ResourceLocation resItemGlint) { - if (!DBCAddon.IsAvailable()) { - return false; + if (DBCAddon.IsAvailable()) { + return DBCClient.Instance.firstPersonAnimation(partialRenderTick, player,model, renderBlocksIr, resItemGlint); } AnimationData animationData = ClientCacheHandler.playerAnimations.get(player.getUniqueID());