Merge remote-tracking branch 'upstream/2.x' into final_mute_reason_issue#385

This commit is contained in:
CreedTheFreak 2017-12-26 08:16:46 -08:00
commit 5fbc412542
29 changed files with 71 additions and 9 deletions

View File

@ -365,7 +365,13 @@ public class EssentialsPlayerListener implements Listener {
case KICK_BANNED:
BanEntry banEntry = ess.getServer().getBanList(BanList.Type.NAME).getBanEntry(event.getPlayer().getName());
if (banEntry != null) {
event.setKickMessage(tl("banJoin", banEntry.getReason()));
Date banExpiry = banEntry.getExpiration();
if (banExpiry != null) {
String expiry = DateUtil.formatDateDiff(banExpiry.getTime());
event.setKickMessage(tl("tempbanJoin", expiry, banEntry.getReason()));
} else {
event.setKickMessage(tl("banJoin", banEntry.getReason()));
}
} else {
banEntry = ess.getServer().getBanList(BanList.Type.IP).getBanEntry(event.getAddress().getHostAddress());
if (banEntry != null) {

View File

@ -7,6 +7,8 @@ import com.earth2me.essentials.utils.FormatUtil;
import com.earth2me.essentials.utils.NumberUtil;
import com.google.common.base.Joiner;
import net.ess3.api.IEssentials;
import org.apache.commons.lang.ArrayUtils;
import org.bukkit.Color;
import org.bukkit.DyeColor;
import org.bukkit.FireworkEffect;
@ -117,6 +119,26 @@ public class MetaItemStack {
}
public void parseStringMeta(final CommandSource sender, final boolean allowUnsafe, String[] string, int fromArg, final IEssentials ess) throws Exception {
// Make any entries after lore definition become the lore and not parsed.
{
int loreIndex = -1;
boolean dirty = false;
for (int i = 0; i < string.length; i++) {
String _str = string[i];
if (loreIndex == -1) {
if (_str.matches("^lore" + splitPattern.pattern() + ".*")) {
loreIndex = i;
}
} else {
string[loreIndex] += " " + string[i];
string[i] = null;
dirty = true;
}
}
if (dirty) {
string = (String[]) ArrayUtils.subarray(string, 0, loreIndex + 1);
}
}
if (string[fromArg].startsWith("{") && hasMetaPermission(sender, "vanilla", false, true, ess)) {
try {
stack = ess.getServer().getUnsafe().modifyItemStack(stack, Joiner.on(' ').join(Arrays.asList(string).subList(fromArg, string.length)));

View File

@ -32,14 +32,22 @@ public class Commandtppos extends EssentialsCommand {
final double z = args[2].startsWith("~") ? user.getLocation().getZ() + (args[2].length() > 1 ? Integer.parseInt(args[2].substring(1)) : 0) : Integer.parseInt(args[2]);
final Location loc = new Location(user.getWorld(), x, y, z, user.getLocation().getYaw(), user.getLocation().getPitch());
if (args.length == 4) {
loc.setWorld(ess.getWorld(args[3]));
World w = ess.getWorld(args[3]);
if (user.getWorld() != w && ess.getSettings().isWorldTeleportPermissions() && !user.isAuthorized("essentials.worlds." + w.getName())) {
throw new Exception(tl("noPerm", "essentials.worlds." + w.getName()));
}
loc.setWorld(w);
}
if (args.length > 4) {
loc.setYaw((FloatUtil.parseFloat(args[3]) + 360) % 360);
loc.setPitch(FloatUtil.parseFloat(args[4]));
}
if (args.length > 5) {
loc.setWorld(ess.getWorld(args[5]));
World w = ess.getWorld(args[5]);
if (user.getWorld() != w && ess.getSettings().isWorldTeleportPermissions() && !user.isAuthorized("essentials.worlds." + w.getName())) {
throw new Exception(tl("noPerm", "essentials.worlds." + w.getName()));
}
loc.setWorld(w);
}
if (x > 30000000 || y > 30000000 || z > 30000000 || x < -30000000 || y < -30000000 || z < -30000000) {
throw new NotEnoughArgumentsException(tl("teleportInvalidLocation"));
@ -116,4 +124,4 @@ public class Commandtppos extends EssentialsCommand {
return Collections.emptyList();
}
}
}
}

View File

@ -428,7 +428,7 @@ cancel-afk-on-move: true
# Set the player's list name when they are AFK. This is none by default which specifies that Essentials
# should not interfere with the AFK player's list name.
# You may use color codes, use {USERNAME} the player's name or {PLAYER} for the player's displayname.
afk-list-name: none
afk-list-name: "none"
# You can disable the death messages of Minecraft here.
death-messages: true

View File

@ -451,6 +451,7 @@ teleporting=\u00a76Teleporting...
teleportToPlayer=\u00a76Teleporting to \u00a7c{0}\u00a76.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74You may not tempban that player.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76You\u00a7c {0} \u00a76thunder in your world.
thunderDuration=\u00a76You\u00a7c {0} \u00a76thunder in your world for\u00a7c {1} \u00a76seconds.
timeBeforeHeal=\u00a74Time before next heal\:\u00a7c {0}\u00a76.

View File

@ -443,6 +443,7 @@ teleporting=\u00a77Teleportuji...
teleportToPlayer=\u00a76Teleportuji k hraci \u00a7c{0}\u00a76.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a77Nemel by jsi docasne zabanovat tohoto hrace.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=Nastavil jsi {0} bouri ve tvem svete.
thunderDuration=Nastavil jsi {0} bouri ve svete po {1} sekund.
timeBeforeHeal=Potrebny cas pro dalsi uzdraveni\: {0}

View File

@ -443,6 +443,7 @@ teleporting=\u00a76Teleporterer...
teleportToPlayer=\u00a76Teleporterer til \u00a7c{0}\u00a76.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74Du kan ikke tempbanne den spiller.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76Du har\u00a7c {0} \u00a76torden i din verden.
thunderDuration=\u00a76Du har\u00a7c {0} \u00a76torden i din verden i\u00a7c {1} \u00a76sekunder.
timeBeforeHeal=\u00a74Tid inden n\u00e6ste helbredelse\:\u00a7c {0}\u00a76.

View File

@ -447,6 +447,7 @@ teleporting=\u00a76Teleportiere...
teleportToPlayer=\u00a76teleportieren zu \u00a7c{0}\u00a76.
tempBanned=\u00a7cDu wurdest f\u00fcr {0} verbannt\:\n\u00a7r{2}
tempbanExempt=\u00a74Du kannst diesen Spieler nicht zeitlich bannen.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76Es donnert nun in deiner Welt \u00a7c{0}\u00a76.
thunderDuration=\u00a76Es donnert nun f\u00fcr\u00a7c {1} \u00a76Sekunden in deiner Welt\u00a7c {0}\u00a76.
timeBeforeHeal=\u00a74Zeit bis zur n\u00e4chsten Heilung\:\u00a7c {0}\u00a76.

View File

@ -445,6 +445,7 @@ teleporting=\u00a76Teleporting...
teleportToPlayer=\u00a76Teleporting to \u00a7c{0}\u00a76.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74You may not tempban that player.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76You\u00a7c {0} \u00a76thunder in your world.
thunderDuration=\u00a76You\u00a7c {0} \u00a76thunder in your world for\u00a7c {1} \u00a76seconds.
timeBeforeHeal=\u00a74Time before next heal\:\u00a7c {0}\u00a76.

View File

@ -443,6 +443,7 @@ teleporting=\u00a76Teletransportando...
teleportToPlayer=\u00a76Teletransport\u00e1ndose a \u00a7c{0}\u00a76.
tempBanned=\u00a7cHas sido baneado temporalmente por {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74No puedes banear temporalmente a ese usuario.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76Has cambiado los truenos a\u00a7c {0} \u00a76en tu mundo.
thunderDuration=\u00a76Has\u00a7c {0} \u00a76una tormenta en tu mundo durante\u00a7c {1} \u00a76segundos.
timeBeforeHeal=Tiempo antes de la siguiente curacion\: {0}

View File

@ -443,6 +443,7 @@ teleporting=\u00a76Teleportimine...
teleportToPlayer=\u00a76Telepordin \u00a7c{0}\u00a76 juurde.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74Sa ei v\u00f5i seda m\u00e4ngijat ajutiselt blokeerida.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76Sa\u00a7c {0} \u00a76\u00e4ikeseliseks oma maailmas.
thunderDuration=\u00a76Sa\u00a7c {0} \u00a76\u00e4ikeliseks oma maailmas\u00a7c {1} \u00a76sekundiks.
timeBeforeHeal=\u00a74Aeg enne j\u00e4rgmist elustamist\:\u00a7c {0}\u00a76.

View File

@ -443,6 +443,7 @@ teleporting=\u00a77Teleportataan...
teleportToPlayer=\u00a76Teleportataan \u00a7c {0} \u00a76.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a77Et voi bannia tuota pelaajaa
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=Myrsky {0} maailmassasi
thunderDuration=Myrsky {0} maailmassasi {1} sekuntia.
timeBeforeHeal=Aika ennen seuraavaa parannusta\: {0}

View File

@ -450,6 +450,7 @@ teleporting=\u00a77T\u00e9l\u00e9portation en cours...
teleportToPlayer=\u00a76T\u00e9l\u00e9portation vers \u00a7c{0}\u00a76.
tempBanned=\u00a7cVous avez \u00e9t\u00e9 banni temporairement pour {0}\:\n\u00a7r{2}
tempbanExempt=\u00a77Vous ne pouvez pas bannir temporairement ce joueur.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=Vous avez {0} la foudre dans votre monde.
thunderDuration=Vous avez {0} la foudre sur le serveur pendant {1} seconde(s).
timeBeforeHeal=Temps avant le prochain soin \: {0}

View File

@ -443,6 +443,7 @@ teleporting=\u00a76Teleport\u00e1l\u00e1s...
teleportToPlayer=\u00a76Teleport\u00e1l\u00e1s \u00a7c{0}\u00a76-hoz/hez.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74Nem tempbannolhatod ezt a szem\u00e9lyt.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76You\u00a7c {0} \u00a76thunder in your world.
thunderDuration=\u00a76You\u00a7c {0} \u00a76thunder in your world for\u00a7c {1} \u00a76seconds.
timeBeforeHeal=\u00a74Time before next heal\:\u00a7c {0}\u00a76.

View File

@ -449,6 +449,7 @@ teleporting=\u00a77Teletrasporto in corso...
teleportToPlayer=\u00a76Teletrasportato a \u00a7c{0}\u00a76.
tempBanned=\u00a7cSei stato temporaneamente bannato per {0}\:\n\u00a7r{2}
tempbanExempt=\u00a77Non puoi bannare questo giocatore.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=Abilita i fulmini dal cielo\: {0}
thunderDuration=Abilita i fulmini dal cielo\: {0} per {1} secondi.
timeBeforeHeal=Tempo rimanente prima della prossima cura\: {0}

View File

@ -443,6 +443,7 @@ teleporting=\u00a76\ud154\ub808\ud3ec\ud2b8 \uc911 \uc785\ub2c8\ub2e4...
teleportToPlayer=\u00a7c{0}\u00a76\ub85c \uc774\ub3d9 \ud569\ub2c8\ub2e4.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74\ud574\ub2f9 \ud50c\ub808\uc774\uc5b4\ub97c \uc784\uc2dc \ucc28\ub2e8\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76\ub2f9\uc2e0\uc740 \uc774 \uc6d4\ub4dc\uc758 \ucc9c\ub465\uc744 {0} \uc2dc\ucf30\uc2b5\ub2c8\ub2e4.
thunderDuration=\u00a76\ub2f9\uc2e0\uc740 \uc774 \uc6d4\ub4dc\uc758 \ucc9c\ub465\uc744 {1}\ucd08 \ub3d9\uc548 {0} \uc2dc\ucf30\uc2b5\ub2c8\ub2e4.
timeBeforeHeal=\u00a74\ub2e4\uc74c \ud68c\ubcf5\uae4c\uc9c0\uc758 \ud544\uc694\ud55c \uc2dc\uac04\: \u00a7c{0}\u00a76.

View File

@ -443,6 +443,7 @@ teleporting=\u00a76Teleportuojama...
teleportToPlayer=\u00a76Teleportuojama pas \u00a7c{0}\u00a76.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74Tu negali u\u017eblokuoti \u0161io \u017eaid\u0117jo laikinai.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76You\u00a7c {0} \u00a76thunder in your world.
thunderDuration=\u00a76You\u00a7c {0} \u00a76thunder in your world for\u00a7c {1} \u00a76seconds.
timeBeforeHeal=\u00a74Laikas iki kito pagydymo\:\u00a7c {0}\u00a76.

View File

@ -447,6 +447,7 @@ teleporting=\u00a76Bezig met teleporteren...
teleportToPlayer=\u00a76Teleporteren naar \u00a7c{0}\u00a76.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74U kunt deze speler niet tijdelijk verbannen.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76U heeft onweer\u00a7c {0} \u00a76in uw wereld.
thunderDuration=\u00a76U heeft onweer \u00a7c{0}\u00a76 in uw wereld voor \u00a7c{1}\u00a76 seconde(n).
timeBeforeHeal=\u00a74Afkoeltijd tot de volgende genezing\:\u00a7c {0}\u00a76.

View File

@ -443,6 +443,7 @@ teleporting=\u00a77Teleportacja...
teleportToPlayer=\u00a76Teleportowanie do \u00a7c{0}\u00a76.
tempBanned=\u00a7cZosta\u0142e\u015B tymczasowo zbanowany na {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74Nie mo\u017Cesz tymczasowo zbanowa\u0107 tego gracza.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a7c{0} \u00a77przywo\u0142a\u0142 burz\u0119.
thunderDuration=\u00a77Gracz \u00a7c{0} \u00a77przywo\u0142a\u0142 burz\u0119 na\u00a7c {1} \u00a77sekund.
timeBeforeHeal=\u00a77Czas przed nast\u0119pnym uzdrowieniem\:\u00a7c {0}\u00a77.

View File

@ -443,6 +443,7 @@ teleporting=\u00A76Teletransportando...
teleportToPlayer=\u00A76Teletransportando para \u00A76 \u00A7c {0}.
tempBanned=\u00A7cFoste banido temporariamente por {0}:n\u00A7r{2}
tempbanExempt=\u00A74N\u00E3o podes banir temporariamente esse jogador.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00A76Tu\u00A7c {0} \u00A76trovoada no teu mundo.
thunderDuration=\u00A76Tu\u00A7c {0} \u00A76trovoada no teu mundo por\u00A7c {1} \u00A76segundos.
timeBeforeHeal=\u00A76Tempo antes da pr\u00F3xima cura:\u00A7c {0}\u00A76.

View File

@ -443,6 +443,7 @@ teleporting=\u00A76Teleportando...
teleportToPlayer=\u00A76Teletransportando para \u00A76 \u00A7c {0}.
tempBanned=\u00A7cVoc\u00EA foi banido temporariamente por {0}\:\n\u00A7r{2}
tempbanExempt=\u00A74Voc\u00EA n\u00E3o pode banir temporariamente esse jogador.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00A76Voc\u00EA\u00A7c {0} \u00A76trovoada em seu mundo.
thunderDuration=\u00A76Voc\u00EA\u00A7c {0} \u00A76trovoada em seu mundo por\u00A7c {1} \u00A76segundos.
timeBeforeHeal=\u00A76Tempo antes da pr\u00F3xima cura\:\u00A7c {0}\u00A76.

View File

@ -443,6 +443,7 @@ teleporting=\u00a76Teleporteaza...
teleportToPlayer=\u00a76Teleporting to \u00a7c{0}\u00a76.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74Nu poti interzice acest jucatoru.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76Ai\u00a7c {0} \u00a76ploaia in lumea ta.
thunderDuration=\u00a76Ai\u00a7c {0} \u00a76ploaia in luma ta pentru\u00a7c {1} \u00a76secunde.
timeBeforeHeal=\u00a76Timp pana la urmatoarea vindecare\:\u00a7c {0}\u00a76.

View File

@ -443,6 +443,7 @@ teleporting=\u00a76\u0422\u0435\u043b\u0435\u043f\u043e\u0440\u0442\u0438\u0440\
teleportToPlayer=\u00a76\u0422\u0435\u043b\u0435\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043a \u00a7c{0}\u00a76.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74\u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0437\u0430\u0431\u0430\u043d\u0438\u0442\u044c \u044d\u0442\u043e\u0433\u043e \u0438\u0433\u0440\u043e\u043a\u0430.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76\u0422\u044b\u00a7c {0} \u00a76\u0433\u0440\u043e\u0437\u0443 \u0432 \u0441\u0432\u043e\u0435\u043c \u043c\u0438\u0440\u0435.
thunderDuration=\u00a76\u0412\u044b\u00a7c {0} \u00a76\u0433\u0440\u043e\u0437\u0443 \u0432 \u0441\u0432\u043e\u0435\u043c \u043c\u0438\u0440\u0435 \u043d\u0430\u00a7c {1} \u00a76\u0441\u0435\u043a\u0443\u043d\u0434.
timeBeforeHeal=\u00a76\u0412\u0440\u0435\u043c\u0435\u043d\u0438 \u0434\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u043b\u0435\u0447\u0435\u043d\u0438\u044f\:\u00a7c {0}\u00a76.

View File

@ -443,6 +443,7 @@ teleporting=\u00a77Teleporterar...
teleportToPlayer=\u00a76Teleporting to \u00a7c{0}\u00a76.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a77Du kan inte tempor\u00e4rt banna den spelaren
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=Du {0} \u00e5ska i din v\u00e4rld
thunderDuration=Du {0} i din v\u00e4rld i {1} sekunder.
timeBeforeHeal=Tid f\u00f6re n\u00e4ste l\u00e4kning\: {0}

View File

@ -443,6 +443,7 @@ teleporting=\u00a76Isinlaniliyor...
teleportToPlayer=\u00a76Su Kisiye Isinlaniyorsunuz\: \u00a7c{0}\u00a76.
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74Bu Kisiye Sureli Yasaklama Koyamazsin\!
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76Dunyanda simsek \u00a7c {0} .
thunderDuration=\u00a76D\u00fcnyanda simsek \u00a7c {1} \u00a76sure boyunca \u00a7c {0}.
timeBeforeHeal=\u00a74Bir Sonraki Canlandirma Icin\:\u00a7c {0}\u00a76 Beklemelisiniz.

View File

@ -449,6 +449,7 @@ teleporting=\u00a76\u6b63\u5728\u4f20\u9001...
teleportToPlayer=\u00a76\u6b63\u5728\u4f20\u9001\u81f3 \u00a7c{0}\u00a76.
tempBanned=\u00a7c\u4f60\u6682\u65f6\u88ab\u5c01\u7981\u4e86 {0}\:\n\u00a7r{2}
tempbanExempt=\u00a74\u4f60\u65e0\u6cd5\u4e34\u65f6\u5c01\u7981\u6389\u8be5\u73a9\u5bb6.
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76\u4f60 \u00a7c{0} \u00a76\u4e86\u4f60\u7684\u4e16\u754c\u7684\u95ea\u7535
thunderDuration=\u00a76\u4f60 \u00a7c{0} \u00a76\u4e86\u4f60\u7684\u4e16\u754c\u7684\u95ea\u7535\u00a7c {1} \u00a76\u79d2
timeBeforeHeal=\u00a76\u6cbb\u7597\u51b7\u5374\:{0}

View File

@ -443,6 +443,7 @@ teleporting=\u00a76\u6b63\u5728\u50b3\u9001...
teleportToPlayer=\u00a76\u50b3\u9001\u5230 \u00a7c{0}\u00a76\u3002
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a76\u4f60\u7121\u6cd5\u81e8\u6642\u5c01\u7981\u6389\u8a72\u73a9\u5bb6
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76\u4f60 \u00a7c{0} \u00a76\u4e86\u4f60\u7684\u4e16\u754c\u7684\u9583\u96fb
thunderDuration=\u00a76\u4f60 \u00a7c{0} \u00a76\u4e86\u4f60\u7684\u4e16\u754c\u7684\u9583\u96fb\u00a7c {1} \u00a76\u79d2
timeBeforeHeal=\u00a76\u6cbb\u7642\u51b7\u537b\:{0}

View File

@ -443,6 +443,7 @@ teleporting=\u00a76\u6b63\u5728\u50b3\u9001...
teleportToPlayer=\u00a76\u50b3\u9001\u5230 \u00a7c{0}\u00a76\u3002
tempBanned=\u00a7cYou have been temporarily banned for {0}\:\n\u00a7r{2}
tempbanExempt=\u00a76\u4f60\u7121\u6cd5\u81e8\u6642\u5c01\u7981\u6389\u8a72\u73a9\u5bb6
tempbanJoin=You are banned from this server for {0}. Reason: {1}
thunder=\u00a76\u4f60 \u00a7c{0} \u00a76\u4e86\u4f60\u7684\u4e16\u754c\u7684\u9583\u96fb
thunderDuration=\u00a76\u4f60 \u00a7c{0} \u00a76\u4e86\u4f60\u7684\u4e16\u754c\u7684\u9583\u96fb\u00a7c {1} \u00a76\u79d2
timeBeforeHeal=\u00a76\u6cbb\u7642\u51b7\u537b\:{0}

View File

@ -2,7 +2,7 @@
[![Downloads](https://i.imgur.com/MMc0PJY.png)](http://ci.ender.zone/job/EssentialsX/)
**Mirror**: https://ci.akpmakes.tech/job/EssentialsX/
[![Discord](https://imgur.com/MFRRBn4.png)](https://discord.gg/F7gexAQ)
This is a fork of Essentials called EssentialsX.
@ -13,7 +13,7 @@ The official upstream repository is at https://github.com/Essentials/Essentials
Why you should use it
--------
EssentialsX provides several performance enhancements and fixes that are currently not available in Essentials and Spigot-Essentials, most notably mob spawner support for 1.8+ servers and buy/trade sign support for 1.9+ servers. [See the wiki for details.](https://github.com/drtshock/Essentials/wiki)
EssentialsX provides several performance enhancements and fixes that are currently not available in Essentials and Spigot-Essentials, most notably mob spawner support for 1.8+ servers and buy/trade sign support for 1.9+ servers. [See the wiki for details.](https://github.com/EssentialsX/Essentials/wiki)
EssentialsX is almost a completely drop-in replacement for Essentials. However, it has different requirements:
@ -25,6 +25,8 @@ EssentialsX is almost a completely drop-in replacement for Essentials. However,
* **1.7.10 is no longer supported.**
* **1.13 will be supported!**
Building
--------
@ -64,6 +66,6 @@ This is an unofficial fork of Essentials. It will be consistently updated and ma
Support
-----------------
[Issue Tracker](https://github.com/drtshock/Essentials/issues)
[Issue Tracker](https://github.com/EssentialsX/Essentials/issues)
[Live Support](http://webchat.esper.net/?channels=essentialsx&prompt=1) available business hours (GMT -5)
[Live Support](https://discord.gg/F7gexAQ)