Posted November 5, 201311 yr I want to make my mob only able to be damaged by a player using a particular weapon, however when testing, no weapons do any damage. Method: public boolean attackEntityFrom(DamageSource par1DamageSource, float par2) { Entity entity = this.attackingPlayer; if(entity instanceof EntityPlayer) { if(mc.thePlayer.getHeldItem() == new ItemStack(MyMod.Knife)) { return true; } else return false; } else return false; }
November 5, 201311 yr Maybe you need to call DamageEntity() in EntityLivingBase, not just return true. And you could see the code of EntityLivingBase for more information.
November 5, 201311 yr Hi Your function never returns true because if(mc.thePlayer.getHeldItem() == new ItemStack(MyMod.Knife)) is never true. getHeldItem is a different object to the new ItemStack even if they are identical. try instead if(mc.thePlayer.getHeldItem().itemID == MyMod.Knife.itemID)) -TGG
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.