summaryrefslogtreecommitdiffstats
path: root/Essentials
diff options
context:
space:
mode:
authorKHobbits <rob@khobbits.co.uk>2012-09-14 02:30:24 +0100
committerKHobbits <rob@khobbits.co.uk>2012-09-14 02:30:24 +0100
commitcc0a65bacefded3ef91282c77653bfbf1f1e4668 (patch)
tree33be05139846d4e018537d7f47aa5320e8d54232 /Essentials
parentd988546ef31fda13d8113bd30401931e73793da3 (diff)
downloadEssentials-cc0a65bacefded3ef91282c77653bfbf1f1e4668.tar
Essentials-cc0a65bacefded3ef91282c77653bfbf1f1e4668.tar.gz
Essentials-cc0a65bacefded3ef91282c77653bfbf1f1e4668.tar.lz
Essentials-cc0a65bacefded3ef91282c77653bfbf1f1e4668.tar.xz
Essentials-cc0a65bacefded3ef91282c77653bfbf1f1e4668.zip
/ess reset <player> - Clears stored data about a user.
Diffstat (limited to 'Essentials')
-rw-r--r--Essentials/src/com/earth2me/essentials/UserData.java11
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandessentials.java16
2 files changed, 25 insertions, 2 deletions
diff --git a/Essentials/src/com/earth2me/essentials/UserData.java b/Essentials/src/com/earth2me/essentials/UserData.java
index 383c0ccf4..be25cf665 100644
--- a/Essentials/src/com/earth2me/essentials/UserData.java
+++ b/Essentials/src/com/earth2me/essentials/UserData.java
@@ -13,13 +13,14 @@ import org.bukkit.inventory.ItemStack;
public abstract class UserData extends PlayerExtension implements IConf
{
protected final transient IEssentials ess;
- private final EssentialsConf config;
+ private EssentialsConf config;
+ private final File folder;
protected UserData(Player base, IEssentials ess)
{
super(base);
this.ess = ess;
- File folder = new File(ess.getDataFolder(), "userdata");
+ folder = new File(ess.getDataFolder(), "userdata");
if (!folder.exists())
{
folder.mkdirs();
@@ -27,6 +28,12 @@ public abstract class UserData extends PlayerExtension implements IConf
config = new EssentialsConf(new File(folder, Util.sanitizeFileName(base.getName()) + ".yml"));
reloadConfig();
}
+
+ public final void reset () {
+ config.getFile().delete();
+ config = new EssentialsConf(new File(folder, Util.sanitizeFileName(base.getName()) + ".yml"));
+ reloadConfig();
+ }
@Override
public final void reloadConfig()
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandessentials.java b/Essentials/src/com/earth2me/essentials/commands/Commandessentials.java
index d030ec5fb..fe33aebd7 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandessentials.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandessentials.java
@@ -1,6 +1,7 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
+import com.earth2me.essentials.User;
import com.earth2me.essentials.metrics.Metrics;
import java.io.IOException;
import java.util.HashMap;
@@ -41,6 +42,10 @@ public class Commandessentials extends EssentialsCommand
{
run_moo(server, sender, commandLabel, args);
}
+ else if (args[0].equalsIgnoreCase("reset"))
+ {
+ run_reset(server, sender, commandLabel, args);
+ }
else if (args[0].equalsIgnoreCase("opt-out"))
{
run_optout(server, sender, commandLabel, args);
@@ -69,6 +74,17 @@ public class Commandessentials extends EssentialsCommand
}
}
+ private void run_reset(final Server server, final CommandSender sender, final String commandLabel, final String[] args) throws Exception
+ {
+ if (args.length < 2)
+ {
+ throw new NotEnoughArgumentsException("/<command> reset <player>");
+ }
+ final User user = getPlayer(server, args, 1, true);
+ user.reset();
+ sender.sendMessage("Reset Essentials userdata for player: " + user.getDisplayName());
+ }
+
private void run_debug(final Server server, final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
ess.getSettings().setDebug(!ess.getSettings().isDebug());