From 0c2e63baaddfa207ace2cfa20f4663d847692482 Mon Sep 17 00:00:00 2001 From: KHobbits Date: Sat, 16 Jun 2012 13:53:46 +0100 Subject: [PATCH] Make /vanish follow the same rules as /fly, /god and /gamemode --- .../src/com/earth2me/essentials/User.java | 13 ++++++--- .../essentials/commands/Commandvanish.java | 29 +++++++++---------- 2 files changed, 23 insertions(+), 19 deletions(-) diff --git a/Essentials/src/com/earth2me/essentials/User.java b/Essentials/src/com/earth2me/essentials/User.java index 06cf375a1..0598b57cf 100644 --- a/Essentials/src/com/earth2me/essentials/User.java +++ b/Essentials/src/com/earth2me/essentials/User.java @@ -636,11 +636,11 @@ public class User extends UserData implements Comparable, IReplyTo, IUser { return vanished; } - - public void toggleVanished() + + public void setVanished(final boolean set) { - vanished = !vanished; - if (vanished) + vanished = set; + if (set) { for (Player p : ess.getServer().getOnlinePlayers()) { @@ -662,4 +662,9 @@ public class User extends UserData implements Comparable, IReplyTo, IUser ess.getVanishedPlayers().remove(getName()); } } + + public void toggleVanished() + { + final boolean set = !vanished; + } } diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandvanish.java b/Essentials/src/com/earth2me/essentials/commands/Commandvanish.java index 865940b30..c81a96912 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandvanish.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandvanish.java @@ -19,27 +19,26 @@ public class Commandvanish extends EssentialsCommand if (args.length < 1) { user.toggleVanished(); - if (!user.isVanished()) + if (user.isVanished()) { - user.sendMessage(_("unvanished")); + user.sendMessage(_("vanished")); } else { - user.sendMessage(_("vanished")); - } - } - if (args.length > 0) - { - if (args[0].contains("on") && !user.isVanished()) - { - user.toggleVanished(); - user.sendMessage(_("vanished")); - } - if (args[0].contains("off") && user.isVanished()) - { - user.toggleVanished(); user.sendMessage(_("unvanished")); } } + else + { + if (args[1].contains("on") || args[1].contains("ena") || args[1].equalsIgnoreCase("1")) + { + user.setVanished(true); + } + else + { + user.setVanished(false); + } + user.sendMessage(user.isVanished() ? _("vanished") : _("unvanished")); + } } }