@Override public boolean canMateWith(EntityAnimal par1EntityAnimal) { if (par1EntityAnimal == this) { return false; } else if (!this.isTamed()) { return false; } else if (!(par1EntityAnimal instanceof GCMarsEntitySlimeling)) { return false; } else { GCMarsEntitySlimeling slimeling = (GCMarsEntitySlimeling) par1EntityAnimal; return !slimeling.isTamed() ? false : slimeling.isSitting() ? false : this.isInLove() && slimeling.isInLove(); } }
@Override public boolean func_142018_a( EntityLivingBase par1EntityLivingBase, EntityLivingBase par2EntityLivingBase) { if (!(par1EntityLivingBase instanceof EntityCreeper) && !(par1EntityLivingBase instanceof EntityGhast)) { if (par1EntityLivingBase instanceof GCMarsEntitySlimeling) { GCMarsEntitySlimeling slimeling = (GCMarsEntitySlimeling) par1EntityLivingBase; if (slimeling.isTamed() && slimeling.func_130012_q() == par2EntityLivingBase) { return false; } } return par1EntityLivingBase instanceof EntityPlayer && par2EntityLivingBase instanceof EntityPlayer && !((EntityPlayer) par2EntityLivingBase) .canAttackPlayer((EntityPlayer) par1EntityLivingBase) ? false : !(par1EntityLivingBase instanceof EntityHorse) || !((EntityHorse) par1EntityLivingBase).isTame(); } else { return false; } }