Make /vanish follow the same rules as /fly, /god and /gamemode

This commit is contained in:
KHobbits 2012-06-16 13:53:46 +01:00
parent ee61ce35c8
commit 0c2e63baad
2 changed files with 23 additions and 19 deletions

View file

@ -636,11 +636,11 @@ public class User extends UserData implements Comparable<User>, 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<User>, IReplyTo, IUser
ess.getVanishedPlayers().remove(getName());
}
}
public void toggleVanished()
{
final boolean set = !vanished;
}
}

View file

@ -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"));
}
}
}