Advertisement
Guest User

HaloArmor

a guest
Jan 20th, 2015
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.72 KB | None | 0 0
  1. package halocraft;
  2.  
  3. import net.minecraft.creativetab.CreativeTabs;
  4. import net.minecraft.entity.Entity;
  5. import net.minecraft.entity.EntityLivingBase;
  6. import net.minecraft.entity.player.EntityPlayer;
  7. import net.minecraft.item.Item;
  8. import net.minecraft.item.ItemArmor;
  9. import net.minecraft.item.ItemArmor.ArmorMaterial;
  10. import net.minecraft.item.ItemStack;
  11. import net.minecraft.util.DamageSource;
  12. import net.minecraft.util.MathHelper;
  13. import net.minecraftforge.common.ISpecialArmor;
  14. import net.minecraftforge.common.ISpecialArmor.ArmorProperties;
  15.  
  16. public class HaloArmor extends ItemArmor implements ISpecialArmor {
  17.     public HaloArmor(ArmorMaterial p_i45325_1_, int p_i45325_2_, int p_i45325_3_) {
  18.          super(p_i45325_1_, p_i45325_2_, p_i45325_3_);
  19.         }
  20.         //This is the MOST important method in this class! This gets called every time a player wearing your armor gets damaged, however it is called before the damage is applied so you can modify it.
  21.         public ArmorProperties getProperties(EntityLivingBase player, ItemStack armor, DamageSource source, double damage, int slot) {
  22.          if(source == source.inFire || source == source.lava || source == source.onFire) { //Check for fire damage, you can use other types of damage too.
  23.          return new ArmorProperties(1, 1, MathHelper.floor_double(damage * .25D));
  24.          }
  25.          return new ArmorProperties(0, 0, 0);
  26.         }
  27.         public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot) {
  28.          return 20; //How many half shields each piece of armor will fill up on the armor bar
  29.         }
  30.         public void damageArmor(EntityLivingBase entity, ItemStack stack, DamageSource source, int damage, int slot) {
  31.          stack.damageItem(damage * 1, entity); //Allows you to control the amount of damage done to each piece of armor, useful for nerfing some suits of armor.
  32.         }
  33.  
  34.         @Override //This is pretty self explanatory
  35.         public String getArmorTexture(ItemStack armor, Entity entity, int slot, String type) {
  36.          if(armor.getItem() == halocraft.Main.SpartanHelmet) {
  37.              return "halocraft:textures/armor/SpartanHelmet";
  38.          }
  39.          else if(armor.getItem() == halocraft.Main.SpartanChestplate) {
  40.              return "halocraft:textures/armor/SpartanChestplate.png";
  41.          }
  42.          else if(armor.getItem() == halocraft.Main.SpartanLeggings){
  43.              return "halocraft:textures/armor/SpartanLeggings";
  44.          }
  45.          else{
  46.              return "halocraft:textures/armor/SpartanBoots";
  47.          }
  48.         }
  49.  
  50.         public CreativeTabs[] getCreativeTabs() {
  51.          return new CreativeTabs[] {CreativeTabs.tabCombat}; //This lets me put my armor in as many create tabs as I want, pretty cool right?
  52.         }
  53.  
  54.         public boolean getIsRepairable(ItemStack armor, ItemStack stack) {
  55.          return stack.getItem() == halocraft.Main.HaloIngot; //Allows certain items to repair this armor.
  56.         }
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement