public virtual void PerformEffect(EntityLiving par1EntityLiving, int par2) { if (Id == Regeneration.Id) { if (par1EntityLiving.GetHealth() < par1EntityLiving.GetMaxHealth()) { par1EntityLiving.Heal(1); } } else if (Id == Poison.Id) { if (par1EntityLiving.GetHealth() > 1) { par1EntityLiving.AttackEntityFrom(DamageSource.Magic, 1); } } else if (Id == Hunger.Id && (par1EntityLiving is EntityPlayer)) { ((EntityPlayer)par1EntityLiving).AddExhaustion(0.025F * (float)(par2 + 1)); } else if (Id == Heal.Id && !par1EntityLiving.IsEntityUndead() || Id == Harm.Id && par1EntityLiving.IsEntityUndead()) { par1EntityLiving.Heal(6 << par2); } else if (Id == Harm.Id && !par1EntityLiving.IsEntityUndead() || Id == Heal.Id && par1EntityLiving.IsEntityUndead()) { par1EntityLiving.AttackEntityFrom(DamageSource.Magic, 6 << par2); } }