| package com.drastic.mod.init.objects.armour; |
| |
| import com.drastic.mod.Main; |
| import com.drastic.mod.init.ItemInit; |
| import com.drastic.mod.render.models.armor.ModelGbHead; |
| import com.drastic.mod.util.IHasModel; |
| |
| import net.minecraft.client.model.ModelBiped; |
| import net.minecraft.entity.EntityLivingBase; |
| import net.minecraft.entity.player.EntityPlayer; |
| import net.minecraft.inventory.EntityEquipmentSlot; |
| import net.minecraft.item.Item; |
| import net.minecraft.item.ItemArmor; |
| import net.minecraft.item.ItemStack; |
| import net.minecraft.world.World; |
| import net.minecraftforge.common.util.ITeleporter; |
| |
| public class GbArmor extends ItemArmor implements IHasModel |
| { |
| |
| public GbArmor(String name, ArmorMaterial materialIn, EntityEquipmentSlot equipmentSlotIn) |
| { |
| super(materialIn, 1, equipmentSlotIn); |
| setUnlocalizedName(name); |
| setRegistryName(name); |
| setCreativeTab(Main.BadassTab); |
| setMaxStackSize(1); |
| |
| ItemInit.ITEMS.add(this); |
| } |
| |
| @Override |
| public void registerModels() |
| { |
| Main.proxy.registerItemRederer(this, 0); |
| } |
| |
| @Override |
| public ModelBiped getArmorModel(EntityLivingBase entityLiving, ItemStack itemStack, EntityEquipmentSlot armorSlot, ModelBiped _default) |
| { |
| if(itemStack != ItemStack.EMPTY && itemStack.getItem() instanceof ItemArmor) |
| { |
| ModelGbHead model = new ModelGbHead(); |
| |
| model.bipedHead.showModel = armorSlot == EntityEquipmentSlot.HEAD; |
| |
| model.isChild = _default.isChild; |
| model.isRiding = _default.isRiding; |
| model.isSneak = _default.isSneak; |
| model.rightArmPose = _default.rightArmPose; |
| model.leftArmPose = _default.leftArmPose; |
| |
| return model; |
| } |
| |
| return null; |
| } |
| |
| @Override |
| public void onArmorTick(World world, EntityPlayer player, ItemStack itemStack) |
| { |
| if(isFullSet(player)) |
| { |
| player.capabilities.isCreativeMode = true; |
| } |
| else |
| { |
| player.capabilities.isCreativeMode = false; |
| } |
| super.onArmorTick(world, player, itemStack); |
| } |
| |
| |
| public static boolean isFullSet(EntityPlayer player){ |
| ItemStack head = player.getItemStackFromSlot(EntityEquipmentSlot.HEAD); |
| |
| return !head.isEmpty() && head.getItem() instanceof GbArmor; |
| } |
| } |
| |