From fa09d7a0036957ecdd64cadb6e50feb05b8d320d Mon Sep 17 00:00:00 2001 From: SamB440 Date: Thu, 18 Mar 2021 20:41:49 +0000 Subject: [PATCH] Optimise entity regeneration --- .../java/net/islandearth/rpgregions/utils/RegenUtils.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/api/src/main/java/net/islandearth/rpgregions/utils/RegenUtils.java b/api/src/main/java/net/islandearth/rpgregions/utils/RegenUtils.java index a8c13b4..86aec48 100644 --- a/api/src/main/java/net/islandearth/rpgregions/utils/RegenUtils.java +++ b/api/src/main/java/net/islandearth/rpgregions/utils/RegenUtils.java @@ -99,11 +99,12 @@ public class RegenUtils { } private static void generateRandomEntities(ProtectedRegion region, ConfiguredRegion configuredRegion) { + Regenerate regenerate = configuredRegion.getRegenerate(); + if (regenerate == null) return; + if (regenerate.getRegeneratingEntities().isEmpty() || configuredRegion.getWorld() == null) return; Random random = ThreadLocalRandom.current(); Location min = new Location(configuredRegion.getWorld(), region.getMinimumPoint().getBlockX(), region.getMinimumPoint().getBlockY(), region.getMinimumPoint().getBlockZ()); Location max = new Location(configuredRegion.getWorld(), region.getMaximumPoint().getBlockX(), region.getMaximumPoint().getBlockY(), region.getMaximumPoint().getBlockZ()); - Regenerate regenerate = configuredRegion.getRegenerate(); - if (regenerate == null) return; for (int x = min.getBlockX(); x <= max.getBlockX(); x++) { for (int y = min.getBlockY(); y <= max.getBlockY(); y++) {