From 81cfc8f2d9776c7dbf41501a8a93471becc6688c Mon Sep 17 00:00:00 2001 From: Adam Date: Mon, 7 Sep 2020 07:19:09 -0400 Subject: [PATCH] Confirm /abandonallclaims (#1000) --- .../java/me/ryanhamshire/GriefPrevention/DataStore.java | 1 + .../me/ryanhamshire/GriefPrevention/GriefPrevention.java | 8 +++++++- .../java/me/ryanhamshire/GriefPrevention/Messages.java | 1 + 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/main/java/me/ryanhamshire/GriefPrevention/DataStore.java b/src/main/java/me/ryanhamshire/GriefPrevention/DataStore.java index bd458ba..4242616 100644 --- a/src/main/java/me/ryanhamshire/GriefPrevention/DataStore.java +++ b/src/main/java/me/ryanhamshire/GriefPrevention/DataStore.java @@ -1550,6 +1550,7 @@ public abstract class DataStore this.addDefault(defaults, Messages.NotYourClaim, "This isn't your claim.", null); this.addDefault(defaults, Messages.DeleteTopLevelClaim, "To delete a subdivision, stand inside it. Otherwise, use /AbandonTopLevelClaim to delete this claim and all subdivisions.", null); this.addDefault(defaults, Messages.AbandonSuccess, "Claim abandoned. You now have {0} available claim blocks.", "0: remaining claim blocks"); + this.addDefault(defaults, Messages.ConfirmAbandonAllClaims, "Are you sure you want to abandon ALL of your claims? Please confirm with /AbandonAllClaims confirm", null); this.addDefault(defaults, Messages.CantGrantThatPermission, "You can't grant a permission you don't have yourself.", null); this.addDefault(defaults, Messages.GrantPermissionNoClaim, "Stand inside the claim where you want to grant permission.", null); this.addDefault(defaults, Messages.GrantPermissionConfirmation, "Granted {0} permission to {1} {2}.", "0: target player; 1: permission description; 2: scope (changed claims)"); diff --git a/src/main/java/me/ryanhamshire/GriefPrevention/GriefPrevention.java b/src/main/java/me/ryanhamshire/GriefPrevention/GriefPrevention.java index 5311e55..681bbbf 100644 --- a/src/main/java/me/ryanhamshire/GriefPrevention/GriefPrevention.java +++ b/src/main/java/me/ryanhamshire/GriefPrevention/GriefPrevention.java @@ -1318,7 +1318,13 @@ public class GriefPrevention extends JavaPlugin //abandonallclaims else if (cmd.getName().equalsIgnoreCase("abandonallclaims") && player != null) { - if (args.length != 0) return false; + if (args.length != 1) return false; + + if (!"confirm".equalsIgnoreCase(args[0])) + { + GriefPrevention.sendMessage(player, TextMode.Err, Messages.ConfirmAbandonAllClaims); + return true; + } //count claims PlayerData playerData = this.dataStore.getPlayerData(player.getUniqueId()); diff --git a/src/main/java/me/ryanhamshire/GriefPrevention/Messages.java b/src/main/java/me/ryanhamshire/GriefPrevention/Messages.java index 1df91aa..2f58524 100644 --- a/src/main/java/me/ryanhamshire/GriefPrevention/Messages.java +++ b/src/main/java/me/ryanhamshire/GriefPrevention/Messages.java @@ -79,6 +79,7 @@ public enum Messages NotYourClaim, DeleteTopLevelClaim, AbandonSuccess, + ConfirmAbandonAllClaims, CantGrantThatPermission, GrantPermissionNoClaim, GrantPermissionConfirmation,