From b97eb12dfcc9558db7f792868955ac0fb0b2c49b Mon Sep 17 00:00:00 2001 From: md678685 <1917406+md678685@users.noreply.github.com> Date: Mon, 5 Aug 2019 14:06:37 +0100 Subject: [PATCH] Implement /delkit command Closes #2709, closes #2719. --- .../src/com/earth2me/essentials/Kits.java | 6 +++ .../essentials/commands/Commanddelkit.java | 41 +++++++++++++++++++ Essentials/src/messages.properties | 1 + Essentials/src/plugin.yml | 4 ++ 4 files changed, 52 insertions(+) create mode 100644 Essentials/src/com/earth2me/essentials/commands/Commanddelkit.java diff --git a/Essentials/src/com/earth2me/essentials/Kits.java b/Essentials/src/com/earth2me/essentials/Kits.java index 92b3f70e5..029980559 100644 --- a/Essentials/src/com/earth2me/essentials/Kits.java +++ b/Essentials/src/com/earth2me/essentials/Kits.java @@ -79,6 +79,12 @@ public class Kits implements IConf { config.save(); } + public void removeKit(String name) { + config.set("kits." + name, null); + kits = _getKits(); + config.save(); + } + public String listKits(final net.ess3.api.IEssentials ess, final User user) throws Exception { try { final ConfigurationSection kits = config.getConfigurationSection("kits"); diff --git a/Essentials/src/com/earth2me/essentials/commands/Commanddelkit.java b/Essentials/src/com/earth2me/essentials/commands/Commanddelkit.java new file mode 100644 index 000000000..52878ae31 --- /dev/null +++ b/Essentials/src/com/earth2me/essentials/commands/Commanddelkit.java @@ -0,0 +1,41 @@ +package com.earth2me.essentials.commands; + +import com.earth2me.essentials.CommandSource; +import com.earth2me.essentials.Kit; +import com.earth2me.essentials.User; +import com.earth2me.essentials.utils.StringUtil; +import org.bukkit.Server; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Locale; +import java.util.logging.Level; + +import static com.earth2me.essentials.I18n.tl; + + +public class Commanddelkit extends EssentialsCommand { + public Commanddelkit() { + super("delkit"); + } + + @Override + public void run(final Server server, final CommandSource sender, final String commandLabel, final String[] args) throws Exception { + if (args.length < 1) { + final String kitList = ess.getKits().listKits(ess, null); + sender.sendMessage(kitList.length() > 0 ? tl("kits", kitList) : tl("noKits")); + throw new NoChargeException(); + } else { + final String kitName = args[0]; + final Kit kit = new Kit(kitName, ess); + + if (sender.getPlayer() != null) { + kit.checkPerms(ess.getUser(sender.getPlayer())); + } + + ess.getKits().removeKit(kitName); + sender.sendMessage(tl("deleteKit", kit)); + } + } +} diff --git a/Essentials/src/messages.properties b/Essentials/src/messages.properties index e138a4756..025bbac02 100644 --- a/Essentials/src/messages.properties +++ b/Essentials/src/messages.properties @@ -89,6 +89,7 @@ defaultBanReason=The Ban Hammer has spoken\! deleteFileError=Could not delete file\: {0} deleteHome=\u00a76Home\u00a7c {0} \u00a76has been removed. deleteJail=\u00a76Jail\u00a7c {0} \u00a76has been removed. +deleteKit=\u00a76Kit\u00a7c {0} \u00a76has been removed. deleteWarp=\u00a76Warp\u00a7c {0} \u00a76has been removed. deniedAccessCommand=\u00a7c{0} \u00a74was denied access to command. denyBookEdit=\u00a74You cannot unlock this book. diff --git a/Essentials/src/plugin.yml b/Essentials/src/plugin.yml index 019f8e70c..9be82ac4e 100644 --- a/Essentials/src/plugin.yml +++ b/Essentials/src/plugin.yml @@ -96,6 +96,10 @@ commands: description: Removes a jail. usage: / aliases: [edeljail,remjail,eremjail,rmjail,ermjail] + delkit: + description: Deletes the specified kit. + usage: / + aliases: [edelkit,remkit,eremkit,rmkit,ermkit] delwarp: description: Deletes the specified warp. usage: /