Buggy code:
event . world . spawnEntityInWorld ( newGhast ) ; event . entity . setDead ( ) ; } else if ( ( ( ( ESM_Settings . GhastSpawn ) && ( ( ESM_Settings . GhastRarity ) > 0 ) ) && ( event . world . canBlockSeeTheSky ( ( ( int ) ( event . entity . posX ) ) , ( ( int ) ( event . entity . posY ) ) , ( ( int ) ( event . entity . posZ ) ) ) ) ) && ( ( event . entity . posY ) >= 64 ) ) { if ( ( event . world . rand . nextInt ( GhastRarity ) ) == 0 ) { event . setCanceled ( true ) ; EntityGhast newGhast = new EntityGhast ( event . world ) ; newGhast . setLocationAndAngles ( event . entity . posX , event . entity . posY , event . entity . posZ , event . entity . rotationYaw , 0.0F ) ; event . world . spawnEntityInWorld ( newGhast ) ; event . entity . setDead ( ) ; } } break ; } case 1 : { if ( ( ESM_Settings . BlazeSpawn ) && ( ( ESM_Settings . BlazeRarity ) <= 0 ) ) { event . setCanceled ( true ) ; EntityBlaze newBlaze = new EntityBlaze ( event . world ) ; newBlaze . setLocationAndAngles ( event . entity . posX , event . entity . posY , event . entity . posZ , event . entity . rotationYaw , 0.0F ) ; newBlaze . getEntityData ( ) . setBoolean ( "ESM_MODIFIED" , true ) ; event . world . spawnEntityInWorld ( newBlaze ) ; event . entity . setDead ( ) ; } else if ( ( ESM_Settings . BlazeSpawn ) && ( ( ESM_Settings . BlazeRarity ) > 0 ) ) { if ( ( event . world . rand . nextInt ( BlazeRarity ) ) == 0 ) { event . setCanceled ( true ) ; EntityBlaze newBlaze = new EntityBlaze ( event . world ) ; newBlaze . setLocationAndAngles ( event . entity . posX , event . entity . posY , event . entity . posZ , event . entity . rotationYaw , 0.0F ) ; newBlaze . getEntityData ( ) . setBoolean ( "ESM_MODIFIED" , true ) ; event . world . spawnEntityInWorld ( newBlaze ) ; event . entity . setDead ( ) ; } } break ; } } } else if ( ( event . entity ) instanceof EntityArrow ) { EntityArrow arrow = ( ( EntityArrow ) ( event . entity ) ) ; if ( ( arrow . shootingEntity ) instanceof EntitySkeleton ) { EntitySkeleton shooter = ( ( EntitySkeleton ) ( arrow . shootingEntity ) ) ; EntityLivingBase target = shooter . getAttackTarget ( ) ; if ( target != null ) { ESM_EventManager . replaceArrowAttack ( shooter , target , arrow . getDamage ( ) ) ; event . setCanceled ( true ) ; event . entity . setDead ( ) ; } } } else if ( ( event . entity ) instanceof EntityBlaze ) { ESM_BlazeHandler . onEntityJoinWorld ( ( ( EntityBlaze ) ( event . entity ) ) ) ; } else if ( ( event . entity ) instanceof EntitySmallFireball ) { EntitySmallFireball fireball = ( ( EntitySmallFireball ) ( event . entity ) ) ; if ( ( fireball . shootingEntity ) instanceof EntityBlaze ) { fireball . shootingEntity . getEntityData ( ) . setInteger ( "ESM_FIREBALLS" , ( ( fireball . shootingEntity . getEntityData ( ) . getInteger ( "ESM_FIREBALLS" ) ) + 1 ) ) ; } } else if ( ( event . entity ) instanceof EntityEnderman ) { ESM_EndermanHandler . onEntityJoinWorld ( ( ( EntityEnderman ) ( event . entity ) ) ) ; } <START_BUG> if ( ( MobBombs . contains ( EntityList . getEntityID ( event . entity ) ) ) && ( ( event . entity . riddenByEntity ) == null ) ) { <END_BUG> if ( ( ESM_Settings . MobBombRarity ) <= 0 ) { EntityCreeper passenger = new EntityCreeper ( event . entity . worldObj ) ; passenger . setLocationAndAngles ( event . entity . posX , event . entity . posY , event . entity . posZ , event . entity . rotationYaw , 0.0F ) ; passenger . onSpawnWithEgg ( ( ( IEntityLivingData ) ( null ) ) ) ; event . entity . worldObj . spawnEntityInWorld ( passenger ) ; passenger . mountEntity ( event . entity ) ; } else if ( ( ESM_Settings . MobBombRarity ) > 0 ) { if ( ( event . world . rand . nextInt ( MobBombRarity ) ) == 0 ) { EntityCreeper passenger = new EntityCreeper ( event . entity . worldObj ) ; passenger . setLocationAndAngles ( event . entity . posX , event . entity . posY , event . entity . posZ , event . entity . rotationYaw , 0.0F ) ; passenger . onSpawnWithEgg ( ( ( IEntityLivingData ) ( null ) ) ) ; event . entity . worldObj . spawnEntityInWorld ( passenger ) ; passenger . mountEntity ( event . entity ) ; } } } event . entity . getEntityData ( ) . setBoolean ( "ESM_MODIFIED" , true ) ; } public static void replaceArrowAttack ( EntitySkeleton shooter , EntityLivingBase par1EntityLivingBase , double par2 ) { } @ SubscribeEvent public void onEntityDeath ( LivingDeathEvent event ) { } @ SuppressWarnings ( "unchecked" ) public static void searchForTarget ( EntityCreature entity ) { } @ SubscribeEvent public void onLivingUpdate ( LivingUpdateEvent event ) { } @ SubscribeEvent public void onPlayerSleepInBed ( PlayerSleepInBedEvent event ) { } @ SubscribeEvent public void onWorldLoad ( Load event ) { } @ SubscribeEvent public void onWorldUnload ( Unload event ) { } @ SubscribeEvent public void initMapGen ( InitMapGenEvent event ) { }

Fix:
if ( ( ( ESM_Settings . MobBombAll ) || ( MobBombs . contains ( EntityList . getEntityID ( event . entity ) ) ) ) && ( ( event . entity . riddenByEntity ) == null ) ) {