ClientEventHandler.java 文件源码

java
阅读 19 收藏 0 点赞 0 评论 0

项目:CrystalMod 作者:
@SubscribeEvent
  public void renderSpecials(RenderPlayerEvent.Post event){

    try{
        @SuppressWarnings("unchecked")
    List<LayerRenderer<EntityLivingBase>> layers = (List<LayerRenderer<EntityLivingBase>>) ReflectionUtils.getPrivateValue(event.getRenderer(), RenderLivingBase.class, ObfuscatedNames.RenderLivingBase_layerRenderers);
    for(LayerRenderer<EntityLivingBase> layer : layers){
        if(layer instanceof LayerBipedArmor){
            LayerBipedArmor armor = (LayerBipedArmor)layer;
            ItemStack helmet = event.getEntityPlayer().getItemStackFromSlot(EntityEquipmentSlot.HEAD);
            ModelBiped modelHelmet = armor.getModelFromSlot(EntityEquipmentSlot.HEAD);
            ItemStack chest = event.getEntityPlayer().getItemStackFromSlot(EntityEquipmentSlot.CHEST);
            ModelBiped modelChest = armor.getModelFromSlot(EntityEquipmentSlot.CHEST);
            ItemStack legs = event.getEntityPlayer().getItemStackFromSlot(EntityEquipmentSlot.LEGS);
            ModelBiped modelLegs = armor.getModelFromSlot(EntityEquipmentSlot.LEGS);
            ItemStack boots = event.getEntityPlayer().getItemStackFromSlot(EntityEquipmentSlot.FEET);
            ModelBiped modelBoots = armor.getModelFromSlot(EntityEquipmentSlot.FEET);
            if(modelHelmet !=null){
                if(ItemStackTools.isValid(helmet) && ModEnhancements.INVIS_ARMOR.isApplied(helmet)){
                    modelHelmet.bipedHead.isHidden = false;
                    modelHelmet.bipedHeadwear.isHidden = false;
                }
            }
            if(modelChest !=null){
                if(ItemStackTools.isValid(chest) && ModEnhancements.INVIS_ARMOR.isApplied(chest)){
                    modelChest.bipedBody.isHidden = false;
                    modelChest.bipedRightArm.isHidden = false;
                    modelChest.bipedLeftArm.isHidden = false;
                }
            }
            if(modelLegs !=null){
                if(ItemStackTools.isValid(legs) && ModEnhancements.INVIS_ARMOR.isApplied(legs)){
                    modelLegs.bipedBody.isHidden = false;
                    modelLegs.bipedLeftLeg.isHidden = false;
                    modelLegs.bipedRightLeg.isHidden = false;
                }
            }
            if(modelBoots !=null){
                if(ItemStackTools.isValid(boots) && ModEnhancements.INVIS_ARMOR.isApplied(boots)){
                    modelBoots.bipedLeftLeg.isHidden = false;
                    modelBoots.bipedRightLeg.isHidden = false;
                }
            }
        }
    }
}catch(Exception e){
    e.printStackTrace();
}
  }
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号