9
0
mirror of https://gitlab.com/SamB440/rpgregions-2.git synced 2025-12-27 02:39:07 +00:00

Fix potential null error in regeneration

This commit is contained in:
SamB440
2021-03-28 16:08:43 +01:00
parent 8aabcb2798
commit ebb5bbfb1c

View File

@@ -14,6 +14,7 @@ import com.sk89q.worldedit.regions.CuboidRegion;
import com.sk89q.worldedit.session.ClipboardHolder;
import com.sk89q.worldedit.world.World;
import com.sk89q.worldguard.WorldGuard;
import com.sk89q.worldguard.protection.managers.RegionManager;
import com.sk89q.worldguard.protection.regions.ProtectedRegion;
import io.lumine.xikage.mythicmobs.MythicMobs;
import io.lumine.xikage.mythicmobs.mobs.MythicMob;
@@ -38,12 +39,15 @@ import java.util.concurrent.ThreadLocalRandom;
public class RegenUtils {
public static boolean regenerate(ConfiguredRegion region) {
if (region == null) return false;
Regenerate regenerate = region.getRegenerate();
if (regenerate != null) {
IRPGRegionsAPI plugin = RPGRegionsAPI.getAPI();
IntegrationType integrationType = IntegrationType.valueOf(plugin.getConfig().getString("settings.integration.name").toUpperCase());
if (integrationType == IntegrationType.WORLDGUARD) {
ProtectedRegion protectedRegion = WorldGuard.getInstance().getPlatform().getRegionContainer().get(BukkitAdapter.adapt(region.getWorld())).getRegion(region.getId());
RegionManager regionManager = WorldGuard.getInstance().getPlatform().getRegionContainer().get(BukkitAdapter.adapt(region.getWorld()));
if (regionManager == null) return false;
ProtectedRegion protectedRegion = regionManager.getRegion(region.getId());
Location min = new Location(region.getWorld(), protectedRegion.getMinimumPoint().getBlockX(), protectedRegion.getMinimumPoint().getBlockY(), protectedRegion.getMinimumPoint().getBlockZ());
Location max = new Location(region.getWorld(), protectedRegion.getMaximumPoint().getBlockX(), protectedRegion.getMaximumPoint().getBlockY(), protectedRegion.getMaximumPoint().getBlockZ());
if (!regenerate.isLoadChunks() && !region.getWorld().isChunkLoaded(min.getBlockX() >> 4, min.getBlockZ() >> 4)