fixing offline player permissions check-ups.

Ban for offline players.
2 new permissions nodes. essentials.ban.exempt and essentials.kick.exempt. People with this permission cannot be banned / kicked
This commit is contained in:
ementalo 2011-07-15 22:48:42 +01:00
parent 963fd7cf01
commit 1a7b198353
9 changed files with 25 additions and 15 deletions

View File

@ -31,7 +31,7 @@ public class OfflinePlayer implements Player
private final String name;
final IEssentials ess = Essentials.getStatic();
private Location location = new Location(null, 0, 0, 0, 0, 0);
private World world = null;
private World world = ess.getServer().getWorlds().get(0);
private UUID uniqueId = UUID.randomUUID();
public OfflinePlayer(String name)

View File

@ -21,7 +21,12 @@ public class Commandban extends EssentialsCommand
{
throw new NotEnoughArgumentsException();
}
final User player = getPlayer(server, args, 0, true);
if (player.isAuthorized("essentials.ban.exempt"))
{
sender.sendMessage(Util.i18n("banExempt"));
return;
}
if (server.matchPlayer(args[0]).isEmpty())
{
((CraftServer)server).getHandle().a(args[0]);
@ -29,7 +34,6 @@ public class Commandban extends EssentialsCommand
}
else
{
final User player = ess.getUser(server.matchPlayer(args[0]).get(0));
String banReason;
if (args.length > 1)
{

View File

@ -13,7 +13,7 @@ public class Commandkick extends EssentialsCommand
{
super("kick");
}
@Override
public void run(Server server, CommandSender sender, String commandLabel, String[] args) throws Exception
{
@ -21,18 +21,12 @@ public class Commandkick extends EssentialsCommand
{
throw new NotEnoughArgumentsException();
}
User u;
try
User u = getPlayer(server, args, 0);
if (u.isAuthorized("essentials.kick.exempt"))
{
u = ess.getUser(server.matchPlayer(args[0]).get(0));
sender.sendMessage(Util.i18n("kickExempt"));
}
catch (Throwable ex)
{
sender.sendMessage(Util.i18n("playerNotFound"));
return;
}
charge(sender);
final String kickReason = args.length > 1 ? getFinalArg(args, 1) : Util.i18n("kickDefault");
u.kickPlayer(kickReason);

View File

@ -12,7 +12,8 @@ backUsageMsg = \u00a77Returning to previous location.
backupFinished = Backup finished
backupStarted = Backup started
balance = \u00a77Balance: {0}
balanceTop = \u00a77 Top {0} balances
balanceTop = \u00a77Top {0} balances
banExempt = \u00a7cYou can not ban that player.
banIpAddress = \u00a77Banned IP address
bannedIpsFileError = Error reading banned-ips.txt
bannedIpsFileNotFound = banned-ips.txt not found
@ -131,6 +132,7 @@ jailNotExist = That jail does not exist.
jailSet = \u00a77Jail {0} has been set
jumpError = That would hurt your computer''s brain.
kickDefault = Kicked from server
kickExempt = \u00a7cYou can not kick that person.
kill = \u00a77Killed {0}.
kitError = \u00a7cThere are no valid kits.
kitError2 = \u00a7cThat kit does not exist or is improperly defined.

View File

@ -16,6 +16,7 @@ backupStarted = Backup startede
balance = \u00a77Balance: {0}
balanceTop = \u00a77 Top {0} saldi
banIpAddress = \u00a77Bannede IP addresse
banExempt = \u00a7cDu kan ikke forbyde den p\u00e5g\u00e6ldende spiller.
bannedIpsFileError = Fejl i l\u00e6sning af banned-ips.txt
bannedIpsFileNotFound = banned-ips.txt ikke fundet
bannedPlayersFileError = Fejl i l\u00e6sning af banned-players.txt
@ -133,6 +134,7 @@ jailNotExist = Det f\u00e6ngsel eksisterer ikke.
jailSet = \u00a77F\u00e6ngsel {0} er blevet sat
jumpError = Det ville skade din computer''s hjerne.
kickDefault = Kicket fra serveren
kickExempt = \u00a77Du kan ikke sparke denne spiller.
kill = \u00a77Dr\u00e6bte {0}.
kitError = \u00a7cDer er ikke nogen gyldige pakker.
kitError2 = \u00a7cDen pakke eksisterer ikke eller er forkert defineret.

View File

@ -14,6 +14,7 @@ backupStarted = Backup gestartet
balance = \u00a77Geldb\u00f6rse: {0}
balanceTop = \u00a77 Top {0} Guthaben
banIpAddress = \u00a77IP-Adresse gesperrt.
banExempt = \u00a7cDu kan ikke forbyde den p\u00e5g\u00e6ldende spiller.
bannedIpsFileError = Fehler beim Lesen von banned-ips.txt
bannedIpsFileNotFound = banned-ips.txt nicht gefunden
bannedPlayersFileError = Fehler beim Lesen von banned-players.txt
@ -131,6 +132,7 @@ jailNotExist = Dieses Gef\u00e4ngnis existiert nicht.
jailSet = \u00a77Gef\u00e4ngnis {0} wurde erstellt.
jumpError = Das w\u00fcrde deinen Computer \u00fcberlasten.
kickDefault = Vom Server geworfen
kickExempt = \u00a7cSie k\u00f6nnen nicht kicken, dass Spieler.
kill = \u00a77{0} get\u00f6tet.
kitError = \u00a7cEs gibt keine g\u00fcltigen Ausr\u00fcstungen.
kitError2 = \u00a7cDiese Ausr\u00fcstung existiert nicht oder ist ung\u00fcltig.

View File

@ -14,6 +14,7 @@ backupStarted = Backup started
balance = \u00a77Balance: {0}
balanceTop = \u00a77 Top {0} balances
banIpAddress = \u00a77Banned IP address
banExempt = \u00a7cYou can not ban that player.
bannedIpsFileError = Error reading banned-ips.txt
bannedIpsFileNotFound = banned-ips.txt not found
bannedPlayersFileError = Error reading banned-players.txt
@ -131,6 +132,7 @@ jailNotExist = That jail does not exist.
jailSet = \u00a77Jail {0} has been set
jumpError = That would hurt your computer''s brain.
kickDefault = Kicked from server
kickExempt = \u00a7cYou can not kick that person.
kill = \u00a77Killed {0}.
kitError = \u00a7cThere are no valid kits.
kitError2 = \u00a7cThat kit does not exist or is improperly defined.

View File

@ -14,6 +14,7 @@ backupStarted = D\u00e9but du backup
balance = \u00a77Solde: {0}
balanceTop = \u00a77 Top {0} soldes
banIpAddress = \u00a77Adresse IP banni
banExempt = \u00a77Vous ne pouvez pas interdire ce joueur.
bannedIpsFileError = Erreur de lecture de banned-ips.txt
bannedIpsFileNotFound = Fichier banned-ips.txt introuvable
bannedPlayersFileError = Erreur lors de la lecture de banned-players.txt
@ -131,6 +132,7 @@ jailNotExist = Cette prison n''existe pas.
jailSet = \u00a77La prison {0} a \u00e9t\u00e9 cr\u00e9\u00e9.
jumpError = \u00c7a aurait pu faire mal au cerveau de votre ordinateur.
kickDefault = Kick\u00e9 du serveur
kickExempt = \u00a77Vous ne pouvez pas lancer ce joueur.
kill = \u00a77Tu\u00e9 {0}.
kitError = \u00a7cIl n''y a pas de kits valides.
kitError2 = \u00a7cCe kit n''existe pas ou a \u00e9t\u00e9 mal d\u00e9fini.

View File

@ -15,6 +15,7 @@ backupStarted = Backup wordt nu gemaakt
balance = \u00a77Saldo: {0}
balanceTop = \u00a77 Top {0} saldi
banIpAddress = \u00a77Verboden IP-adres
banExempt = \u00a77Je kunt niet verbieden die speler.
bannedIpsFileError = Fout bij het lezen van banned-ips.txt
bannedIpsFileNotFound = banned-ips.txt werd niet gevonden
bannedPlayersFileError = Fout bij het lezen van banned-players.txt
@ -132,6 +133,7 @@ jailNotExist = Die gevangenis bestaat niet.
jailSet = \u00a77Gevangenis {0} is ingesteld
jumpError = Dat zou je computers hersenen beschadigen.
kickDefault = Gekicked van de server
kickExempt = \u00a77Je kunt niet schoppen die speler.
kill = \u00a77Jij doodde {0}.
kitError = \u00a7cEr zijn geen geldige kits.
kitError2 = \u00a7cDie kit bestaat niet of is verkeerde beschreven.