Implement AFK messages.

This commit makes it possible for players to set an afk message to detail their reasoning for being away to other players. This can be especially useful for the /msg command; instead of replying the user is afk, it will specify why they are afk so the sender can act further on that information.

Two methods have been added to IUser: getAfkMessage() and setAFKMessage(String).

All locale files have two new messages: userAFKWithReason and userIsAwayWithReason. They all use the messages that do not have the suffix WithReason, i.e. userAFK and userIsAway. Furthermore, the userIsAwayWithReason will not utilise the second parameter, the reason, to prevent spam and unnecessary text in global chat. However, the second parameter ({1}) is available for use in userIsAwayWithReason. userAFKWithReason, which is sent to /msg senders, does use the {1} as it controllable spam by the command sender themselves.

/afk usage is now: /afk [player/message...]
This commit is contained in:
Ali Moghnieh 2016-06-18 17:44:17 +01:00
parent ac4a1565a1
commit 5842b5f51d
29 changed files with 97 additions and 8 deletions

View File

@ -147,4 +147,8 @@ public interface IUser {
CommandSource getSource();
String getName();
String getAfkMessage();
void setAfkMessage(final String message);
}

View File

@ -50,6 +50,7 @@ public class User extends UserData implements Comparable<User>, IMessageRecipien
private boolean enderSee = false;
private transient long teleportInvulnerabilityTimestamp = 0;
private boolean ignoreMsg = false;
private String afkMessage;
public User(final Player base, final IEssentials ess) {
super(base, ess);
@ -417,6 +418,7 @@ public class User extends UserData implements Comparable<User>, IMessageRecipien
afkPosition = this.getLocation();
} else if (!set && isAfk()) {
afkPosition = null;
this.afkMessage = null;
}
if (ess.getSettings().isAfkListName()) {
if(set) {
@ -750,4 +752,16 @@ public class User extends UserData implements Comparable<User>, IMessageRecipien
@Override public void setReplyRecipient(IMessageRecipient recipient) {
this.messageRecipient.setReplyRecipient(recipient);
}
@Override
public String getAfkMessage() {
return this.afkMessage;
}
@Override
public void setAfkMessage(String message) {
if (isAfk()) {
this.afkMessage = message;
}
}
}

View File

@ -15,10 +15,22 @@ public class Commandafk extends EssentialsCommand {
@Override
public void run(Server server, User user, String commandLabel, String[] args) throws Exception {
if (args.length > 0 && user.isAuthorized("essentials.afk.others")) {
User afkUser = getPlayer(server, user, args, 0);
toggleAfk(afkUser);
User afkUser = user; // if no player found, but message specified, set command executor to target user
String message;
try {
afkUser = getPlayer(server, user, args, 0);
message = args.length > 1 ? getFinalArg(args, 1) : null;
} catch (PlayerNotFoundException e) {
// If only one arg is passed, assume the command executor is targeting another player.
if (args.length == 1) {
throw e;
}
message = getFinalArg(args, 0);
}
toggleAfk(afkUser, message);
} else {
toggleAfk(user);
String message = args.length > 0 ? getFinalArg(args, 0) : null;
toggleAfk(user, message);
}
}
@ -26,13 +38,14 @@ public class Commandafk extends EssentialsCommand {
public void run(Server server, CommandSource sender, String commandLabel, String[] args) throws Exception {
if (args.length > 0) {
User afkUser = getPlayer(server, args, 0, true, false);
toggleAfk(afkUser);
String message = args.length > 1 ? getFinalArg(args, 1) : null;
toggleAfk(afkUser, message);
} else {
throw new NotEnoughArgumentsException();
}
}
private void toggleAfk(User user) {
private void toggleAfk(User user, String message) {
user.setDisplayNick();
String msg = "";
if (!user.toggleAfk()) {
@ -44,8 +57,13 @@ public class Commandafk extends EssentialsCommand {
} else {
//user.sendMessage(_("markedAsAway"));
if (!user.isHidden()) {
msg = tl("userIsAway", user.getDisplayName());
if (message != null) {
msg = tl("userIsAwayWithReason", user.getDisplayName(), message);
} else {
msg = tl("userIsAway", user.getDisplayName());
}
}
user.setAfkMessage(message);
}
if (!msg.isEmpty()) {
ess.broadcastMessage(user, msg);

View File

@ -68,7 +68,12 @@ public class SimpleMessageRecipient implements IMessageRecipient {
break;
// When this recipient is AFK, notify the sender. Then, proceed to send the message.
case SUCCESS_BUT_AFK:
sendMessage(tl("userAFK", recipient.getDisplayName()));
// Currently, only IUser can be afk, so we unsafely cast to get the afk message.
if (((IUser) recipient).getAfkMessage() != null) {
sendMessage(tl("userAFKWithReason", recipient.getDisplayName(), ((IUser) recipient).getAfkMessage()));
} else {
sendMessage(tl("userAFK", recipient.getDisplayName()));
}
default:
sendMessage(tl("msgFormat", tl("me"), recipient.getDisplayName(), message));
}

View File

@ -464,8 +464,10 @@ unvanishedReload=\u00a74A reload has forced you to become visible.
upgradingFilesError=Error while upgrading the files.
uptime=\u00a76Uptime\:\u00a7c {0}
userAFK=\u00a77{0} \u00a75is currently AFK and may not respond.
userAFKWithReason=\u00a77{0} \u00a75is currently AFK and may not respond: {1}
userDoesNotExist=\u00a74The user\u00a7c {0} \u00a74does not exist.
userIsAway=\u00a77* {0} \u00a77is now AFK.
userIsAwayWithReason=\u00a77* {0} \u00a77is now AFK.
userIsNotAway=\u00a77* {0} \u00a77is no longer AFK.
userJailed=\u00a76You have been jailed\!
userUnknown=\u00a74Warning\: The user ''\u00a7c{0}\u00a74'' has never joined this server.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74Probehl reload serveru; jsi zase viditelny.
upgradingFilesError=Chyba pri updatovani souboru.
uptime=\u00a76Server je online\:\u00a7c {0}
userAFK=\u00a77{0} \u00a75je nyni AFK a mozna nebude reagovat.
userAFKWithReason=\u00a77{0} \u00a75je nyni AFK a mozna nebude reagovat. {1}
userDoesNotExist=Uzivatel {0} neexistuje.
userIsAway={0} je AFK.
userIsAwayWithReason={0} je AFK.
userIsNotAway={0} se vratil.
userJailed=\u00a77Byl jsi uveznen.
userUnknown=\u00a74Pozor\: Hrac ''\u00a7c{0}\u00a74'' se jeste nikdy nepripojil na tento server.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74En reload har tvunget dig til at blive synlig.
upgradingFilesError=Der opstod en fejl under opgraderingen af filerne.
uptime=\u00a76Oppetid\:\u00a7c {0}
userAFK=\u00a75{0} \u00a75er pt. AFK og svarer m\u00e5ske ikke.
userAFKWithReason=\u00a75{0} \u00a75er pt. AFK og svarer m\u00e5ske ikke. {1}
userDoesNotExist=\u00a74Brugeren\u00a7c {0} \u00a74eksisterer ikke.
userIsAway=\u00a75{0} \u00a75er nu AFK.
userIsAwayWithReason=\u00a75{0} \u00a75er nu AFK.
userIsNotAway=\u00a75{0} \u00a75er ikke l\u00e6ngere AFK.
userJailed=\u00a76Du er blevet f\u00e6ngslet\!
userUnknown=\u00a74Advarsel\: Brugerem ''\u00a7c{0}\u00a74'' har aldrig spillet p\u00e5 serveren.

View File

@ -463,8 +463,10 @@ unvanishedReload=\u00a74Ein Neuladen des Servers hat dich sichtbar gemacht.
upgradingFilesError=Fehler beim Aktualisieren der Dateien
uptime=\u00a76Laufzeit\:\u00a7c {0}
userAFK=\u00a77{0} \u00a75ist gerade nicht da und antwortet wahrscheinlich nicht.
userAFKWithReason=\u00a77{0} \u00a75ist gerade nicht da und antwortet wahrscheinlich nicht. {1}
userDoesNotExist=\u00a74Spieler\u00a7c {0} \u00a74existiert nicht.
userIsAway=\u00a77* {0} \u00a77ist nun abwesend.
userIsAwayWithReason=\u00a77* {0} \u00a77ist nun abwesend.
userIsNotAway=\u00a77* {0} \u00a77ist wieder da.
userJailed=\u00a76Du wurdest eingesperrt.
userUnknown=\u00a74Warnung\: Der Spieler ''\u00a7c{0}\u00a74'' war nie auf diesem Server.

View File

@ -460,8 +460,10 @@ unvanishedReload=\u00a74A reload has forced you to become visible.
upgradingFilesError=Error while upgrading the files.
uptime=\u00a76Uptime\:\u00a7c {0}
userAFK=\u00a77{0} \u00a75is currently AFK and may not respond.
userAFKWithReason=\u00a77{0} \u00a75is currently AFK and may not respond: {1}
userDoesNotExist=\u00a74The user\u00a7c {0} \u00a74does not exist.
userIsAway=\u00a77* {0} \u00a77is now AFK.
userIsAwayWithReason=\u00a77* {0} \u00a77is now AFK.
userIsNotAway=\u00a77* {0} \u00a77is no longer AFK.
userJailed=\u00a76You have been jailed\!
userUnknown=\u00a74Warning\: The user ''\u00a7c{0}\u00a74'' has never joined this server.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74Un reinicio o una recarga del servidor te ha forzado a p
upgradingFilesError=Error mientras se actualizaban los archivos
uptime=\u00a76Tiempo encendido\:\u00a7c {0}
userAFK=\u00a77{0} \u00a75se encuentra ausente y es probable que no responda.
userAFKWithReason=\u00a77{0} \u00a75se encuentra ausente y es probable que no responda. {1}
userDoesNotExist=El usuario {0} no existe
userIsAway=\u00a77{0} \u00a77\u00a1est\u00e1 ausente\!
userIsAwayWithReason=\u00a77{0} \u00a77\u00a1est\u00e1 ausente\!
userIsNotAway=\u00a77{0} \u00a77\u00a1ya no est\u00e1 ausente\!
userJailed=\u00a76\u00a1Has sido encarcelado\!
userUnknown=\u00a74Aviso\: \u00a7cel jugador \u00a74{0} \u00a7cnunca ha visitado el servidor\!

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74Taaslaadimine sundis sind muutuma n\u00e4htavaks.
upgradingFilesError=Viga uuendades faile.
uptime=\u00a76Uptime\:\u00a7c {0}
userAFK=\u00a77{0} \u00a75on hetkel eemal ja ei pruugi vastata.
userAFKWithReason=\u00a77{0} \u00a75on hetkel eemal ja ei pruugi vastata. {1}
userDoesNotExist=\u00a74Kasutaja\u00a7c {0} \u00a74ei ole olemas.
userIsAway=\u00a77* {0} \u00a77on n\u00fc\u00fcd eemal.
userIsAwayWithReason=\u00a77* {0} \u00a77on n\u00fc\u00fcd eemal.
userIsNotAway=\u00a77* {0} \u00a77on tagasi.
userJailed=\u00a76Teid on vangistatud\!
userUnknown=\u00a74Hoiatus\: Kasutaja ''\u00a7c{0}\u00a74'' ei ole kunagi selle serveriga liitunud.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a7cSinut on pakotettu taas n\u00e4kyv\u00e4ksi uudelleen la
upgradingFilesError=Virhe p\u00e4ivitett\u00e4ess\u00e4 tiedostoja
uptime=\u00a76Uptime\:\u00a7c {0}
userAFK=\u00a77{0} \u00a75is currently AFK and may not respond.
userAFKWithReason=\u00a77{0} \u00a75is currently AFK and may not respond. {1}
userDoesNotExist=Pelaajaa {0} ei ole olemassa.
userIsAway={0} on nyt AFK
userIsAwayWithReason={0} on nyt AFK
userIsNotAway={0} ei ole en\u00e4\u00e4 AFK
userJailed=\u00a77Sinut on laitettu vankilaan
userUnknown=\u00a74Warning\: The user ''\u00a7c{0}\u00a74'' has never joined this server.

View File

@ -460,8 +460,10 @@ unvanishedReload=\u00a7cUn reload vous a rendu de nouveau visible.
upgradingFilesError=Erreur durant la mise \u00e0 jour des fichiers.
uptime=\u00a76Dur\u00e9e de fonctionnement \:\u00a7c {0}
userAFK=\u00a75{0} \u00a75est actuellement absent/AFK et peut ne pas r\u00e9pondre.
userAFKWithReason=\u00a75{0} \u00a75est actuellement absent/AFK et peut ne pas r\u00e9pondre. {1}
userDoesNotExist=L''utilisateur {0} n''existe pas.
userIsAway={0} est d\u00e9sormais AFK.
userIsAwayWithReason={0} est d\u00e9sormais AFK.
userIsNotAway={0} n''est plus AFK.
userJailed=\u00a77Vous avez \u00e9t\u00e9 emprisonn\u00e9.
userUnknown=\u00a74Attention \: le joueur \u00a7c{0}\u00a74 n''est jamais venu sur ce serveur.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74A reload k\u00f6vetkezt\u00e9ben mindenki l\u00e1tni fog
upgradingFilesError=Error while upgrading the files.
uptime=\u00a76M\u00fbk\u00f6d\u00e9si id\u00f5\:\u00a7c {0}
userAFK=\u00a75{0} \u00a75most AFK \u00e9s nem bisztos hogy fog v\u00e1laszolni.
userAFKWithReason=\u00a75{0} \u00a75most AFK \u00e9s nem bisztos hogy fog v\u00e1laszolni. {1}
userDoesNotExist=\u00a74The user\u00a7c {0} \u00a74does not exist.
userIsAway=\u00a77* \u00a75{0}\u00a77 elment a g\u00e9pt\u0151l...
userIsAwayWithReason=\u00a77* \u00a75{0}\u00a77 elment a g\u00e9pt\u0151l...
userIsNotAway=\u00a77* \u00a75{0} \u00a77visszaj\u00f6tt...
userJailed=\u00a76Beb\u00f6rt\u00f6n\u00f6ztek\!
userUnknown=\u00a74Figyelem\: ''\u00a7c{0}\u00a74'' m\u00e9g sose j\u00e1rt a szerveren.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74Il server e'' stato ricaricato e cio'' ti ha forzato a t
upgradingFilesError=Errore durante l''aggiornamento dei file
uptime=\u00a76Tempo online\:\u00a7c {0}
userAFK=\u00a77{0} \u00a75e'' attualmente AFK e potrebbe non rispondere.
userAFKWithReason=\u00a77{0} \u00a75e'' attualmente AFK e potrebbe non rispondere. {1}
userDoesNotExist=\u00a74L''utente\u00a7c {0} \u00a74non esiste.
userIsAway=\u00a77* {0} \u00a77e'' AFK.
userIsAwayWithReason=\u00a77* {0} \u00a77e'' AFK.
userIsNotAway=\u00a77* {0} \u00a77non e'' piu'' AFK.
userJailed=\u00a76Sei stato incarcerato\!
userUnknown=\u00a74Attenzione\: Il giocatore ''\u00a7c{0}\u00a74'' non e'' mai entrato sul server.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74A reload has forced you to become visible.
upgradingFilesError=\ud30c\uc77c\uc744 \uc5c5\uadf8\ub808\uc774\ub4dc \ud558\ub358 \ub3c4\uc911, \uc624\ub958\uac00 \ubc1c\uc0dd\ud558\uc600\uc2b5\ub2c8\ub2e4.
uptime=\u00a76\uac00\ub3d9 \uc2dc\uac04\:\u00a7c {0}
userAFK=\u00a77{0} \u00a75\uc740 \ud604\uc7ac \uc7a0\uc218 \uc0c1\ud0dc\uc774\ubbc0\ub85c \uc751\ub2f5\ud558\uc9c0 \uc54a\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
userAFKWithReason=\u00a77{0} \u00a75\uc740 \ud604\uc7ac \uc7a0\uc218 \uc0c1\ud0dc\uc774\ubbc0\ub85c \uc751\ub2f5\ud558\uc9c0 \uc54a\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4. {1}
userDoesNotExist={0} \uc720\uc800\ub294 \uc874\uc7ac\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
userIsAway=\u00a77* {0}\u00a77\ub2d8\uc774 \uc7a0\uc218 \uc0c1\ud0dc \uc785\ub2c8\ub2e4.
userIsAwayWithReason=\u00a77* {0}\u00a77\ub2d8\uc774 \uc7a0\uc218 \uc0c1\ud0dc \uc785\ub2c8\ub2e4.
userIsNotAway=\u00a77* {0}\u00a77\ub2d8\uc758 \uc7a0\uc218 \uc0c1\ud0dc\uac00 \ub05d\ub0ac\uc2b5\ub2c8\ub2e4.
userJailed=\u00a76\uac10\uc625\uc5d0 \uac10\uae08\ub418\uc5c8\uc2b5\ub2c8\ub2e4\!
userUnknown=\u00a74\uacbd\uace0 \: ''\u00a7c{0}\u00a74'' \ub294 \uc11c\ubc84\uc5d0 \ud55c\ubc88\ub3c4 \uc811\uc18d\ud574\ubcf4\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4\!

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74A reload has forced you to become visible.
upgradingFilesError=Error while upgrading the files.
uptime=\u00a76Uptime\:\u00a7c {0}
userAFK=\u00a77{0} \u00a75is currently AFK and may not respond.
userAFKWithReason=\u00a77{0} \u00a75is currently AFK and may not respond. {1}
userDoesNotExist=\u00a74The user\u00a7c {0} \u00a74does not exist.
userIsAway=\u00a77* {0} \u00a77dabar yra AFK r\u0117\u017eime.
userIsAwayWithReason=\u00a77* {0} \u00a77dabar yra AFK r\u0117\u017eime.
userIsNotAway=\u00a77* {0} \u00a77nebera AFK r\u0117\u017eime.
userJailed=\u00a76Tu buvai \u012fkalintas\!
userUnknown=\u00a74Warning\: The user ''\u00a7c{0}\u00a74'' has never joined this server.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74Een herlading heeft u geforceerd om zichtbaar te worden.
upgradingFilesError=Fout tijdens het upgraden van de bestanden.
uptime=\u00a76Tijd dat de server aanstaat\:\u00a7c {0}
userAFK=\u00a75{0} \u00a75is AFK,en zal mogelijk niet reageren.
userAFKWithReason=\u00a75{0} \u00a75is AFK,en zal mogelijk niet reageren. {1}
userDoesNotExist=Speler {0} bestaat niet.
userIsAway={0} is nu afwezig.
userIsAwayWithReason={0} is nu afwezig.
userIsNotAway={0} is niet meer afwezig.
userJailed=\u00a76U bent in de gevangenis gezet\!
userUnknown=\u00a74Waarschuwing\: De gebruiker ''\u00a7c{0}\u00a74'' is nooit op deze server geweest.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74Przeladowanie spowodowalo ze cie widac.
upgradingFilesError=Wystapil blad podczas aktualizowaniu plikow.
uptime=\u00a77Aktywny od\:\u00a7c {0}
userAFK=\u00a74{0} \u00a7\u00a77jest teraz AFK i nie reaguje.
userAFKWithReason=\u00a74{0} \u00a7\u00a77jest teraz AFK i nie reaguje. {1}
userDoesNotExist=\u00a74Uzytkownik\u00a7c {0} \u00a74nie istnieje w bazie danych.
userIsAway=\u00a75{0} \u00a75jest teraz AFK.
userIsAwayWithReason=\u00a75{0} \u00a75jest teraz AFK.
userIsNotAway=\u00a7c{0} \u00a75nie jest juz AFK.
userJailed=\u00a77Zostales zamkniety w wiezieniu.
userUnknown=\u00a74Ostrzezenie\: Gracz ''\u00a7c{0}\u00a74'' nigdy nie byl na tym serwerze.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74Um reload for\u00c3\u00a7ou-lhe a ficar vis\u00c3\u00adv
upgradingFilesError=Erro ao aprimorar os arquivos.
uptime=\u00a76Uptime\:\u00a7c {0}
userAFK=\u00a75{0} \u00a75est\u00c3\u00a1 atualmente AFK e pode nao responder.
userAFKWithReason=\u00a75{0} \u00a75est\u00c3\u00a1 atualmente AFK e pode nao responder. {1}
userDoesNotExist=\u00a74O usu\u00c3\u00a1rio\u00a7c {0} \u00a74nao existe.
userIsAway=\u00a75{0} \u00a75est\u00c3\u00a1 agora AFK.
userIsAwayWithReason=\u00a75{0} \u00a75est\u00c3\u00a1 agora AFK.
userIsNotAway=\u00a75{0} \u00a75nao est\u00c3\u00a1 mais AFK.
userJailed=\u00a76Voc\u00c3\u00aa foi condenado\!
userUnknown=\u00a74Aviso\: O usu\u00c3\u00a1rio ''\u00a7c{0}\u00a74'' nunca entrou nesse servidor.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74Um reload forcou-lhe a ficar visi\u00advel novamente.
upgradingFilesError=Erro ao aprimorar os arquivos.
uptime=\u00a76Tempo online\:\u00a7c {0}
userAFK=\u00a75{0} \u00a75esta atualmente AFK e pode nao responder.
userAFKWithReason=\u00a75{0} \u00a75esta atualmente AFK e pode nao responder. {1}
userDoesNotExist=\u00a74O usuario\u00a7c {0} \u00a74nao existe.
userIsAway=\u00a75{0} \u00a75esta agora AFK.
userIsAwayWithReason=\u00a75{0} \u00a75esta agora AFK.
userIsNotAway=\u00a75{0} \u00a75nao esta mais AFK.
userJailed=\u00a76Voce foi condenado\!
userUnknown=\u00a74Aviso\: O usuario ''\u00a7c{0}\u00a74'' nunca entrou nesse servidor.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74O reincarcare te-a fortat sa devii din nou vizibil.
upgradingFilesError=Eroare urcand fisierele.
uptime=\u00a76Timp total\:\u00a7c {0}
userAFK=\u00a75{0} \u00a75este acum AFK si este posibil sa nu raspunda.
userAFKWithReason=\u00a75{0} \u00a75este acum AFK si este posibil sa nu raspunda. {1}
userDoesNotExist=\u00a74Jucatorul\u00a7c {0} \u00a74nu exista.
userIsAway=\u00a75{0} \u00a75este AFK.
userIsAwayWithReason=\u00a75{0} \u00a75este AFK.
userIsNotAway=\u00a75{0} \u00a75nu mai este AFK.
userJailed=\u00a76Ai fost inchis\!
userUnknown=\u00a74Advertisment\: Jucatorul ''\u00a7c{0}\u00a74'' nu a intrat niciodata pe acest server.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u
upgradingFilesError=\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438 \u0444\u0430\u0439\u043b\u043e\u0432.
uptime=\u00a76\u0410\u043f\u0442\u0430\u0439\u043c\:\u00a7c {0}
userAFK=\u00a75\u0418\u0433\u0440\u043e\u043a {0} \u00a75\u043e\u0442\u043e\u0448\u0435\u043b \u0438 \u043c\u043e\u0436\u0435\u0442 \u043d\u0435 \u043e\u0442\u0432\u0435\u0447\u0430\u0442\u044c.
userAFKWithReason=\u00a75\u0418\u0433\u0440\u043e\u043a {0} \u00a75\u043e\u0442\u043e\u0448\u0435\u043b \u0438 \u043c\u043e\u0436\u0435\u0442 \u043d\u0435 \u043e\u0442\u0432\u0435\u0447\u0430\u0442\u044c. {1}
userDoesNotExist=\u00a74\u0418\u0433\u0440\u043e\u043a\u0430\u00a7c {0} \u00a74\u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442.
userIsAway=\u00a75{0} \u00a75\u043e\u0442\u043e\u0448\u0435\u043b.
userIsAwayWithReason=\u00a75{0} \u00a75\u043e\u0442\u043e\u0448\u0435\u043b.
userIsNotAway=\u00a75{0} \u00a75\u0432\u0435\u0440\u043d\u0443\u043b\u0441\u044f.
userJailed=\u00a76\u0412\u044b \u043f\u043e\u0441\u0430\u0436\u0435\u043d\u044b \u0432 \u0442\u044e\u0440\u044c\u043c\u0443\!
userUnknown=\u00a74\u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435\: \u0418\u0433\u0440\u043e\u043a\u0430 ''\u00a7c{0}\u00a74'' \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435\u0431\u044b\u043b\u043e \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a7cEn omladdning har tvingat dig att bli synlig.
upgradingFilesError=Fel vid uppgradering av filerna
uptime=\u00a76Upptid\:\u00a7c {0}
userAFK=\u00a77{0} \u00a75\u00e4r f\u00f6r n\u00e4rvarande AFK och kanske inte svarar.
userAFKWithReason=\u00a77{0} \u00a75\u00e4r f\u00f6r n\u00e4rvarande AFK och kanske inte svarar. {1}
userDoesNotExist=Anv\u00e4ndaren {0} existerar inte.
userIsAway={0} \u00e4r nu AFK
userIsAwayWithReason={0} \u00e4r nu AFK
userIsNotAway={0} \u00e4r inte l\u00e4ngre AFK
userJailed=\u00a77Du har blivit f\u00e4ngslad
userUnknown=\u00a74Varning\: Anv\u00e4ndaren ''\u00a7c{0}\u00a74'' har aldrig varit inne p\u00e5 denna server tidigare.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74Sunucu Yeniden Yukleme Sirasinda Gorunmezligini Elinden
upgradingFilesError=Dosyalari Yenilerken Bir Sorun Olustu.
uptime=\u00a76Acik kalma Suresi\:\u00a7c {0}
userAFK=\u00a75{0} \u00a75AFK
userAFKWithReason=\u00a75{0} \u00a75AFK {1}
userDoesNotExist=\u00a74Boyle Bir Oyuncu Yok\!
userIsAway=\u00a75{0} \u00a75Uzun Sure Hareket Etmedigi Ic\u0131n AFK Moduna Gecti\!
userIsAwayWithReason=\u00a75{0} \u00a75Uzun Sure Hareket Etmedigi Ic\u0131n AFK Moduna Gecti\!
userIsNotAway=\u00a75{0} \u00a75Artik AFK Degil.
userJailed=\u00a76Hapse Mahkum Edildin\!
userUnknown=\u00a74Bu Oyuncu Sunucuya Hic Girmemis\!

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74\u63d2\u4ef6\u91cd\u8f7d\u8feb\u4f7f\u4f60\u7684\u9690\u
upgradingFilesError=\u5347\u7ea7\u6587\u4ef6\u65f6\u53d1\u751f\u9519\u8bef
uptime=\u00a76\u8fd0\u884c\u65f6\u95f4\:\u00a7c {0}
userAFK=\u00a77{0} \u00a75\u73b0\u5728\u5904\u4e8e\u79bb\u5f00\u72b6\u6001, \u53ef\u80fd\u6682\u65f6\u6ca1\u529e\u6cd5\u56de\u5e94.
userAFKWithReason=\u00a77{0} \u00a75\u73b0\u5728\u5904\u4e8e\u79bb\u5f00\u72b6\u6001, \u53ef\u80fd\u6682\u65f6\u6ca1\u529e\u6cd5\u56de\u5e94. {1}
userDoesNotExist=\u00a74\u73a9\u5bb6 \u00a7c{0} \u00a74\u4e0d\u5b58\u5728.
userIsAway=\u00a77*{0} \u00a77\u6682\u65f6\u79bb\u5f00\u4e86.
userIsAwayWithReason=\u00a77*{0} \u00a77\u6682\u65f6\u79bb\u5f00\u4e86.
userIsNotAway=\u00a77*{0} \u00a77\u56de\u6765\u4e86.
userJailed=\u00a76\u4f60\u5df2\u88ab\u76d1\u7981
userUnknown=\u00a74\u8b66\u544a\: \u8fd9\u4e2a\u73a9\u5bb6 ''\u00a7c{0}\u00a74'' \u4ece\u6765\u6ca1\u6709\u52a0\u5165\u8fc7\u670d\u52a1\u5668.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74\u5916\u639b\u7a0b\u5f0f\u91cd\u8f09\u8feb\u4f7f\u4f60\u
upgradingFilesError=\u5347\u7d1a\u6587\u4ef6\u6642\u767c\u751f\u932f\u8aa4
uptime=\u00a76\u904b\u884c\u6642\u9593\:\u00a7c {0}
userAFK=\u00a75{0} \u00a75\u73fe\u5728\u96e2\u958b, \u53ef\u80fd\u66ab\u6642\u6c92\u8fa6\u6cd5\u56de\u61c9.
userAFKWithReason=\u00a75{0} \u00a75\u73fe\u5728\u96e2\u958b, \u53ef\u80fd\u66ab\u6642\u6c92\u8fa6\u6cd5\u56de\u61c9. {1}
userDoesNotExist=\u00a74\u73a9\u5bb6 \u00a7c{0} \u00a74\u4e0d\u5b58\u5728.
userIsAway=\u00a7d{0} \u00a7d\u66ab\u6642\u96e2\u958b\u4e86
userIsAwayWithReason=\u00a7d{0} \u00a7d\u66ab\u6642\u96e2\u958b\u4e86
userIsNotAway=\u00a7d{0} \u00a7d\u56de\u4f86\u4e86
userJailed=\u00a76\u4f60\u5df2\u88ab\u76e3\u7981
userUnknown=\u00a74\u8b66\u544a\: \u9019\u500b\u73a9\u5bb6 \u00a7c{0}\u00a74 \u5f9e\u4f86\u6c92\u6709\u52a0\u5165\u904e\u670d\u52d9\u5668.

View File

@ -459,8 +459,10 @@ unvanishedReload=\u00a74\u5916\u639b\u7a0b\u5f0f\u91cd\u8f09\u8feb\u4f7f\u4f60\u
upgradingFilesError=\u5347\u7d1a\u6587\u4ef6\u6642\u767c\u751f\u932f\u8aa4
uptime=\u00a76\u904b\u884c\u6642\u9593\:\u00a7c {0}
userAFK=\u00a75{0} \u00a75\u73fe\u5728\u96e2\u958b, \u53ef\u80fd\u66ab\u6642\u6c92\u8fa6\u6cd5\u56de\u61c9.
userAFKWithReason=\u00a75{0} \u00a75\u73fe\u5728\u96e2\u958b, \u53ef\u80fd\u66ab\u6642\u6c92\u8fa6\u6cd5\u56de\u61c9. {1}
userDoesNotExist=\u00a74\u73a9\u5bb6 \u00a7c{0} \u00a74\u4e0d\u5b58\u5728.
userIsAway=\u00a7d{0} \u00a7d\u66ab\u6642\u96e2\u958b\u4e86
userIsAwayWithReason=\u00a7d{0} \u00a7d\u66ab\u6642\u96e2\u958b\u4e86
userIsNotAway=\u00a7d{0} \u00a7d\u56de\u4f86\u4e86
userJailed=\u00a76\u4f60\u5df2\u88ab\u76e3\u7981
userUnknown=\u00a74\u8b66\u544a\: \u9019\u500b\u73a9\u5bb6 \u00a7c{0}\u00a74 \u5f9e\u4f86\u6c92\u6709\u52a0\u5165\u904e\u4f3a\u670d\u5668.

View File

@ -10,7 +10,7 @@ authors: [Zenexer, ementalo, Aelux, Brettflan, KimKandor, snowleo, ceulemans, Xe
commands:
afk:
description: Marks you as away-from-keyboard.
usage: /<command> [player]
usage: /<command> [player/message...]
aliases: [eafk,away,eaway]
antioch:
description: 'A little surprise for operators.'