Posted January 10, 201312 yr I'm trying to make a set of armour which removes all fire damage, I have managed to do this using the ISpecialArmor interface, but can not stop the hearts flashing and the other effects which happen on the damage ticks, despite the actual damage being prevented. How can I make it so the sound and other stuff does not happen? Here is the existing code for the armour: package yagoki.mods.weapons.items.armor; import net.minecraft.entity.EntityLiving; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.EnumArmorMaterial; import net.minecraft.item.ItemStack; import net.minecraft.util.DamageSource; import net.minecraftforge.common.ISpecialArmor; import yagoki.mods.weapons.CommonProxy; public class PyriteArmor extends AdamantiumArmor implements ISpecialArmor { public PyriteArmor(int itemID, EnumArmorMaterial par2EnumArmorMaterial, int renderType, int part) { super(itemID, par2EnumArmorMaterial, renderType, part); } @Override public String getArmorTextureFile(ItemStack itemstack) { if(this.armorType != 2) { return "/yagoki/mods/weapons/textures/armor/pyrite_1.png"; }else { return "/yagoki/mods/weapons/textures/armor/pyrite_2.png"; } } @Override public String getTextureFile() { return CommonProxy.ITEMS_PNG; } @Override public ArmorProperties getProperties(EntityLiving player, ItemStack armor, DamageSource source, double damage, int slot) { ArmorProperties pyrite; if(source == DamageSource.lava || source == DamageSource.inFire || source == DamageSource.onFire) { pyrite = new ArmorProperties(1, 1, 100); }else { pyrite = new ArmorProperties(0, 0, 0); } return pyrite; } @Override public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot) { return 0; } @Override public void damageArmor(EntityLiving entity, ItemStack stack, DamageSource source, int damage, int slot) { } } github
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.