diff --git a/pom.xml b/pom.xml
index 9ad2a63..ee8b828 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,7 +7,7 @@
me.SuperRonanCraft
BetterRTP
jar
- 3.0.6
+ 3.1.0
1.8
@@ -241,13 +241,20 @@
-
+
com.hakan
claimapi
LATEST
provided
+
+
+ com.github.bloodmc
+ GriefDefenderApi
+ 920a610
+ provided
+
xyz.xenondevs
diff --git a/src/main/java/me/SuperRonanCraft/BetterRTP/player/rtp/RTPPluginValidation.java b/src/main/java/me/SuperRonanCraft/BetterRTP/player/rtp/RTPPluginValidation.java
index 76d4b60..8129e80 100644
--- a/src/main/java/me/SuperRonanCraft/BetterRTP/player/rtp/RTPPluginValidation.java
+++ b/src/main/java/me/SuperRonanCraft/BetterRTP/player/rtp/RTPPluginValidation.java
@@ -2,7 +2,8 @@ package me.SuperRonanCraft.BetterRTP.player.rtp;
import br.net.fabiozumbi12.RedProtect.Bukkit.RedProtect;
import com.bekvon.bukkit.residence.Residence;
-import com.bekvon.bukkit.residence.commands.set;
+import com.griefdefender.api.GriefDefender;
+import com.griefdefender.api.claim.Claim;
import com.hakan.claimsystem.api.ClaimAPI;
import com.massivecraft.factions.Board;
import com.massivecraft.factions.FLocation;
@@ -11,7 +12,6 @@ import com.palmergames.bukkit.towny.TownyAPI;
import com.sk89q.worldedit.bukkit.BukkitAdapter;
import com.sk89q.worldguard.WorldGuard;
import com.sk89q.worldguard.protection.ApplicableRegionSet;
-import com.sk89q.worldguard.protection.regions.ProtectedRegion;
import com.sk89q.worldguard.protection.regions.RegionContainer;
import com.sk89q.worldguard.protection.regions.RegionQuery;
import me.SuperRonanCraft.BetterRTP.BetterRTP;
@@ -30,7 +30,8 @@ public class RTPPluginValidation { //Safe locations depending on enabled depende
boolean plugin_lands = getLands(loc);
boolean plugin_residence = getResidence(loc);
boolean plugin_kingdomsx = getKingdomsx(loc);
- boolean plugin_claims_pandomim = getClaimAPIPandomim(loc);
+ boolean plugin_hClaims = gethClaims(loc);
+ boolean plugin_griefDefender = getGriefDefender(loc);
return plugin_worldguard
&& plugin_griefPrevention
&& plugin_towny
@@ -39,7 +40,8 @@ public class RTPPluginValidation { //Safe locations depending on enabled depende
&& plugin_lands
&& plugin_residence
&& plugin_kingdomsx
- && plugin_claims_pandomim;
+ && plugin_hClaims
+ && plugin_griefDefender;
}
// TESTED (v2.12.3)
@@ -162,12 +164,12 @@ public class RTPPluginValidation { //Safe locations depending on enabled depende
return result;
}
- // NOT TESTED (3.0.5)
+ // NOT TESTED (3.1.0)
// hClaims (v1.1.1)
- // https://github.com/pixelnw/claimapi (Local Repo)
- private boolean getClaimAPIPandomim(Location loc) {
+ // https://www.spigotmc.org/resources/hclaims.90540/ (Local Repo)
+ private boolean gethClaims(Location loc) {
boolean result = true;
- if (getPl().getSettings().getsDepends().isClaimAPIPandomim())
+ if (getPl().getSettings().getsDepends().ishClaims())
try {
result = ClaimAPI.isClaimed(loc);
} catch (Exception e) {
@@ -176,6 +178,23 @@ public class RTPPluginValidation { //Safe locations depending on enabled depende
return result;
}
+ // NOT TESTED (3.1.0)
+ // GriefDefender (v1.5.10)
+ // https://www.spigotmc.org/resources/griefdefender.68900/
+ private boolean getGriefDefender(Location loc) {
+ boolean result = true;
+ if (getPl().getSettings().getsDepends().isGriefDefender())
+ try {
+ for (Claim claim : GriefDefender.getCore().getAllClaims())
+ if (claim.contains(loc.getBlockX(), loc.getBlockY(), loc.getBlockZ()))
+ return false;
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return result;
+ }
+
+
private BetterRTP getPl() {
return BetterRTP.getInstance();
}
diff --git a/src/main/java/me/SuperRonanCraft/BetterRTP/references/settings/SoftDepends.java b/src/main/java/me/SuperRonanCraft/BetterRTP/references/settings/SoftDepends.java
index fd7fc3f..9a84cb3 100644
--- a/src/main/java/me/SuperRonanCraft/BetterRTP/references/settings/SoftDepends.java
+++ b/src/main/java/me/SuperRonanCraft/BetterRTP/references/settings/SoftDepends.java
@@ -16,7 +16,8 @@ public class SoftDepends {
private boolean respect_lands = false;
private boolean respect_residence = false;
private boolean respect_kingdomsx = false;
- private boolean respect_claimAPIPandomim = false;
+ private boolean respect_hClaims = false;
+ private boolean respect_griefDefender = false;
//RETURNABLES
private boolean worldguard = false;
private boolean griefprevention = false;
@@ -26,7 +27,8 @@ public class SoftDepends {
private boolean lands = false;
private boolean residence = false;
private boolean kingdomsx = false;
- private boolean claimAPIPandomim = false;
+ private boolean hClaims = false;
+ private boolean griefDefender = false;
public boolean isWorldguard() {
return worldguard;
@@ -60,8 +62,12 @@ public class SoftDepends {
return kingdomsx;
}
- public boolean isClaimAPIPandomim() {
- return claimAPIPandomim;
+ public boolean ishClaims() {
+ return hClaims;
+ }
+
+ public boolean isGriefDefender() {
+ return griefDefender;
}
void load() {
@@ -75,7 +81,8 @@ public class SoftDepends {
respect_lands = config.getBoolean( pre + "Lands");
respect_residence = config.getBoolean( pre + "Residence");
respect_kingdomsx = config.getBoolean( pre + "KingdomsX");
- respect_claimAPIPandomim = config.getBoolean( pre + "hClaims");
+ respect_hClaims = config.getBoolean( pre + "hClaims");
+ respect_griefDefender = config.getBoolean( pre + "GriefDefender");
registerWorldguard();
registerGriefPrevention();
registerTowny();
@@ -85,6 +92,7 @@ public class SoftDepends {
registerResidence();
registerKingdomsX();
registerClaimAPIPandomim();
+ registerGriefDefender();
}
public void registerWorldguard() {
@@ -136,9 +144,15 @@ public class SoftDepends {
}
public void registerClaimAPIPandomim() {
- claimAPIPandomim = respect_claimAPIPandomim && Bukkit.getPluginManager().isPluginEnabled("hClaim");
- if (respect_claimAPIPandomim)
- debug("Respecting `hClaims` was " + (claimAPIPandomim ? "SUCCESSFULLY" : "NOT") + " registered");
+ hClaims = respect_hClaims && Bukkit.getPluginManager().isPluginEnabled("hClaim");
+ if (respect_hClaims)
+ debug("Respecting `hClaims` was " + (hClaims ? "SUCCESSFULLY" : "NOT") + " registered");
+ }
+
+ public void registerGriefDefender() {
+ griefDefender = respect_griefDefender && Bukkit.getPluginManager().isPluginEnabled("GriefDefender");
+ if (respect_griefDefender)
+ debug("Respecting `GriefDefender` was " + (griefDefender ? "SUCCESSFULLY" : "NOT") + " registered");
}
private void debug(String str) {
diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml
index 55d4bac..de6eacd 100644
--- a/src/main/resources/config.yml
+++ b/src/main/resources/config.yml
@@ -21,8 +21,10 @@ Settings:
Residence: false
## Respect KingdomsX areas (https://www.spigotmc.org/resources/kingdomsx.77670/)
KingdomsX: false
- ## Respect hClaims areas (https://github.com/pixelnw/claimapi)
+ ## Respect hClaims areas (https://www.spigotmc.org/resources/hclaims.90540/)
hClaims: false
+ ## Respect GriefDefender areas (https://www.spigotmc.org/resources/griefdefender.68900/)
+ GriefDefender: false
## Output to console some debugging info
Debugger: false
## Amount of chunks to preload around a safe location
diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml
index ebcde32..368d81a 100644
--- a/src/main/resources/plugin.yml
+++ b/src/main/resources/plugin.yml
@@ -1,5 +1,5 @@
main: me.SuperRonanCraft.BetterRTP.BetterRTP
-version: '3.0.6'
+version: '3.1.0'
name: BetterRTP
author: SuperRonanCraft
softdepend:
@@ -14,6 +14,7 @@ softdepend:
- ProtocolLib
- Kingdoms
- hClaims
+ - GriefDefender
api-version: '1.13'
commands: