Merge branch '2.x' of github.com:EssentialsX/Essentials into 2.x

This commit is contained in:
Ali Moghnieh 2017-12-22 19:46:41 +00:00
commit 0a0c45238c
No known key found for this signature in database
GPG key ID: F09D3A1BAF2E6D70
35 changed files with 198 additions and 119 deletions

View file

@ -9,5 +9,7 @@ EssentialsX version (`/essentials`):
Server software (`/version`):
Server (logs/latest.log):
EssentialsX config (if applicable):

View file

@ -363,7 +363,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) {
@ -584,15 +590,15 @@ public class EssentialsPlayerListener implements Listener {
player.sendMessage(tl("bedSet", player.getLocation().getWorld().getName(), player.getLocation().getBlockX(), player.getLocation().getBlockY(), player.getLocation().getBlockZ()));
}
}
break;
break;
case LEFT_CLICK_AIR:
if (event.getPlayer().isFlying()) {
final User user = ess.getUser(event.getPlayer());
if (user.isFlyClickJump()) {
useFlyClickJump(user);
break;
}
}
break;
case LEFT_CLICK_BLOCK:
if (event.getItem() != null && event.getItem().getType() != Material.AIR) {
final User user = ess.getUser(event.getPlayer());
@ -600,7 +606,7 @@ public class EssentialsPlayerListener implements Listener {
event.setCancelled(true);
}
}
break;
break;
}
ess.getUser(event.getPlayer()).updateActivity(true);
}

View file

@ -178,6 +178,10 @@ public interface IUser {
boolean isPromptingPayConfirm();
void setPromptingPayConfirm(boolean prompt);
boolean isPromptingClearConfirm();
void setPromptingClearConfirm(boolean prompt);
Map<User, BigDecimal> getConfirmingPayments();
}

View file

@ -61,6 +61,7 @@ public class User extends UserData implements Comparable<User>, IMessageRecipien
private String afkMessage;
private long afkSince;
private Map<User, BigDecimal> confirmingPayments = new WeakHashMap<>();
private String confirmingClearCommand;
private long lastNotifiedAboutMailsMs;
public User(final Player base, final IEssentials ess) {
@ -846,6 +847,14 @@ public class User extends UserData implements Comparable<User>, IMessageRecipien
return confirmingPayments;
}
public String getConfirmingClearCommand() {
return confirmingClearCommand;
}
public void setConfirmingClearCommand(String command) {
this.confirmingClearCommand = command;
}
/**
* Returns the {@link ItemStack} in the main hand or off-hand. If the main hand is empty then the offhand item is returned - also nullable.
*/

View file

@ -91,6 +91,7 @@ public abstract class UserData extends PlayerExtension implements IConf {
commandCooldowns = _getCommandCooldowns();
acceptingPay = _getAcceptingPay();
confirmPay = _getConfirmPay();
confirmClear = _getConfirmClear();
}
private BigDecimal money;
@ -913,6 +914,22 @@ public abstract class UserData extends PlayerExtension implements IConf {
save();
}
private boolean confirmClear = true; // players accept clear confirmation by default
public boolean _getConfirmClear() {
return config.getBoolean("confirm-clear", true);
}
public boolean isPromptingClearConfirm() {
return confirmClear;
}
public void setPromptingClearConfirm(boolean prompt) {
this.confirmClear = prompt;
config.setProperty("confirm-clear", prompt);
save();
}
public UUID getConfigUUID() {
return config.uuid;
}

View file

@ -1,9 +1,13 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n.tl;
import com.earth2me.essentials.CommandSource;
import com.earth2me.essentials.User;
import com.earth2me.essentials.craftbukkit.InventoryWorkaround;
import com.earth2me.essentials.utils.NumberUtil;
import com.earth2me.essentials.utils.StringUtil;
import org.bukkit.Server;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
@ -14,10 +18,9 @@ import java.util.Collections;
import java.util.List;
import java.util.Locale;
import static com.earth2me.essentials.I18n.tl;
public class Commandclearinventory extends EssentialsCommand {
public Commandclearinventory() {
super("clearinventory");
}
@ -27,16 +30,22 @@ public class Commandclearinventory extends EssentialsCommand {
@Override
public void run(Server server, User user, String commandLabel, String[] args) throws Exception {
parseCommand(server, user.getSource(), args, user.isAuthorized("essentials.clearinventory.others"), user.isAuthorized("essentials.clearinventory.all") || user.isAuthorized("essentials.clearinventory.multiple"));
parseCommand(server, user.getSource(), commandLabel, args, user.isAuthorized("essentials.clearinventory.others"),
user.isAuthorized("essentials.clearinventory.all") || user.isAuthorized("essentials.clearinventory.multiple"));
}
@Override
protected void run(Server server, CommandSource sender, String commandLabel, String[] args) throws Exception {
parseCommand(server, sender, args, true, true);
parseCommand(server, sender, commandLabel, args, true, true);
}
private void parseCommand(Server server, CommandSource sender, String[] args, boolean allowOthers, boolean allowAll) throws Exception {
private void parseCommand(Server server, CommandSource sender, String commandLabel, String[] args, boolean allowOthers, boolean allowAll)
throws Exception {
Collection<Player> players = new ArrayList<Player>();
User senderUser = ess.getUser(sender.getPlayer());
// Clear previous command execution before potential errors to reset confirmation.
String previousClearCommand = senderUser.getConfirmingClearCommand();
senderUser.setConfirmingClearCommand(null);
int offset = 0;
if (sender.isPlayer()) {
@ -55,6 +64,18 @@ public class Commandclearinventory extends EssentialsCommand {
if (players.size() < 1) {
throw new PlayerNotFoundException();
}
// Confirm
String formattedCommand = formatCommand(commandLabel, args);
if (senderUser != null && senderUser.isPromptingClearConfirm()) {
if (!formattedCommand.equals(previousClearCommand)) {
senderUser.setConfirmingClearCommand(formattedCommand);
senderUser.sendMessage(tl("confirmClear", formattedCommand));
return;
}
}
for (Player player : players) {
clearHandler(sender, player, args, offset, players.size() < EXTENDED_CAP);
}
@ -175,4 +196,8 @@ public class Commandclearinventory extends EssentialsCommand {
return Collections.emptyList();
}
}
private String formatCommand(String commandLabel, String[] args) {
return "/" + commandLabel + " " + StringUtil.joinList(" ", (Object[]) args);
}
}

View file

@ -0,0 +1,32 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n.tl;
import com.earth2me.essentials.User;
import org.bukkit.Server;
public class Commandclearinventoryconfirmtoggle extends EssentialsCommand {
public Commandclearinventoryconfirmtoggle() {
super("clearinventoryconfirmtoggle");
}
@Override
public void run(Server server, User user, String commandLabel, String[] args) throws Exception {
boolean confirmingClear = !user.isPromptingClearConfirm();
if (commandLabel.toLowerCase().endsWith("on")) {
confirmingClear = true;
} else if (commandLabel.toLowerCase().endsWith("off")) {
confirmingClear = false;
}
user.setPromptingClearConfirm(confirmingClear);
if (confirmingClear) {
user.sendMessage(tl("clearInventoryConfirmToggleOn"));
} else {
user.sendMessage(tl("clearInventoryConfirmToggleOff"));
}
user.setConfirmingClearCommand(null);
}
}

View file

@ -9,17 +9,11 @@ import org.bukkit.enchantments.Enchantment;
import org.bukkit.inventory.ItemStack;
import org.bukkit.material.MaterialData;
import org.bukkit.plugin.Plugin;
import org.yaml.snakeyaml.TypeDescription;
import org.yaml.snakeyaml.constructor.Constructor;
import org.yaml.snakeyaml.constructor.CustomClassLoaderConstructor;
import org.yaml.snakeyaml.error.YAMLException;
import org.yaml.snakeyaml.introspector.Property;
import org.yaml.snakeyaml.introspector.PropertyUtils;
import org.yaml.snakeyaml.nodes.*;
import java.lang.reflect.Field;
import java.util.List;
import java.util.Locale;
import java.util.Map;
public class BukkitConstructor extends CustomClassLoaderConstructor {
@ -30,6 +24,10 @@ public class BukkitConstructor extends CustomClassLoaderConstructor {
this.plugin = plugin;
yamlClassConstructors.put(NodeId.scalar, new ConstructBukkitScalar());
yamlClassConstructors.put(NodeId.mapping, new ConstructBukkitMapping());
PropertyUtils propertyUtils = getPropertyUtils();
propertyUtils.setSkipMissingProperties(true);
setPropertyUtils(propertyUtils);
}
@ -170,7 +168,6 @@ public class BukkitConstructor extends CustomClassLoaderConstructor {
}
}
private class ConstructBukkitMapping extends ConstructMapping {
@Override
public Object construct(final Node node) {
@ -216,102 +213,5 @@ public class BukkitConstructor extends CustomClassLoaderConstructor {
}
return super.construct(node);
}
@Override
protected Object constructJavaBean2ndStep(final MappingNode node, final Object object) {
Map<Class<? extends Object>, TypeDescription> typeDefinitions;
try {
final Field typeDefField = Constructor.class.getDeclaredField("typeDefinitions");
typeDefField.setAccessible(true);
typeDefinitions = (Map<Class<? extends Object>, TypeDescription>) typeDefField.get(BukkitConstructor.this);
if (typeDefinitions == null) {
throw new NullPointerException();
}
} catch (Exception ex) {
throw new YAMLException(ex);
}
flattenMapping(node);
final Class<? extends Object> beanType = node.getType();
final List<NodeTuple> nodeValue = node.getValue();
for (NodeTuple tuple : nodeValue) {
ScalarNode keyNode;
if (tuple.getKeyNode() instanceof ScalarNode) {
// key must be scalar
keyNode = (ScalarNode) tuple.getKeyNode();
} else {
throw new YAMLException("Keys must be scalars but found: " + tuple.getKeyNode());
}
final Node valueNode = tuple.getValueNode();
// keys can only be Strings
keyNode.setType(String.class);
final String key = (String) constructObject(keyNode);
try {
Property property;
try {
property = getProperty(beanType, key);
} catch (YAMLException e) {
continue;
}
valueNode.setType(property.getType());
final TypeDescription memberDescription = typeDefinitions.get(beanType);
boolean typeDetected = false;
if (memberDescription != null) {
switch (valueNode.getNodeId()) {
case sequence:
final SequenceNode snode = (SequenceNode) valueNode;
final Class<? extends Object> memberType = memberDescription.getListPropertyType(key);
if (memberType != null) {
snode.setListType(memberType);
typeDetected = true;
} else if (property.getType().isArray()) {
snode.setListType(property.getType().getComponentType());
typeDetected = true;
}
break;
case mapping:
final MappingNode mnode = (MappingNode) valueNode;
final Class<? extends Object> keyType = memberDescription.getMapKeyType(key);
if (keyType != null) {
mnode.setTypes(keyType, memberDescription.getMapValueType(key));
typeDetected = true;
}
break;
}
}
if (!typeDetected && valueNode.getNodeId() != NodeId.scalar) {
// only if there is no explicit TypeDescription
final Class<?>[] arguments = property.getActualTypeArguments();
if (arguments != null) {
// type safe (generic) collection may contain the
// proper class
if (valueNode.getNodeId() == NodeId.sequence) {
final Class<?> t = arguments[0];
final SequenceNode snode = (SequenceNode) valueNode;
snode.setListType(t);
} else if (valueNode.getTag().equals(Tag.SET)) {
final Class<?> t = arguments[0];
final MappingNode mnode = (MappingNode) valueNode;
mnode.setOnlyKeyType(t);
mnode.setUseClassConstructor(true);
} else if (property.getType().isAssignableFrom(Map.class)) {
final Class<?> ketType = arguments[0];
final Class<?> valueType = arguments[1];
final MappingNode mnode = (MappingNode) valueNode;
mnode.setTypes(ketType, valueType);
mnode.setUseClassConstructor(true);
} else {
// the type for collection entries cannot be
// detected
}
}
}
final Object value = constructObject(valueNode);
property.set(object, value);
} catch (Exception e) {
throw new YAMLException("Cannot create property=" + key + " for JavaBean=" + object + "; " + e.getMessage(), e);
}
}
return object;
}
}
}

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

@ -54,12 +54,15 @@ chatTypeLocal=[L]
chatTypeSpy=[Spy]
cleaned=Userfiles Cleaned.
cleaning=Cleaning userfiles.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Command {0} failed\:
commandHelpFailedForPlugin=Error getting help for plugin\: {0}
commandNotLoaded=\u00a74Command {0} is improperly loaded.
compassBearing=\u00a76Bearing\: {0} ({1} degrees).
configFileMoveError=Failed to move config.yml to backup location.
configFileRenameError=Failed to rename temp file to config.yml.
confirmClear=\u00a77To \u00a7lCONFIRM\u00a77 inventory clear, please repeat command: \u00a76{0}
confirmPayment=\u00a77To \u00a7lCONFIRM\u00a77 payment of \u00a76{0}\u00a77, please repeat command: \u00a76{1}
connectedPlayers=\u00a76Connected players\u00a7r
connectionFailed=Failed to open connection.
@ -448,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Spy]
cleaned=Uzivatelske zaznamy vycisteny.
cleaning=Cistim uzivatelske zaznamy.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Prikaz {0} selhal.
commandHelpFailedForPlugin=Chyba pri ziskavani pomoci\: {0}
commandNotLoaded=\u00a7cPrikaz {0} je nespravne nacteny.
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Spion]
cleaned=Brugerfiler blev renset.
cleaning=Renser brugerfiler.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Kommando {0} fejlede\:
commandHelpFailedForPlugin=Fejl ved hentning af hj\u00e6lp til pluginnet\: {0}
commandNotLoaded=\u00a74Kommandoen {0} er indl\u00e6st forkert.
@ -441,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

@ -55,6 +55,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Spion]
cleaned=Spielerdateien geleert.
cleaning=S\u00e4ubere Spielerdateien.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Befehl {0} scheiterte\:
commandHelpFailedForPlugin=Fehler beim Abrufen der Hilfe f\u00fcr\: {0}
commandNotLoaded=\u00a74Befehl {0} ist nicht richtig geladen.
@ -445,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

@ -54,12 +54,15 @@ chatTypeLocal=[L]
chatTypeSpy=[Spy]
cleaned=Userfiles Cleaned.
cleaning=Cleaning userfiles.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Command {0} failed\:
commandHelpFailedForPlugin=Error getting help for plugin\: {0}
commandNotLoaded=\u00a74Command {0} is improperly loaded.
compassBearing=\u00a76Bearing\: {0} ({1} degrees).
configFileMoveError=Failed to move config.yml to backup location.
configFileRenameError=Failed to rename temp file to config.yml.
confirmClear=\u00a77To \u00a7lCONFIRM\u00a77 inventory clear, please repeat command: \u00a76{0}
confirmPayment=\u00a77To \u00a7lCONFIRM\u00a77 payment of \u00a76{0}\u00a77, please repeat command: \u00a76{1}
connectedPlayers=\u00a76Connected players\u00a7r
connectionFailed=Failed to open connection.
@ -442,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Esp\u00eda]
cleaned=Archivos de usuarios limpiados.
cleaning=Limpiando archivos de usuario.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Comando {0} fallido\:
commandHelpFailedForPlugin=Error al obtener ayuda para el plugin\: {0}
commandNotLoaded=\u00a74El comando {0} no est\u00e1 cargado correctamente.
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Spioon]
cleaned=Kasutajafailid puhastatud.
cleaning=Kasutajafailide puhastus.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=K\u00e4sk {0} eba\u00f5nnestus\:
commandHelpFailedForPlugin=Viga saades abi pluginale\: {0}
commandNotLoaded=\u00a74K\u00e4sk {0} on ebakoheselt laetud.
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Vakoilla]
cleaned=K\u00e4ytt\u00e4j\u00e4tiedot on poistettu.
cleaning=Poistetaan k\u00e4ytt\u00e4j\u00e4tietoja.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Komento {0} ep\u00e4onnistui\:
commandHelpFailedForPlugin=Virhe haettaessa apua komennoista\: {0}
commandNotLoaded=\u00a7cKomento {0} on v\u00e4\u00e4rin ladattu.
@ -441,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

@ -55,6 +55,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Espion]
cleaned=Fichiers joueurs nettoy\u00e9s.
cleaning=Nettoyage des fichiers joueurs...
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=\u00c9chec de la commande {0} \:
commandHelpFailedForPlugin=Erreur d''obtention d''aide pour \: {0}
commandNotLoaded=\u00a7cLa commande {0} a \u00e9t\u00e9 mal charg\u00e9e.
@ -448,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=\u00a72[K\u00e9m]\u00a7r
cleaned=J\u00e1t\u00e9kos f\u00e1jlok t\u00f6r\u00f6lve.
cleaning=J\u00e1t\u00e9kos f\u00e1jlok tiszt\u00edt\u00e1sa.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Parancs {0} sikertelen\:
commandHelpFailedForPlugin=Hiba a seg\u00edts\u00e9g lek\u00e9r\u00e9sben a(z) {0} pluginban
commandNotLoaded=\u00a74Parancs {0} nincs bet\u00f6ltve.
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Spia]
cleaned=File utente puliti.
cleaning=Pulizia dei file utente in corso.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Comando {0} fallito\:
commandHelpFailedForPlugin=Errore ottenendo la guida del plugin\: {0}
commandNotLoaded=\u00a74Il comando {0} non \u00E8 stato caricato correttamente.
@ -447,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[\uc2a4\ud30c\uc774]
cleaned=\uc720\uc800 \ud30c\uc77c\uc774 \uc815\ub9ac\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
cleaning=\uc720\uc800 \ud30c\uc77c\uc744 \uc815\ub9ac\ud569\ub2c8\ub2e4.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=\uba85\ub839\uc5b4 {0} \uc0ac\uc6a9 \uc2e4\ud328\:
commandHelpFailedForPlugin={0} \ud50c\ub7ec\uadf8\uc778\uc758 \ub3c4\uc6c0\ub9d0\uc744 \ubd88\ub7ec\uc62c \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
commandNotLoaded=\u00a7c \uba85\ub839\uc5b4 {0}\ub97c \uc798\ubabb \ubd88\ub7ec\uc654\uc2b5\ub2c8\ub2e4.
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Spy]
cleaned=Userfiles Cleaned.
cleaning=Cleaning userfiles.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Komanda {0} nepavyko\:
commandHelpFailedForPlugin=Error getting help for plugin\: {0}
commandNotLoaded=\u00a74Command {0} is improperly loaded.
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Spion]
cleaned=Gebruikersbestanden opgeschoont.
cleaning=Opschonen van gebruikersbestanden.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Opdracht {0} is mislukt\:
commandHelpFailedForPlugin=Fout bij het verkrijgen van hulp voor\: {0}.
commandNotLoaded=\u00a7cOpdracht {0} is fout geladen.
@ -251,6 +253,10 @@ months=maanden
moreThanZero=\u00a74Het aantal moet groter zijn dan 0.
moveSpeed=\u00a76Verander {0} snelheid naar\u00a7c {1} \u00a76voor \u00a7c{2}\u00a76.\n
msgFormat=\u00a76[\u00a7c{0}\u00a76 -> \u00a7c{1}\u00a76] \u00a7r{2}
msgDisabled=\u00a76Berichten ontvangen \u00a7cuitgeschakelt\u00a76.
msgDisabledFor=\u00a76Berichten ontvangen \u00a7cuitgeschakelt \u00a76voor \u00a7c{0}\u00a76.
msgEnabled=\u00a76Berichten ontvangen \u00a7caingeschakelt\u00a76.
msgEnabledFor=\u00a76Berichten ontvangen \u00a7cingeschakelt \u00a76voor \u00a7c{0}\u00a76.
multipleCharges=\u00a74U kunt niet meer dan \u00e9\u00e9n lading aan dit vuurwerk toevoegen.
multiplePotionEffects=\u00a74U kunt niet meer dan \u00e9\u00e9n effect aan dit toverdrankje toevoegen.
muteExempt=\u00a74U kunt deze speler niet dempen.
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Szpieg]
cleaned=Pliki gracza wyczyszczono.
cleaning=Czyszczene plik\u00F3w gracza.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Komenda {0} zawiod\u0142a.
commandHelpFailedForPlugin=B\u0142\u0105d podczas uzyskiwania pomocy dla\: {0}
commandNotLoaded=\u00a74Komenda {0} nie jest za\u0142adowana\!
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Espi\u00E3o]
cleaned=Os arquivos do usu\u00E1rio foram apagados.
cleaning=A apagar arquivos do usu\u00E1rio.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Comando {0} falhou:
commandHelpFailedForPlugin=Erro ao adquirir ajuda do plugin: {0}
commandNotLoaded=\u00A74Comando {0} est\u00E1 carregado incorretamente.
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Espi\u00E3o]
cleaned=Os arquivos do usu\u00E1rio foram apagados.
cleaning=Apagando arquivos do usu\u00E1rio.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Comando {0} falhou\:
commandHelpFailedForPlugin=Erro ao adquirir ajuda do plugin\: {0}
commandNotLoaded=\u00A74Comando {0} est\u00E1 carregado incorretamente.
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Spion]
cleaned=Fisierele jucatorilor au fost curatate.
cleaning=Fisierele jucatorilor se curata.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Comanda {0} a esuat\:
commandHelpFailedForPlugin=Eroare primire ajutor pentru pluginul\: {0}
commandNotLoaded=\u00a74Comanda {0} este partial incarcata.
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Spy]
cleaned=\u0424\u0430\u0439\u043b\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043e\u0447\u0438\u0449\u0435\u043d\u044b.
cleaning=\u041e\u0447\u0438\u0441\u0442\u043a\u0430 \u043f\u0440\u043e\u0444\u0438\u043b\u044f \u0438\u0433\u0440\u043e\u043a\u0430.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=\u041a\u043e\u043c\u0430\u043d\u0434\u0430 {0} \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0430\u044f\:
commandHelpFailedForPlugin=\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0434\u043b\u044f \u043f\u043b\u0430\u0433\u0438\u043d\u0430\: {0}
commandNotLoaded=\u00a74\u041a\u043e\u043c\u0430\u043d\u0434\u0430 {0} \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u0430.
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Spion]
cleaned=Anv\u00e4ndarfiler rensade.
cleaning=Rensar anv\u00e4ndarfiler.
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Kommando {0} misslyckades\:
commandHelpFailedForPlugin=Kunde inte hitta hj\u00e4lp f\u00f6r\: {0}
commandNotLoaded=\u00a7cKommando {0} \u00e4r felaktigt laddat.
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[Casus]
cleaned=Oyuncu Verileri Temizlendi.
cleaning=Oyuncu Verileri Temizleniyor...
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=Komut {0} Gecersiz\:
commandHelpFailedForPlugin=Hata\:Bu Plugin Hakkinda Yardim Almak Icin\: {0}
commandNotLoaded=\u00a74Komut Yuklenemedi\!
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[\u76d1\u89c6]
cleaned=\u7528\u6237\u6587\u4ef6\u5df2\u6e05\u7a7a
cleaning=\u6e05\u7a7a\u7528\u6237\u6587\u4ef6...
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=\u547d\u4ee4 {0} \u5931\u8d25\:
commandHelpFailedForPlugin=\u672a\u80fd\u83b7\u53d6\u6b64\u63d2\u4ef6\u7684\u5e2e\u52a9\:{0}
commandNotLoaded=\u00a74 \u547d\u4ee4{0}\u52a0\u8f7d\u5931\u8d25
@ -447,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[\u76e3\u807d]
cleaned=\u7528\u6236\u6587\u4ef6\u5df2\u6e05\u7a7a
cleaning=\u6e05\u7a7a\u7528\u6236\u6587\u4ef6...
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=\u547d\u4ee4 {0} \u5931\u6557\:
commandHelpFailedForPlugin=\u672a\u80fd\u7372\u53d6\u6b64\u5916\u639b\u7a0b\u5f0f\u7684\u5e6b\u52a9\:{0}
commandNotLoaded=\u00a74 {0} \u547d\u4ee4\u52a0\u8f09\u5931\u6557
@ -441,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

@ -54,6 +54,8 @@ chatTypeLocal=[L]
chatTypeSpy=[\u76e3\u807d]
cleaned=\u73a9\u5bb6\u8cc7\u6599\u5df2\u6e05\u9664
cleaning=\u6e05\u9664\u73a9\u5bb6\u8cc7\u6599...
clearInventoryConfirmToggleOn=\u00a76You will now be prompted to confirm inventory clears.
clearInventoryConfirmToggleOff=\u00a76You will no longer be prompted to confirm inventory clears.
commandFailed=\u6307\u4ee4 {0} \u5931\u6557\:
commandHelpFailedForPlugin=\u7121\u6cd5\u53d6\u5f97\u6b64\u63d2\u4ef6\u7684\u8aaa\u660e\:{0}
commandNotLoaded=\u00a74 {0} \u6307\u4ee4\u8f09\u5165\u5931\u6557
@ -441,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

@ -68,6 +68,10 @@ commands:
description: Clear all items in your inventory.
usage: /<command> [player|*] [item[:<data>]|*|**] [amount]
aliases: [ci,eci,clean,eclean,clear,eclear,clearinvent,eclearinvent,eclearinventory]
clearinventoryconfirmtoggle:
description: Toggles whether you are prompted to confirm inventory clears.
usage: /<command>
aliases: [eclearinventoryconfirmtoggle, clearinventoryconfirmoff, eclearinventoryconfirmoff, clearconfirmoff, eclearconfirmoff, clearconfirmon, eclearconfirmon, clearconfirm, eclearconfirm]
condense:
description: Condenses items into a more compact blocks.
usage: /<command> [<itemname>|<id>|hand|inventory]

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)