Improve hidden player matching.

Replace essentials.teleport.hidden with essentials.vanish.interact
Fix perm checks in tpall and tpaall
This commit is contained in:
KHobbits 2013-05-23 22:59:09 +01:00
parent d48c342e37
commit 66911bb0a9
18 changed files with 50 additions and 61 deletions

View file

@ -28,28 +28,29 @@ public class Commandtpall extends EssentialsCommand
throw new NotEnoughArgumentsException();
}
final User player = getPlayer(server, args, 0);
teleportAllPlayers(server, sender, player);
final User target = getPlayer(server, sender, args, 0);
teleportAllPlayers(server, sender, target);
}
private void teleportAllPlayers(Server server, CommandSender sender, User user)
private void teleportAllPlayers(Server server, CommandSender sender, User target)
{
sender.sendMessage(_("teleportAll"));
for (Player onlinePlayer : server.getOnlinePlayers())
{
final User player = ess.getUser(onlinePlayer);
if (user == player)
if (target == player)
{
continue;
}
if (user.getWorld() != player.getWorld() && ess.getSettings().isWorldTeleportPermissions()
&& !user.isAuthorized("essentials.worlds." + user.getWorld().getName()))
if (target.equals(sender)
&& target.getWorld() != player.getWorld() && ess.getSettings().isWorldTeleportPermissions()
&& !target.isAuthorized("essentials.worlds." + target.getWorld().getName()))
{
continue;
}
try
{
player.getTeleport().now(user, false, TeleportCause.COMMAND);
player.getTeleport().now(target, false, TeleportCause.COMMAND);
}
catch (Exception ex)
{