1
0
mirror of https://github.com/essentials/Essentials.git synced 2025-08-26 16:04:27 +02:00

Don't allow toggling offline players with /fly and /vanish

This commit is contained in:
KHobbits
2012-12-02 00:57:29 +00:00
parent f79fe70a86
commit 032c35c90d
3 changed files with 21 additions and 5 deletions

View File

@@ -1,10 +1,9 @@
package net.ess3.commands;
import static net.ess3.I18n._;
import org.bukkit.command.CommandSender;
import net.ess3.api.IUser;
import net.ess3.permissions.Permissions;
import org.bukkit.Server;
import org.bukkit.command.CommandSender;
public class Commandfly extends EssentialsSettingsCommand
@@ -49,4 +48,9 @@ public class Commandfly extends EssentialsSettingsCommand
{
return Permissions.FLY_EXEMPT.isAuthorized(player);
}
protected boolean toggleOfflinePlayers()
{
return false;
}
}

View File

@@ -44,4 +44,8 @@ public class Commandvanish extends EssentialsSettingsCommand
return Permissions.VANISH_EXEMPT.isAuthorized(player);
}
protected boolean toggleOfflinePlayers()
{
return false;
}
}

View File

@@ -1,10 +1,9 @@
package net.ess3.commands;
import static net.ess3.I18n._;
import java.util.Set;
import org.bukkit.Server;
import org.bukkit.command.CommandSender;
import net.ess3.api.IUser;
import net.ess3.permissions.Permissions;
public abstract class EssentialsSettingsCommand extends EssentialsCommand
@@ -40,6 +39,11 @@ public abstract class EssentialsSettingsCommand extends EssentialsCommand
throw new UnsupportedOperationException("Not supported yet.");
}
protected boolean toggleOfflinePlayers()
{
return true;
}
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
@@ -84,7 +88,11 @@ public abstract class EssentialsSettingsCommand extends EssentialsCommand
private void toggleOtherPlayers(final Server server, final CommandSender sender, final String[] args)
{
for (IUser matchPlayer : ess.getUserMap().matchUsersExcludingHidden(args[0], getPlayerOrNull(sender)))
Set<IUser> matches = toggleOfflinePlayers() ? ess.getUserMap().matchUsers(args[0], true) : ess.getUserMap().matchUsersExcludingHidden(
args[0], getPlayerOrNull(
sender));
for (IUser matchPlayer : matches)
{
if (isExempt(sender, matchPlayer))
{