@Override
public void doRenderLayer(AbstractClientPlayer entity, float limbSwing, float limbSwingAmount, float partialTicks, float ageInTicks, float netHeadYaw, float headPitch, float scale) {
if(entity.isInvisible())return;
ItemStack backpack = BackpackUtil.getBackpackOnBack(entity);
if(ItemStackTools.isValid(backpack)){
IBackpack type = BackpackUtil.getType(backpack);
if(type !=null){
ResourceLocation res = type.getTexture(backpack, 1);
if(res == null){
res = TextureMap.LOCATION_MISSING_TEXTURE;
}
GlStateManager.pushMatrix();
GlStateManager.color(1, 1, 1, 1);
playerRenderer.bindTexture(res);
this.backpackModel.setRotationAngles(limbSwing, limbSwingAmount, ageInTicks, netHeadYaw, headPitch, scale, entity);
GlStateManager.pushMatrix();
GlStateManager.scale(0.7, 0.7, 0.7);
GlStateManager.translate(0, 0.05, 0);
this.backpackModel.render(entity, limbSwing, limbSwingAmount, ageInTicks, netHeadYaw, headPitch, scale);
boolean enchanted = false;
if (enchanted) {
LayerArmorBase.renderEnchantedGlint(this.playerRenderer, entity, this.backpackModel, limbSwing, limbSwingAmount, partialTicks, ageInTicks, netHeadYaw, headPitch, scale);
}
GlStateManager.popMatrix();
if(type instanceof IBackpackInventory){
IBackpackInventory inv = (IBackpackInventory)type;
InventoryBackpack inventory = inv.getInventory(backpack);
InventoryBackpackUpgrades upgradeInv = type.getUpgradeInventory(backpack);
if(inventory !=null && upgradeInv !=null){
if(upgradeInv.hasUpgrade(BackpackUpgrade.POCKETS)){
if(inventory instanceof NormalInventoryBackpack){
NormalInventoryBackpack normalInv = (NormalInventoryBackpack)inventory;
ItemStack weapon = normalInv.getToolStack(0);
ItemStack tool = normalInv.getToolStack(1);
if(ItemStackTools.isValid(weapon)){
GlStateManager.pushMatrix();
GlStateManager.translate(0.3, 0.3, 0.3);
GlStateManager.rotate(90, 0, 1, 0);
GlStateManager.rotate(-45, 0, 0, 1);
GlStateManager.scale(0.5, 0.5, 0.5);
RenderUtil.renderItem(weapon, TransformType.FIXED);
GlStateManager.popMatrix();
}
if(ItemStackTools.isValid(tool)){
GlStateManager.pushMatrix();
GlStateManager.translate(-0.3, 0.3, 0.3);
GlStateManager.rotate(90, 0, 1, 0);
GlStateManager.rotate(135, 0, 0, 1);
GlStateManager.scale(0.5, 0.5, 0.5);
RenderUtil.renderItem(tool, TransformType.FIXED);
GlStateManager.popMatrix();
}
}
}
}
}
GlStateManager.popMatrix();
}
}
}
LayerExtendedPlayerInventory.java 文件源码
java
阅读 18
收藏 0
点赞 0
评论 0
项目:CrystalMod
作者:
评论列表
文章目录