diff --git a/src/main/java/me/ryanhamshire/GriefPrevention/DataStore.java b/src/main/java/me/ryanhamshire/GriefPrevention/DataStore.java index a7c2f2b..806f586 100644 --- a/src/main/java/me/ryanhamshire/GriefPrevention/DataStore.java +++ b/src/main/java/me/ryanhamshire/GriefPrevention/DataStore.java @@ -990,7 +990,7 @@ public abstract class DataStore assignClaimID(newClaim); // assign a claim ID before calling event, in case a plugin wants to know the ID. ClaimCreatedEvent event = new ClaimCreatedEvent(newClaim, creatingPlayer); Bukkit.getPluginManager().callEvent(event); - if (event.isCancelled()) + if (event.isCancelled() && creatingPlayer != null) { result.succeeded = false; result.claim = null; diff --git a/src/main/java/me/ryanhamshire/GriefPrevention/GriefPrevention.java b/src/main/java/me/ryanhamshire/GriefPrevention/GriefPrevention.java index acac585..ca21852 100644 --- a/src/main/java/me/ryanhamshire/GriefPrevention/GriefPrevention.java +++ b/src/main/java/me/ryanhamshire/GriefPrevention/GriefPrevention.java @@ -22,6 +22,7 @@ import me.ryanhamshire.GriefPrevention.DataStore.NoTransferException; import me.ryanhamshire.GriefPrevention.events.PreventBlockBreakEvent; import me.ryanhamshire.GriefPrevention.events.SaveTrappedPlayerEvent; import me.ryanhamshire.GriefPrevention.events.TrustChangedEvent; +import me.ryanhamshire.GriefPrevention.listeners.AltitudeListener; import me.ryanhamshire.GriefPrevention.metrics.MetricsHandler; import net.milkbowl.vault.economy.Economy; import org.bukkit.BanList; @@ -387,6 +388,7 @@ public class GriefPrevention extends JavaPlugin new IgnoreLoaderThread(player.getUniqueId(), this.dataStore.getPlayerData(player.getUniqueId()).ignoredPlayers).start(); } + new AltitudeListener(this.dataStore, this); AddLogEntry("Boot finished."); try diff --git a/src/main/java/me/ryanhamshire/GriefPrevention/WordFinder.java b/src/main/java/me/ryanhamshire/GriefPrevention/WordFinder.java index 82caa8c..b2cafc1 100644 --- a/src/main/java/me/ryanhamshire/GriefPrevention/WordFinder.java +++ b/src/main/java/me/ryanhamshire/GriefPrevention/WordFinder.java @@ -4,7 +4,7 @@ import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; -class WordFinder +public class WordFinder // make public { private Pattern pattern; diff --git a/src/main/java/me/ryanhamshire/GriefPrevention/listeners/AltitudeListener.java b/src/main/java/me/ryanhamshire/GriefPrevention/listeners/AltitudeListener.java new file mode 100644 index 0000000..cc7f0a2 --- /dev/null +++ b/src/main/java/me/ryanhamshire/GriefPrevention/listeners/AltitudeListener.java @@ -0,0 +1,45 @@ +package me.ryanhamshire.GriefPrevention.listeners; + +import me.ryanhamshire.GriefPrevention.CreateClaimResult; +import me.ryanhamshire.GriefPrevention.DataStore; +import me.ryanhamshire.GriefPrevention.GriefPrevention; +import me.ryanhamshire.GriefPrevention.Messages; +import org.bukkit.Bukkit; +import org.bukkit.World; +import org.bukkit.event.Listener; + +public class AltitudeListener implements Listener { + + private final GriefPrevention plugin; + + public AltitudeListener(DataStore dataStore, GriefPrevention plugin) { + this.plugin = plugin; + this.worldInit(); + } + + private void info(String s) { + plugin.getLogger().info(s); + } + + private void worldInit() { + for(World world : Bukkit.getWorlds()) { +// info("Scanning world " + world.getName()); + if (world.getEnvironment() == World.Environment.THE_END) { + CreateClaimResult result = plugin.dataStore.createClaim(world, + -250, 250, + 0, 256, + 250, -250, + null, null, null, null); + if (!result.succeeded) { + if (result.claim != null) { +// info(Messages.CreateClaimFailOverlapShort.toString()); + } else { +// info(Messages.CreateClaimFailOverlapRegion.toString()); + } + } else { +// info(Messages.CreateClaimSuccess.toString()); + } + } + } + } +} \ No newline at end of file