Remove unused imports

This commit is contained in:
tastybento 2023-03-18 11:17:52 -04:00
parent 95474d6c53
commit 308dc225cd
2 changed files with 25 additions and 2 deletions

View File

@ -38,6 +38,7 @@ import com.google.common.base.Enums;
import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.Multimap;
import world.bentobox.bentobox.BentoBox;
import world.bentobox.bentobox.util.Util;
import world.bentobox.greenhouses.Greenhouses;
import world.bentobox.greenhouses.data.Greenhouse;
@ -376,27 +377,37 @@ public class BiomeRecipe implements Comparable<BiomeRecipe> {
}
// Center spawned mob
Location spawnLoc = b.getLocation().clone().add(new Vector(0.5, 0, 0.5));
return getRandomMob()
BentoBox.getInstance().logDebug("Spawning at " + spawnLoc.getBlock().getType() + " " + spawnLoc);
getRandomMob().ifPresent(m -> {
BentoBox.getInstance().logDebug("Mob is " + m.mobType());
BentoBox.getInstance().logDebug("mobSpawnOn = " + m.mobSpawnOn());
BentoBox.getInstance().logDebug("Block below is " + b.getRelative(BlockFace.DOWN).getType());
});
boolean result = getRandomMob()
// Check if the spawn on block matches, if it exists
.filter(m -> Optional.of(m.mobSpawnOn())
.map(b.getRelative(BlockFace.DOWN).getType()::equals)
.orElse(true))
// If spawn occurs, check if it can fit inside greenhouse
.map(m -> {
BentoBox.getInstance().logDebug("Mob is " + m);
Entity entity = b.getWorld().spawnEntity(spawnLoc, m.mobType());
preventZombie(entity);
return addon
.getManager()
.getMap()
.getGreenhouse(b.getLocation()).map(gh -> {
BentoBox.getInstance().logDebug("Checking boundary");
if (!gh.getInternalBoundingBox().contains(entity.getBoundingBox())) {
entity.remove();
BentoBox.getInstance().logDebug("Removed");
return false;
}
return true;
}).orElse(false);
}).orElse(false);
BentoBox.getInstance().logDebug("Result = " + result);
return result;
}
/**

View File

@ -19,6 +19,7 @@ import org.bukkit.scheduler.BukkitTask;
import org.bukkit.util.BoundingBox;
import org.bukkit.util.NumberConversions;
import world.bentobox.bentobox.BentoBox;
import world.bentobox.greenhouses.Greenhouses;
import world.bentobox.greenhouses.data.Greenhouse;
import world.bentobox.greenhouses.greenhouse.BiomeRecipe;
@ -138,14 +139,17 @@ public class EcoSystemManager {
* @return true if mobs were spawned, false if not
*/
boolean addMobs(Greenhouse gh) {
BentoBox.getInstance().logDebug("Adding mobs");
final BoundingBox bb = gh.getBoundingBox();
if(gh.getLocation() == null || gh.getLocation().getWorld() == null || gh.getWorld() == null
|| !gh.getLocation().getWorld().isChunkLoaded(((int) bb.getMaxX()) >> 4, ((int) bb.getMaxZ()) >> 4)
|| !gh.getLocation().getWorld().isChunkLoaded(((int) bb.getMinX()) >> 4, ((int) bb.getMinZ()) >> 4)){
// Skipping addmobs for unloaded greenhouse
BentoBox.getInstance().logDebug("unloaded gh");
return false;
}
if (gh.getBiomeRecipe().noMobs()) {
BentoBox.getInstance().logDebug("No mobs in recipe");
return false;
}
// Check greenhouse chunks are loaded
@ -154,6 +158,7 @@ public class EcoSystemManager {
int chunkX = (int)(blockX / 16);
int chunkZ = (int)(blockZ / 16);
if (!gh.getWorld().isChunkLoaded(chunkX, chunkZ)) {
BentoBox.getInstance().logDebug("Chunks not loaded");
return false;
}
}
@ -164,19 +169,26 @@ public class EcoSystemManager {
.filter(e -> gh.contains(e.getLocation())).count();
// Get the blocks in the greenhouse where spawning could occur
List<GrowthBlock> list = new ArrayList<>(getAvailableBlocks(gh, false));
BentoBox.getInstance().logDebug("Entities = " + sum + " available blocks are " + list.size());
list.forEach(gb -> BentoBox.getInstance().logDebug(gb.block.getType()));
Collections.shuffle(list, new Random(System.currentTimeMillis()));
Iterator<GrowthBlock> it = list.iterator();
// Check if the greenhouse is full
if (sum >= gh.getBiomeRecipe().getMaxMob()) {
BentoBox.getInstance().logDebug("GH is full");
return false;
}
while (it.hasNext() && (sum == 0 || gh.getArea() / sum >= gh.getBiomeRecipe().getMobLimit())) {
// Spawn something if chance says so
if (gh.getBiomeRecipe().spawnMob(it.next().block())) {
// Add a mob to the sum in the greenhouse
BentoBox.getInstance().logDebug("Spawned a mob");
sum++;
}
}
if (sum == 0 ) {
BentoBox.getInstance().logDebug("Nothing spawned");
}
return sum > 0;
}