private void forceSpawn(CreatureSpawner spawner) {

    int range = 1;
    boolean reset = false;
    // if(spawner.getCreatureType() == CreatureType.SKELETON)
    for (int dx = -(range); dx <= range && !reset; dx++) {
      for (int dy = -(range); dy <= range && !reset; dy++) {
        for (int dz = -(range); dz <= range && !reset; dz++) {
          if (spawner.getBlock().getRelative(dx, dy, dz).getType() == Material.AIR) {
            LivingEntity spawnedEnt =
                spawner
                    .getWorld()
                    .spawnCreature(
                        spawner.getBlock().getRelative(dx, dy, dz).getLocation(),
                        spawner.getSpawnedType());
            List<Entity> entList =
                spawnedEnt.getNearbyEntities(
                    SpawnerAdjuster.spawnerEntCheckRadius - 1,
                    SpawnerAdjuster.spawnerEntCheckRadius - 1,
                    SpawnerAdjuster.spawnerEntCheckRadius - 1);
            /// int i = 0; //index
            int numEntsofType = 0; // number of matching ents
            /**
             * this check needs work. Next version! while(i <= entList.size()) { if(entList.get(i)
             * instanceof LivingEntity) { numEntsofType++; } i++; }
             */
            numEntsofType = entList.size();
            if (numEntsofType >= SpawnerAdjuster.maxNumberOfEntsNearSpawner
                && SpawnerAdjuster.useRadiusCheck) {
              spawnedEnt.remove();
            }
            reset = true;
            /* anti-munson implement here */
            if (!SpawnerAdjuster.canSpawn(spawner, spawnedEnt)) {
              spawnedEnt.remove();
            }
            /* end anti munson implement */
            /* prevent pig spawns if defined as such */
            if (spawnedEnt.getType() == EntityType.PIG && SpawnerAdjuster.advanced_stopPigSpawns) {
              spawnedEnt.remove();
            }
          }
        }
      }
    }
    spawner.setDelay(600);
  }