summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKHobbits <rob@khobbits.co.uk>2012-12-01 23:42:21 +0000
committerKHobbits <rob@khobbits.co.uk>2012-12-01 23:44:09 +0000
commitf79fe70a86d29e0f9f14e3bc111f4f289101b4d5 (patch)
tree7f492f8b43d7418dbd102e55ec6a40f5bb3194d2
parentbb8b15785d8d7937b93e7a6eb40a03d18e1abf99 (diff)
downloadEssentials-f79fe70a86d29e0f9f14e3bc111f4f289101b4d5.tar
Essentials-f79fe70a86d29e0f9f14e3bc111f4f289101b4d5.tar.gz
Essentials-f79fe70a86d29e0f9f14e3bc111f4f289101b4d5.tar.lz
Essentials-f79fe70a86d29e0f9f14e3bc111f4f289101b4d5.tar.xz
Essentials-f79fe70a86d29e0f9f14e3bc111f4f289101b4d5.zip
Fix queue save in god/tptoggle
Use settings abstract for socialspy
-rw-r--r--Essentials/src/messages.properties1
-rw-r--r--Essentials/src/net/ess3/commands/Commandgod.java1
-rw-r--r--Essentials/src/net/ess3/commands/Commandsocialspy.java76
-rw-r--r--Essentials/src/net/ess3/commands/Commandtptoggle.java1
-rw-r--r--Essentials/src/net/ess3/commands/EssentialsSettingsCommand.java1
5 files changed, 30 insertions, 50 deletions
diff --git a/Essentials/src/messages.properties b/Essentials/src/messages.properties
index 677407742..959782879 100644
--- a/Essentials/src/messages.properties
+++ b/Essentials/src/messages.properties
@@ -341,6 +341,7 @@ signFormatTemplate=[{0}]
signProtectInvalidLocation=\u00a74You are not allowed to create sign here.
similarWarpExist=\u00a74A warp with a similar name already exists.
slimeMalformedSize=\u00a74Malformed size.
+socialSpyMode=\u00a76SocialSpy\u00a7c {0} \u00a76for {1}\u00a76.
soloMob=\u00a74That mob likes to be alone.
spawnSet=\u00a76Spawn location set for group\u00a7c {0}\u00a76.
spawned=spawned
diff --git a/Essentials/src/net/ess3/commands/Commandgod.java b/Essentials/src/net/ess3/commands/Commandgod.java
index 6282fad46..e8064a7ed 100644
--- a/Essentials/src/net/ess3/commands/Commandgod.java
+++ b/Essentials/src/net/ess3/commands/Commandgod.java
@@ -10,6 +10,7 @@ public class Commandgod extends EssentialsSettingsCommand
protected void setValue(final IUser player, final boolean value)
{
player.setGodModeEnabled(value);
+ player.queueSave();
}
protected boolean getValue(final IUser player)
diff --git a/Essentials/src/net/ess3/commands/Commandsocialspy.java b/Essentials/src/net/ess3/commands/Commandsocialspy.java
index 3e83aea49..0f99e2655 100644
--- a/Essentials/src/net/ess3/commands/Commandsocialspy.java
+++ b/Essentials/src/net/ess3/commands/Commandsocialspy.java
@@ -6,66 +6,44 @@ import net.ess3.permissions.Permissions;
import org.bukkit.command.CommandSender;
-public class Commandsocialspy extends EssentialsCommand
+public class Commandsocialspy extends EssentialsSettingsCommand
{
- @Override
- public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
+
+ protected void setValue(final IUser player, final boolean value)
{
- if (args.length < 1)
- {
- throw new NotEnoughArgumentsException();
- }
+ player.getData().setSocialspy(value);
+ player.queueSave();
+ }
- socialspyOtherPlayers(sender, args);
+ protected boolean getValue(final IUser player)
+ {
+ return player.getData().isSocialspy();
}
- @Override
- protected void run(final IUser user, final String commandLabel, final String[] args) throws Exception
+ protected void informSender(final CommandSender sender, final boolean value, final IUser player)
{
- if (args.length > 0 && !args[0].trim().isEmpty() && Permissions.SOCIALSPY_OTHERS.isAuthorized(user))
- {
- socialspyOtherPlayers(user, args);
- return;
+ if (value) {
+ sender.sendMessage( _("socialSpyMode", _(getValue(player) ? "enabled" : "disabled"), player.getPlayer().getDisplayName()));
+ }
+ else {
+ //TODO: TL this
+ sender.sendMessage("Can't change socialspy for player " + player.getName());
}
+ }
- user.getData().setSocialspy(!user.getData().isSocialspy());
- user.queueSave();
- user.sendMessage("§7SocialSpy " + (user.getData().isSocialspy() ? _("enabled") : _("disabled")));
+ protected void informPlayer(final IUser player)
+ {
+ final String message = _("socialSpyMode", _(getValue(player) ? "enabled" : "disabled"), player.getPlayer().getDisplayName());
+ player.sendMessage(message);
}
- private void socialspyOtherPlayers(final CommandSender sender, final String[] args)
+ protected boolean canToggleOthers(final IUser user)
{
- for (IUser player : ess.getUserMap().matchUsers(args[0], true))
- {
- if (player.isOnline()
- ? Permissions.SOCIALSPY_EXEMPT.isAuthorized(player)
- : !Permissions.SOCIALSPY_OFFLINE.isAuthorized(sender))
- {
- sender.sendMessage("Can't change socialspy for player " + player.getName()); //TODO: I18n
- continue;
- }
- if (args.length > 1)
- {
- if (args[1].contains("on") || args[1].contains("ena") || args[1].equalsIgnoreCase("1"))
- {
- player.getData().setSocialspy(true);
- player.queueSave();
- }
- else
- {
- player.getData().setSocialspy(false);
- player.queueSave();
- }
- }
- else
- {
- player.getData().setSocialspy(!player.getData().isSocialspy());
- player.queueSave();
- }
+ return Permissions.SOCIALSPY_OTHERS.isAuthorized(user);
+ }
- final boolean enabled = player.getData().isSocialspy();
- player.sendMessage("§7SocialSpy " + (enabled ? _("enabled") : _("disabled"))); //TODO:I18n
- sender.sendMessage("§7SocialSpy " + (enabled ? _("enabled") : _("disabled")));
- }
+ protected boolean isExempt(final CommandSender sender, final IUser player)
+ {
+ return (player.isOnline() ? Permissions.SOCIALSPY_EXEMPT.isAuthorized(player) : !Permissions.SOCIALSPY_OFFLINE.isAuthorized(sender));
}
}
diff --git a/Essentials/src/net/ess3/commands/Commandtptoggle.java b/Essentials/src/net/ess3/commands/Commandtptoggle.java
index f34d667f4..39d84fea8 100644
--- a/Essentials/src/net/ess3/commands/Commandtptoggle.java
+++ b/Essentials/src/net/ess3/commands/Commandtptoggle.java
@@ -12,6 +12,7 @@ public class Commandtptoggle extends EssentialsSettingsCommand
protected void setValue(final IUser player, final boolean value)
{
player.getData().setTeleportEnabled(value);
+ player.queueSave();
}
protected boolean getValue(final IUser player)
diff --git a/Essentials/src/net/ess3/commands/EssentialsSettingsCommand.java b/Essentials/src/net/ess3/commands/EssentialsSettingsCommand.java
index f48b087a2..9d060cbdb 100644
--- a/Essentials/src/net/ess3/commands/EssentialsSettingsCommand.java
+++ b/Essentials/src/net/ess3/commands/EssentialsSettingsCommand.java
@@ -100,7 +100,6 @@ public abstract class EssentialsSettingsCommand extends EssentialsCommand
else
{
setValue(matchPlayer, true);
- ;
}
}
else