From f3a1dba7f52babee1523984732961e6a9fd2590e Mon Sep 17 00:00:00 2001
From: ARR4NN <70060472+ARR4NN@users.noreply.github.com>
Date: Tue, 18 Apr 2023 15:05:38 +0100
Subject: [PATCH] Add support for mineplots
(https://builtbybit.com/resources/mineplots.21646/) (#130)
---
pom.xml | 13 +++++++
.../depends/regionPlugins/REGIONPLUGINS.java | 2 +
.../depends/regionPlugins/RTP_MinePlots.java | 37 +++++++++++++++++++
src/main/resources/config.yml | 2 +
4 files changed, 54 insertions(+)
create mode 100644 src/main/java/me/SuperRonanCraft/BetterRTP/references/depends/regionPlugins/RTP_MinePlots.java
diff --git a/pom.xml b/pom.xml
index e887d19..a2c120e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -175,6 +175,12 @@
placeholderapi
http://repo.extendedclip.com/content/repositories/placeholderapi/
+
+
+ minecodes-repository-releases
+ mineCodes Organization Repository
+ https://repository.minecodes.pl/releases
+
@@ -362,5 +368,12 @@
2.0
provided
+
+
+ pl.minecodes.plots
+ plugin-api
+ 3.4.5
+ provided
+
diff --git a/src/main/java/me/SuperRonanCraft/BetterRTP/references/depends/regionPlugins/REGIONPLUGINS.java b/src/main/java/me/SuperRonanCraft/BetterRTP/references/depends/regionPlugins/REGIONPLUGINS.java
index 64172a4..dc1727c 100644
--- a/src/main/java/me/SuperRonanCraft/BetterRTP/references/depends/regionPlugins/REGIONPLUGINS.java
+++ b/src/main/java/me/SuperRonanCraft/BetterRTP/references/depends/regionPlugins/REGIONPLUGINS.java
@@ -18,6 +18,8 @@ public enum REGIONPLUGINS {
TOWNY("Towny", new RTP_Towny()),
ULTIMATECLAIMS("UltimateClaims", new RTP_UltimateClaims()),
WORLDGUARD("WorldGuard", new RTP_WorldGuard()),
+ MINEPLOTS("MinePlots", new RTP_MinePlots()),
+
;
@Getter private final SoftDepends.RegionPlugin plugin = new SoftDepends.RegionPlugin();
@Getter private final String setting_name, pluginyml_name;
diff --git a/src/main/java/me/SuperRonanCraft/BetterRTP/references/depends/regionPlugins/RTP_MinePlots.java b/src/main/java/me/SuperRonanCraft/BetterRTP/references/depends/regionPlugins/RTP_MinePlots.java
new file mode 100644
index 0000000..e55be25
--- /dev/null
+++ b/src/main/java/me/SuperRonanCraft/BetterRTP/references/depends/regionPlugins/RTP_MinePlots.java
@@ -0,0 +1,37 @@
+package me.SuperRonanCraft.BetterRTP.references.depends.regionPlugins;
+
+import org.bukkit.Bukkit;
+import org.bukkit.Location;
+import org.bukkit.plugin.RegisteredServiceProvider;
+import pl.minecodes.plots.api.plot.PlotApi;
+import pl.minecodes.plots.api.plot.PlotServiceApi;
+
+import java.util.Objects;
+
+public class RTP_MinePlots implements RegionPluginCheck{
+ // NOT TESTED (3.6.6)
+ // MinePlots- (v4.0.1)
+ // https://builtbybit.com/resources/mineplots.21646/
+
+ private PlotServiceApi plotServiceApi;
+
+ public boolean check(Location loc) {
+ boolean result = true;
+ if (REGIONPLUGINS.MINEPLOTS.isEnabled())
+ try {
+ RegisteredServiceProvider serviceProvider = Bukkit.getServicesManager().getRegistration(PlotServiceApi.class);
+ Objects.requireNonNull(serviceProvider, "[MinePlots Respect] Service provider is null.");
+ plotServiceApi = serviceProvider.getProvider();
+
+ plotServiceApi = serviceProvider.getProvider();
+ PlotApi plot = plotServiceApi.getPlot(loc);
+
+ if (plot != null) {
+ result = false;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return result;
+ }
+}
diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml
index 3c5734e..0d91186 100644
--- a/src/main/resources/config.yml
+++ b/src/main/resources/config.yml
@@ -5,6 +5,8 @@ Language-File: 'en.yml'
Settings:
Respect:
+ ## Respect MinePlots plots (https://builtbybit.com/resources/mineplots.21646/)
+ MinePlots: false
## Respect WorldGuard areas (https://dev.bukkit.org/projects/worldguard)
WorldGuard: false
## Respect GriefPrevention areas (https://www.spigotmc.org/resources/griefprevention.1884/)