Merge branch 'release/1.9'

This commit is contained in:
Connor Monahan 2016-06-08 18:57:32 -04:00
commit 27d249d7f7
53 changed files with 2452 additions and 751 deletions

4
.gitignore vendored
View File

@ -2,8 +2,8 @@
.*
# except for .gitignore
!.gitignore
!.classpath
!.project
.classpath
.project
# Ignore all classfiles
*.class

View File

@ -1,33 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" output="target/classes" path="src/main/java">
<attributes>
<attribute name="optional" value="true"/>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="src" output="target/test-classes" path="src/test/java">
<attributes>
<attribute name="optional" value="true"/>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="output" path="target/classes"/>
</classpath>

View File

@ -1,35 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>war</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>net.sourceforge.metrics.builder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.maven.ide.eclipse.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.m2e.core.maven2Nature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.maven.ide.eclipse.maven2Nature</nature>
<nature>net.sourceforge.metrics.nature</nature>
</natures>
</projectDescription>

View File

@ -3,10 +3,11 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.tommytony</groupId>
<artifactId>war</artifactId>
<version>1.8.1</version>
<version>1.9</version>
<packaging>jar</packaging>
<name>War</name>
<url>http://war.tommytony.com</url>
<description>Minecraft PVP arenas (called warzones) for a fast-paced and structured PVP experience with TDM, CTF and more!</description>
<prerequisites>
<maven>2.2.1</maven>
</prerequisites>
@ -15,12 +16,12 @@
</properties>
<repositories>
<repository>
<id>bukkit-repo</id>
<url>http://repo.bukkit.org/content/groups/public</url>
<id>spigot-repo</id>
<url>https://hub.spigotmc.org/nexus/content/groups/public/</url>
</repository>
<repository>
<id>cma-repo</id>
<url>http://maven.cmastudios.me/archiva/repository/internal</url>
<url>http://ftp.cmastudios.me/maven/</url>
</repository>
<repository>
<id>tagapi-repo</id>
@ -31,8 +32,12 @@
<url>http://maven.sk89q.com/repo/</url>
</repository>
<repository>
<id>mcstats.releases</id>
<url>http://repo.mcstats.org/content/repositories/releases/</url>
<id>mcstats</id>
<url>http://repo.mcstats.org/content/repositories/public/</url>
</repository>
<repository>
<id>vault-repo</id>
<url>http://nexus.theyeticave.net/content/repositories/pub_releases</url>
</repository>
</repositories>
<issueManagement>
@ -112,7 +117,7 @@
<dependency>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
<version>1.7.2-R0.2</version>
<version>1.9.4-R0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.kitteh</groupId>
@ -136,8 +141,13 @@
<dependency>
<groupId>org.mcstats.bukkit</groupId>
<artifactId>metrics</artifactId>
<version>R7</version>
<version>R8-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>net.milkbowl.vault</groupId>
<artifactId>Vault</artifactId>
<version>1.2.32</version>
</dependency>
</dependencies>
</project>

View File

@ -34,6 +34,7 @@ import com.tommytony.war.config.TeamConfig;
import com.tommytony.war.config.TeamConfigBag;
import com.tommytony.war.config.TeamKind;
import com.tommytony.war.config.TeamSpawnStyle;
import com.tommytony.war.spout.SpoutDisplayer;
import com.tommytony.war.utility.Direction;
import com.tommytony.war.volume.Volume;
@ -442,6 +443,27 @@ public class Team {
}
}
/**
* Send an achievement to all players on the team.
* Currently implemented using SpoutCraft.
* @param line1 Achievement first line
* @param line2 Achievement second line
* @param icon Item to display in the achievement
* @param ticks Duration the achievement should be displayed
*/
public void sendAchievement(String line1, String line2, ItemStack icon, int ticks) {
if (!War.war.isSpoutServer())
return;
line1 = SpoutDisplayer.cleanForNotification(line1);
line2 = SpoutDisplayer.cleanForNotification(line2);
for (Player player : this.players) {
SpoutPlayer spoutPlayer = SpoutManager.getPlayer(player);
if (!spoutPlayer.isSpoutCraftEnabled())
continue;
spoutPlayer.sendNotification(line1, line2, icon, ticks);
}
}
public void setName(String name) {
this.name = name;
}
@ -464,7 +486,9 @@ public class Team {
}
thePlayer.setFireTicks(0);
thePlayer.setRemainingAir(300);
this.warzone.restorePlayerState(thePlayer);
if (!this.warzone.getReallyDeadFighters().contains(thePlayer.getName())) {
this.warzone.restorePlayerState(thePlayer);
}
this.warzone.getLoadoutSelections().remove(thePlayer);
}

View File

@ -8,6 +8,8 @@ import java.util.logging.FileHandler;
import java.util.logging.Formatter;
import java.util.logging.Level;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.Material;
@ -20,7 +22,10 @@ import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.PlayerInventory;
import org.bukkit.plugin.PluginDescriptionFile;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.RegisteredServiceProvider;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.potion.PotionEffect;
import org.bukkit.potion.PotionEffectType;
import com.tommytony.war.command.WarCommandHandler;
import com.tommytony.war.config.FlagReturn;
@ -97,6 +102,7 @@ public class War extends JavaPlugin {
private final InventoryBag defaultInventories = new InventoryBag();
private KillstreakReward killstreakReward;
private MySQLConfig mysqlConfig;
private Economy econ = null;
private final WarConfigBag warConfig = new WarConfigBag();
private final WarzoneConfigBag warzoneDefaultConfig = new WarzoneConfigBag();
@ -180,6 +186,8 @@ public class War extends JavaPlugin {
warConfig.put(WarConfig.RESETSPEED, 5000);
warConfig.put(WarConfig.MAXSIZE, 750);
warConfig.put(WarConfig.LANGUAGE, Locale.getDefault().toString());
warConfig.put(WarConfig.AUTOJOIN, "");
warConfig.put(WarConfig.TPWARMUP, 0);
warzoneDefaultConfig.put(WarzoneConfig.AUTOASSIGN, false);
warzoneDefaultConfig.put(WarzoneConfig.BLOCKHEADS, true);
@ -224,6 +232,9 @@ public class War extends JavaPlugin {
teamDefaultConfig.put(TeamConfig.KILLSTREAK, false);
teamDefaultConfig.put(TeamConfig.BLOCKWHITELIST, "all");
teamDefaultConfig.put(TeamConfig.PLACEBLOCK, true);
teamDefaultConfig.put(TeamConfig.APPLYPOTION, "");
teamDefaultConfig.put(TeamConfig.ECOREWARD, 0.0);
teamDefaultConfig.put(TeamConfig.INVENTORYDROP, false);
this.getDefaultInventories().clearLoadouts();
HashMap<Integer, ItemStack> defaultLoadout = new HashMap<Integer, ItemStack>();
@ -287,6 +298,13 @@ public class War extends JavaPlugin {
this.getServer().getPluginManager().disablePlugin(this);
}
}
if (this.getServer().getPluginManager().isPluginEnabled("Vault")) {
RegisteredServiceProvider<Economy> rsp = this.getServer().getServicesManager()
.getRegistration(Economy.class);
if (rsp != null) {
this.econ = rsp.getProvider();
}
}
War.reloadLanguage();
@ -931,79 +949,62 @@ public class War extends JavaPlugin {
return activeZones;
}
static final boolean HIDE_BLANK_MESSAGES = true;
public void msg(CommandSender sender, String str) {
if (messages.containsKey(str)) str = this.getString(str);
if (HIDE_BLANK_MESSAGES && (str == null || str.isEmpty())) return;
if (sender instanceof Player) {
StringBuilder output = new StringBuilder(ChatColor.GRAY.toString())
.append(this.getString("war.prefix")).append(ChatColor.WHITE).append(' ');
if (messages.containsKey(str)) {
output.append(this.colorKnownTokens(this.getString(str),
ChatColor.WHITE));
} else {
output.append(this.colorKnownTokens(str, ChatColor.WHITE));
}
output.append(this.colorKnownTokens(str, ChatColor.WHITE));
sender.sendMessage(output.toString());
} else {
sender.sendMessage(messages.containsKey(str) ? messages.getString(str) : str);
sender.sendMessage(str);
}
}
public void badMsg(CommandSender sender, String str) {
if (messages.containsKey(str)) str = this.getString(str);
if (HIDE_BLANK_MESSAGES && (str == null || str.isEmpty())) return;
if (sender instanceof Player) {
StringBuilder output = new StringBuilder(ChatColor.GRAY.toString())
.append(this.getString("war.prefix")).append(ChatColor.RED).append(' ');
if (messages.containsKey(str)) {
output.append(this.colorKnownTokens(this.getString(str), ChatColor.RED));
} else {
output.append(this.colorKnownTokens(str, ChatColor.RED));
}
output.append(this.colorKnownTokens(str, ChatColor.RED));
sender.sendMessage(output.toString());
} else {
sender.sendMessage(messages.containsKey(str) ? messages.getString(str) : str);
sender.sendMessage(str);
}
}
public void msg(CommandSender sender, String str, Object... obj) {
if (messages.containsKey(str)) str = this.getString(str);
if (HIDE_BLANK_MESSAGES && (str == null || str.isEmpty())) return;
if (sender instanceof Player) {
StringBuilder output = new StringBuilder(ChatColor.GRAY.toString())
.append(this.getString("war.prefix")).append(ChatColor.WHITE).append(' ');
if (messages.containsKey(str)) {
output.append(MessageFormat.format(this.colorKnownTokens(
this.getString(str), ChatColor.WHITE), obj));
} else {
output.append(MessageFormat.format(
output.append(MessageFormat.format(
this.colorKnownTokens(str, ChatColor.WHITE), obj));
}
sender.sendMessage(output.toString());
} else {
StringBuilder output = new StringBuilder();
if (messages.containsKey(str)) {
output.append(MessageFormat.format(this.getString(str), obj));
} else {
output.append(MessageFormat.format(str, obj));
}
output.append(MessageFormat.format(str, obj));
sender.sendMessage(output.toString());
}
}
public void badMsg(CommandSender sender, String str, Object... obj) {
if (messages.containsKey(str)) str = this.getString(str);
if (HIDE_BLANK_MESSAGES && (str == null || str.isEmpty())) return;
if (sender instanceof Player) {
StringBuilder output = new StringBuilder(ChatColor.GRAY.toString())
.append(this.getString("war.prefix")).append(ChatColor.RED).append(' ');
if (messages.containsKey(str)) {
output.append(MessageFormat.format(this.colorKnownTokens(
this.getString(str), ChatColor.RED), obj));
} else {
output.append(MessageFormat.format(
output.append(MessageFormat.format(
this.colorKnownTokens(str, ChatColor.RED), obj));
}
sender.sendMessage(output.toString());
} else {
StringBuilder output = new StringBuilder();
if (messages.containsKey(str)) {
output.append(MessageFormat.format(this.getString(str), obj));
} else {
output.append(MessageFormat.format(str, obj));
}
output.append(MessageFormat.format(str, obj));
sender.sendMessage(output.toString());
}
}
@ -1317,4 +1318,27 @@ public class War extends JavaPlugin {
public Locale getLoadedLocale() {
return messages.getLocale();
}
/**
* Convert serialized effect to actual effect.
* @param serializedEffect String stored in configuration.
* Format: TYPE;DURATION;AMPLIFY
* @return Potion effect or null otherwise
*/
public PotionEffect getPotionEffect(String serializedEffect) {
String[] arr = serializedEffect.split(";");
if (arr.length != 3) return null;
try {
PotionEffectType type = PotionEffectType.getByName(arr[0]);
int duration = Integer.parseInt(arr[1]);
int amplification = Integer.parseInt(arr[2]);
return new PotionEffect(type, duration, amplification);
} catch (RuntimeException ex) {
return null;
}
}
public Economy getEconomy() {
return econ;
}
}

View File

@ -12,10 +12,11 @@ import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Random;
import java.util.logging.Level;
import com.tommytony.war.mapper.VolumeMapper;
import com.tommytony.war.mapper.ZoneVolumeMapper;
import net.milkbowl.vault.economy.EconomyResponse;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.Validate;
import org.bukkit.Bukkit;
@ -27,15 +28,22 @@ import org.bukkit.OfflinePlayer;
import org.bukkit.World;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Item;
import org.bukkit.entity.Player;
import org.bukkit.entity.Projectile;
import org.bukkit.entity.TNTPrimed;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
import org.bukkit.event.inventory.InventoryType;
import org.bukkit.event.player.PlayerMoveEvent;
import org.bukkit.inventory.InventoryView;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.PlayerInventory;
import org.bukkit.permissions.Permissible;
import org.bukkit.potion.PotionEffect;
import org.bukkit.scoreboard.DisplaySlot;
import org.bukkit.scoreboard.Objective;
import org.bukkit.scoreboard.Scoreboard;
@ -59,6 +67,8 @@ import com.tommytony.war.job.LoadoutResetJob;
import com.tommytony.war.job.LogKillsDeathsJob;
import com.tommytony.war.job.LogKillsDeathsJob.KillsDeathsRecord;
import com.tommytony.war.mapper.LoadoutYmlMapper;
import com.tommytony.war.mapper.VolumeMapper;
import com.tommytony.war.mapper.ZoneVolumeMapper;
import com.tommytony.war.spout.SpoutDisplayer;
import com.tommytony.war.structure.Bomb;
import com.tommytony.war.structure.Cake;
@ -153,6 +163,13 @@ public class Warzone {
return bestGuess;
}
public static Warzone getZoneByNameExact(String name) {
for (Warzone zone : War.war.getWarzones()) {
if (zone.getName().equalsIgnoreCase(name)) return zone;
}
return null;
}
public static Warzone getZoneByLocation(Location location) {
for (Warzone warzone : War.war.getWarzones()) {
if (location.getWorld().getName().equals(warzone.getWorld().getName()) && warzone.getVolume() != null && warzone.getVolume().contains(location)) {
@ -176,6 +193,15 @@ public class Warzone {
return null;
}
public static Warzone getZoneForDeadPlayer(Player player) {
for (Warzone warzone : War.war.getWarzones()) {
if (warzone.getReallyDeadFighters().contains(player.getName())) {
return warzone;
}
}
return null;
}
public boolean ready() {
if (this.volume.hasTwoCorners() && !this.volume.tooSmall() && !this.volume.tooBig()) {
return true;
@ -295,11 +321,13 @@ public class Warzone {
// everyone back to team spawn with full health
for (Team team : this.teams) {
for (Player player : team.getPlayers()) {
if (respawnExempted == null
|| (respawnExempted != null
&& !player.getName().equals(respawnExempted.getName()))) {
this.respawnPlayer(team, player);
if (player.equals(respawnExempted)) {
continue;
}
if (this.getReallyDeadFighters().contains(player.getName())) {
continue;
}
this.respawnPlayer(team, player);
}
team.setRemainingLives(team.getTeamConfig().resolveInt(TeamConfig.LIFEPOOL));
team.initializeTeamSpawns();
@ -360,7 +388,6 @@ public class Warzone {
this.flagThieves.clear();
this.bombThieves.clear();
this.cakeThieves.clear();
this.reallyDeadFighters.clear();
if (this.getScoreboardType() != ScoreboardType.NONE) {
this.scoreboard = Bukkit.getScoreboardManager().getNewScoreboard();
scoreboard.registerNewObjective(this.getScoreboardType().getDisplayName(), "dummy");
@ -419,12 +446,21 @@ public class Warzone {
private void handleRespawn(final Team team, final Player player) {
// Fill hp
player.setRemainingAir(300);
player.setHealth(20);
player.setRemainingAir(player.getMaximumAir());
player.setHealth(player.getMaxHealth());
player.setFoodLevel(20);
player.setSaturation(team.getTeamConfig().resolveInt(TeamConfig.SATURATION));
player.setExhaustion(0);
player.setFireTicks(0); //this works fine here, why put it in LoudoutResetJob...? I'll keep it over there though
player.setFallDistance(0);
War.war.getServer().getScheduler().runTaskLater(War.war, new Runnable() {
@Override
public void run() {
// Stop fire here, since doing it in the same tick as death doesn't extinguish it
player.setFireTicks(0);
}
}, 1L);
this.preventItemHackingThroughOpenedInventory(player);
@ -444,6 +480,18 @@ public class Warzone {
// clear potion effects
PotionEffectHelper.clearPotionEffects(player);
String potionEffect = team.getTeamConfig().resolveString(TeamConfig.APPLYPOTION);
if (!potionEffect.isEmpty()) {
PotionEffect effect = War.war.getPotionEffect(potionEffect);
if (effect != null) {
player.addPotionEffect(effect);
} else {
War.war.getLogger().log(Level.WARNING,
"Failed to apply potion effect {0} in warzone {1}.",
new Object[] {potionEffect, name});
}
}
boolean isFirstRespawn = false;
if (!this.getLoadoutSelections().keySet().contains(player.getName())) {
@ -936,206 +984,203 @@ public class Warzone {
}
team.addPlayer(player);
team.resetSign();
if (!this.hasPlayerState(player.getName())) {
this.keepPlayerState(player);
War.war.msg(player, "join.inventorystored");
if (this.hasPlayerState(player.getName())) {
War.war.getLogger().log(Level.WARNING, "Player {0} in warzone {1} already has a stored state - they may have lost items",
new Object[] {player.getName(), this.getName()});
this.playerStates.remove(player.getName());
}
this.getReallyDeadFighters().remove(player.getName());
this.keepPlayerState(player);
War.war.msg(player, "join.inventorystored");
this.respawnPlayer(team, player);
this.broadcast("join.broadcast", player.getName(), team.getKind().getFormattedName());
return true;
}
public void handleDeath(Player player) {
// THIS ISN'T THREAD SAFE
// Every death and player movement should ideally occur in sequence because
// 1) a death can cause the end of the game by emptying a lifepool causing the max score to be reached
// 2) a player movement from one block to the next (getting a flag home or causing a bomb to go off perhaps) could win the game
//
// Concurrent execution of these events could cause the inventory reset of the last players to die to fail as
// they get tp'ed back to the lobby, or perhaps kills to bleed into the next round.
Team playerTeam = Team.getTeamByPlayerName(player.getName());
// Make sure the player that died is still part of a team, game may have ended while waiting.
// Ignore dying players that essentially just got tp'ed to lobby and got their state restored.
// Gotta take care of restoring ReallyDeadFighters' game-end state when in onRespawn as well.
if (playerTeam != null) {
// teleport to team spawn upon fast respawn death, but not for real deaths
if (!this.getWarzoneConfig().getBoolean(WarzoneConfig.REALDEATHS)) {
this.respawnPlayer(playerTeam, player);
} else {
// onPlayerRespawn takes care of real deaths
//player.setHealth(0);
this.getReallyDeadFighters().add(player.getName());
}
int remaining = playerTeam.getRemainingLifes();
if (remaining == 0) { // your death caused your team to lose
if (this.isReinitializing()) {
// Prevent duplicate battle end. You died just after the battle ending death.
this.respawnPlayer(playerTeam, player);
} else {
// Handle team loss
List<Team> teams = this.getTeams();
String scores = "";
for (Team t : teams) {
if (War.war.isSpoutServer()) {
for (Player p : t.getPlayers()) {
SpoutPlayer sp = SpoutManager.getPlayer(p);
if (sp.isSpoutCraftEnabled()) {
sp.sendNotification(
SpoutDisplayer.cleanForNotification("Round over! " + playerTeam.getKind().getColor() + playerTeam.getName()),
SpoutDisplayer.cleanForNotification("ran out of lives."),
playerTeam.getKind().getBlockHead(),
10000);
}
}
}
t.teamcast("zone.battle.end", playerTeam.getName(), player.getName());
if (t.getPlayers().size() != 0 && !t.getTeamConfig().resolveBoolean(TeamConfig.FLAGPOINTSONLY)) {
if (!t.getName().equals(playerTeam.getName())) {
// all other teams get a point
t.addPoint();
t.resetSign();
}
scores += '\n' + t.getName() + "(" + t.getPoints() + "/" + t.getTeamConfig().resolveInt(TeamConfig.MAXSCORE) + ") ";
}
}
// whoever didn't lose, reward them
//
List<Team> winningTeams = new ArrayList<Team>(teams.size());
for( Team t : teams ) {
if( !t.getPlayers().contains(player)) {
winningTeams.add(t);
}
}
WarBattleWinEvent event1 = new WarBattleWinEvent(this, winningTeams);
War.war.getServer().getPluginManager().callEvent(event1);
if (!scores.equals("")) {
this.broadcast("zone.battle.newscores", scores);
}
if (War.war.getMysqlConfig().isEnabled() && War.war.getMysqlConfig().isLoggingEnabled()) {
LogKillsDeathsJob logKillsDeathsJob = new LogKillsDeathsJob(ImmutableList.copyOf(this.getKillsDeathsTracker()));
War.war.getServer().getScheduler().runTaskAsynchronously(War.war, logKillsDeathsJob);
}
this.getKillsDeathsTracker().clear();
// detect score cap
List<Team> scoreCapTeams = new ArrayList<Team>();
for (Team t : teams) {
if (t.getPoints() == t.getTeamConfig().resolveInt(TeamConfig.MAXSCORE)) {
scoreCapTeams.add(t);
}
}
if (!scoreCapTeams.isEmpty()) {
String winnersStr = "";
for (Team winner : scoreCapTeams) {
if (winner.getPlayers().size() != 0) {
winnersStr += winner.getName() + " ";
}
}
this.handleScoreCapReached(winnersStr);
} else {
// A new battle starts. Reset the zone but not the teams.
this.broadcast("zone.battle.reset");
if (this.getWarzoneConfig().getBoolean(WarzoneConfig.RESETBLOCKS)) {
this.reinitialize();
} else {
this.initializeZone();
}
}
}
} else {
// player died without causing his team's demise
if (this.isFlagThief(player.getName())) {
// died while carrying flag.. dropped it
Team victim = this.getVictimTeamForFlagThief(player.getName());
victim.getFlagVolume().resetBlocks();
victim.initializeTeamFlag();
this.removeFlagThief(player.getName());
if (War.war.isSpoutServer()) {
for (Player p : victim.getPlayers()) {
SpoutPlayer sp = SpoutManager.getPlayer(p);
if (sp.isSpoutCraftEnabled()) {
sp.sendNotification(
SpoutDisplayer.cleanForNotification(playerTeam.getKind().getColor() + player.getName() + ChatColor.YELLOW + " dropped"),
SpoutDisplayer.cleanForNotification(ChatColor.YELLOW + "your flag."),
playerTeam.getKind().getBlockHead(),
5000);
}
}
}
this.broadcast("drop.flag.broadcast", player.getName(), victim.getName());
}
// Bomb thieves
if (this.isBombThief(player.getName())) {
// died while carrying bomb.. dropped it
Bomb bomb = this.getBombForThief(player.getName());
bomb.getVolume().resetBlocks();
bomb.addBombBlocks();
this.removeBombThief(player.getName());
for (Team t : this.getTeams()) {
t.teamcast("drop.bomb.broadcast", player.getName(), ChatColor.GREEN + bomb.getName() + ChatColor.WHITE);
if (War.war.isSpoutServer()) {
for (Player p : t.getPlayers()) {
SpoutPlayer sp = SpoutManager.getPlayer(p);
if (sp.isSpoutCraftEnabled()) {
sp.sendNotification(
SpoutDisplayer.cleanForNotification(playerTeam.getKind().getColor() + player.getName() + ChatColor.YELLOW + " dropped"),
SpoutDisplayer.cleanForNotification(ChatColor.YELLOW + "bomb " + ChatColor.GREEN + bomb.getName() + ChatColor.YELLOW + "."),
Material.TNT,
(short)0,
5000);
}
}
}
}
}
if (this.isCakeThief(player.getName())) {
// died while carrying cake.. dropped it
Cake cake = this.getCakeForThief(player.getName());
cake.getVolume().resetBlocks();
cake.addCakeBlocks();
this.removeCakeThief(player.getName());
for (Team t : this.getTeams()) {
t.teamcast("drop.cake.broadcast", player.getName(), ChatColor.GREEN + cake.getName() + ChatColor.WHITE);
if (War.war.isSpoutServer()) {
for (Player p : t.getPlayers()) {
SpoutPlayer sp = SpoutManager.getPlayer(p);
if (sp.isSpoutCraftEnabled()) {
sp.sendNotification(
SpoutDisplayer.cleanForNotification(playerTeam.getKind().getColor() + player.getName() + ChatColor.YELLOW + " dropped"),
SpoutDisplayer.cleanForNotification(ChatColor.YELLOW + "cake " + ChatColor.GREEN + cake.getName() + ChatColor.YELLOW + "."),
Material.CAKE,
(short)0,
5000);
}
}
}
}
}
// Decrement lifepool
playerTeam.setRemainingLives(remaining - 1);
// Lifepool empty warning
if (remaining - 1 == 0) {
this.broadcast("zone.lifepool.empty", playerTeam.getName());
}
private void dropItems(Location location, ItemStack[] items) {
for (ItemStack item : items) {
if (item == null || item.getType() == Material.AIR) {
continue;
}
playerTeam.resetSign();
location.getWorld().dropItem(location, item);
}
}
private Random killSeed = new Random();
/**
* Send death messages and process other records before passing off the
* death to the {@link #handleDeath(Player)} method.
* @param attacker Player who killed the defender
* @param defender Player who was killed
* @param damager Entity who caused the damage. Usually an arrow. Used for
* specific death messages. Can be null.
*/
public void handleKill(Player attacker, Player defender, Entity damager) {
Team attackerTeam = this.getPlayerTeam(attacker.getName());
Team defenderTeam = this.getPlayerTeam(defender.getName());
if (this.getWarzoneConfig().getBoolean(WarzoneConfig.DEATHMESSAGES)) {
String attackerString = attackerTeam.getKind().getColor() + attacker.getName();
String defenderString = defenderTeam.getKind().getColor() + defender.getName();
Material killerWeapon = attacker.getItemInHand().getType();
String weaponString = killerWeapon.toString();
if (attacker.getItemInHand().hasItemMeta() && attacker.getItemInHand().getItemMeta().hasDisplayName()) {
weaponString = attacker.getItemInHand().getItemMeta().getDisplayName() + ChatColor.WHITE;
}
if (killerWeapon == Material.AIR) {
weaponString = War.war.getString("pvp.kill.weapon.hand");
} else if (killerWeapon == Material.BOW || damager instanceof Arrow) {
int rand = killSeed.nextInt(3);
if (rand == 0) {
weaponString = War.war.getString("pvp.kill.weapon.bow");
} else {
weaponString = War.war.getString("pvp.kill.weapon.aim");
}
} else if (damager instanceof Projectile) {
weaponString = War.war.getString("pvp.kill.weapon.aim");
}
String adjectiveString = War.war.getDeadlyAdjectives().isEmpty() ? "" : War.war.getDeadlyAdjectives().get(this.killSeed.nextInt(War.war.getDeadlyAdjectives().size()));
String verbString = War.war.getKillerVerbs().isEmpty() ? "" : War.war.getKillerVerbs().get(this.killSeed.nextInt(War.war.getKillerVerbs().size()));
this.broadcast("pvp.kill.format", attackerString + ChatColor.WHITE, adjectiveString,
weaponString.toLowerCase().replace('_', ' '), verbString, defenderString);
}
this.addKillCount(attacker.getName(), 1);
this.addKillDeathRecord(attacker, 1, 0);
this.addKillDeathRecord(defender, 0, 1);
if (attackerTeam.getTeamConfig().resolveBoolean(TeamConfig.XPKILLMETER)) {
attacker.setLevel(this.getKillCount(attacker.getName()));
}
if (attackerTeam.getTeamConfig().resolveBoolean(TeamConfig.KILLSTREAK)) {
War.war.getKillstreakReward().rewardPlayer(attacker, this.getKillCount(attacker.getName()));
}
if (this.getScoreboard() != null && this.getScoreboardType() == ScoreboardType.TOPKILLS) {
Objective obj = this.getScoreboard().getObjective("Top kills");
obj.getScore(attacker).setScore(this.getKillCount(attacker.getName()));
}
if (defenderTeam.getTeamConfig().resolveBoolean(TeamConfig.INVENTORYDROP)) {
dropItems(defender.getLocation(), defender.getInventory().getContents());
dropItems(defender.getLocation(), defender.getInventory().getArmorContents());
}
this.handleDeath(defender);
}
/**
* Handle death messages before passing to {@link #handleDeath(Player)}
* for post-processing. It's like
* {@link #handleKill(Player, Player, Entity)}, but only for suicides.
* @param player Player who killed himself
*/
public void handleSuicide(Player player) {
if (this.getWarzoneConfig().getBoolean(WarzoneConfig.DEATHMESSAGES)) {
String defenderString = this.getPlayerTeam(player.getName()).getKind().getColor() + player.getName() + ChatColor.WHITE;
this.broadcast("pvp.kill.self", defenderString);
}
this.handleDeath(player);
}
/**
* Handle a player killed naturally (like by a dispenser or explosion).
* @param player Player killed
* @param event Event causing damage
*/
public void handleNaturalKill(Player player, EntityDamageEvent event) {
if (this.getWarzoneConfig().getBoolean(WarzoneConfig.DEATHMESSAGES)) {
String defenderString = this.getPlayerTeam(player.getName()).getKind().getColor() + player.getName() + ChatColor.WHITE;
if (event instanceof EntityDamageByEntityEvent
&& ((EntityDamageByEntityEvent) event).getDamager() instanceof TNTPrimed) {
this.broadcast("pvp.death.explosion", defenderString + ChatColor.WHITE);
} else if (event.getCause() == DamageCause.FIRE || event.getCause() == DamageCause.FIRE_TICK
|| event.getCause() == DamageCause.LAVA || event.getCause() == DamageCause.LIGHTNING) {
this.broadcast("pvp.death.fire", defenderString);
} else if (event.getCause() == DamageCause.DROWNING) {
this.broadcast("pvp.death.drown", defenderString);
} else if (event.getCause() == DamageCause.FALL) {
this.broadcast("pvp.death.fall", defenderString);
} else {
this.broadcast("pvp.death.other", defenderString);
}
}
this.handleDeath(player);
}
/**
* Cleanup after a player who has died. This decrements the team's
* remaining lifepool, drops stolen flags, and respawns the player.
* It also handles team lose and score cap conditions.
* This method is synchronized to prevent concurrent battle resets.
* @param player Player who died
*/
public synchronized void handleDeath(Player player) {
Team playerTeam = this.getPlayerTeam(player.getName());
Validate.notNull(playerTeam, "Can't find team for dead player " + player.getName());
if (this.getWarzoneConfig().getBoolean(WarzoneConfig.REALDEATHS)) {
this.getReallyDeadFighters().add(player.getName());
} else {
this.respawnPlayer(playerTeam, player);
}
if (playerTeam.getRemainingLifes() <= 0) {
handleTeamLoss(playerTeam, player);
} else {
this.dropAllStolenObjects(player, false);
playerTeam.setRemainingLives(playerTeam.getRemainingLifes() - 1);
// Lifepool empty warning
if (playerTeam.getRemainingLifes() == 0) {
this.broadcast("zone.lifepool.empty", playerTeam.getName());
}
}
playerTeam.resetSign();
}
private void handleTeamLoss(Team losingTeam, Player player) {
StringBuilder teamScores = new StringBuilder();
List<Team> winningTeams = new ArrayList<Team>(teams.size());
for (Team team : this.teams) {
if (team.getPlayers().isEmpty())
continue;
if (team != losingTeam) {
team.addPoint();
team.resetSign();
winningTeams.add(team);
}
teamScores.append(String.format("\n%s (%d/%d) ", team.getName(), team.getPoints(), team.getTeamConfig().resolveInt(TeamConfig.MAXSCORE)));
team.sendAchievement("Round over! " + losingTeam.getKind().getFormattedName(), "ran out of lives.", losingTeam.getKind().getBlockHead(), 10000);
}
this.broadcast("zone.battle.end", losingTeam.getName(), player.getName());
WarBattleWinEvent event1 = new WarBattleWinEvent(this, winningTeams);
War.war.getServer().getPluginManager().callEvent(event1);
if (!teamScores.toString().isEmpty()) {
this.broadcast("zone.battle.newscores", teamScores.toString());
}
if (War.war.getMysqlConfig().isEnabled() && War.war.getMysqlConfig().isLoggingEnabled()) {
LogKillsDeathsJob logKillsDeathsJob = new LogKillsDeathsJob(ImmutableList.copyOf(this.getKillsDeathsTracker()));
War.war.getServer().getScheduler().runTaskAsynchronously(War.war, logKillsDeathsJob);
}
this.getKillsDeathsTracker().clear();
if (!detectScoreCap()) {
this.broadcast("zone.battle.reset");
if (this.getWarzoneConfig().getBoolean(WarzoneConfig.RESETBLOCKS)) {
this.reinitialize();
} else {
this.initializeZone();
}
}
}
/**
* Check if a team has achieved max score "score cap".
* @return true if team has achieved max score, false otherwise.
*/
public boolean detectScoreCap() {
StringBuilder winnersStr = new StringBuilder();
for (Team team : this.teams) {
if (team.getPoints() >= team.getTeamConfig().resolveInt(TeamConfig.MAXSCORE)) {
winnersStr.append(team.getName()).append(' ');
}
}
if (!winnersStr.toString().isEmpty())
this.handleScoreCapReached(winnersStr.toString());
return !winnersStr.toString().isEmpty();
}
public void reinitialize() {
this.isReinitializing = true;
@ -1347,6 +1392,8 @@ public class Warzone {
String winnersStrAndExtra = "Score cap reached. Game is over! Winning team(s): " + winnersStr;
winnersStrAndExtra += ". Resetting warzone and your inventory...";
t.teamcast(winnersStrAndExtra);
double ecoReward = t.getTeamConfig().resolveDouble(TeamConfig.ECOREWARD);
boolean doEcoReward = ecoReward != 0 && War.war.getEconomy() != null;
for (Iterator<Player> it = t.getPlayers().iterator(); it.hasNext();) {
Player tp = it.next();
it.remove(); // Remove player from team first to prevent anti-tp
@ -1355,6 +1402,19 @@ public class Warzone {
if (winnersStr.contains(t.getName())) {
// give reward
rewardPlayer(tp, t.getInventories().resolveReward());
if (doEcoReward) {
EconomyResponse r;
if (ecoReward > 0) {
r = War.war.getEconomy().depositPlayer(tp.getName(), ecoReward);
} else {
r = War.war.getEconomy().withdrawPlayer(tp.getName(), ecoReward);
}
if (!r.transactionSuccess()) {
War.war.getLogger().log(Level.WARNING,
"Failed to reward player {0} ${1}. Error: {2}",
new Object[] {tp.getName(), ecoReward, r.errorMessage});
}
}
}
}
t.resetPoints();
@ -1797,7 +1857,7 @@ public class Warzone {
victimTeam.initializeTeamFlag();
if (!quiet) {
this.broadcast("drop.flag.broadcast", player.getName(), ChatColor.GREEN + victimTeam.getName() + ChatColor.WHITE);
this.broadcast("drop.flag.broadcast", player.getName(), victimTeam.getKind().getColor() + victimTeam.getName() + ChatColor.WHITE);
}
} else if (this.isCakeThief(player.getName())) {
Cake cake = this.getCakeForThief(player.getName());

View File

@ -53,7 +53,9 @@ public class ResetZoneCommand extends AbstractZoneMakerCommand {
Player p = it.next();
it.remove();
team.removePlayer(p);
p.teleport(zone.getEndTeleport(LeaveCause.RESET));
if (!zone.getReallyDeadFighters().contains(p.getName())) {
p.teleport(zone.getEndTeleport(LeaveCause.RESET));
}
}
team.resetPoints();
team.getPlayers().clear();

View File

@ -1,5 +1,7 @@
package com.tommytony.war.command;
import com.tommytony.war.config.WarConfig;
import com.tommytony.war.job.TeleportPlayerJob;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@ -36,7 +38,15 @@ public class WarhubCommand extends AbstractWarCommand {
if (playerWarzone != null) { // was in zone
playerWarzone.handlePlayerLeave(player, War.war.getWarHub().getLocation(), true);
}
player.teleport(War.war.getWarHub().getLocation());
int warmup = War.war.getWarConfig().getInt(WarConfig.TPWARMUP);
if (warmup > 0 && !player.hasPermission("war.warmupexempt")) {
final int TICKS_PER_SECOND = 20;
TeleportPlayerJob job = new TeleportPlayerJob(player, War.war.getWarHub().getLocation());
job.runTaskLater(War.war, warmup);
this.msg("command.tp.init", warmup / TICKS_PER_SECOND);
} else {
player.teleport(War.war.getWarHub().getLocation());
}
}
return true;
}

View File

@ -1,5 +1,7 @@
package com.tommytony.war.command;
import com.tommytony.war.config.WarConfig;
import com.tommytony.war.job.TeleportPlayerJob;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@ -30,8 +32,15 @@ public class WarzoneCommand extends AbstractWarCommand {
Warzone warzone = Warzone.getZoneByName(args[0]);
if (warzone != null && warzone.getTeleport() != null) {
Warzone playerWarzone = Warzone.getZoneByPlayerName(player.getName());
int warmup = War.war.getWarConfig().getInt(WarConfig.TPWARMUP);
if (playerWarzone != null) {
playerWarzone.handlePlayerLeave(player, warzone.getTeleport(), true);
}
if (warmup > 0 && !player.hasPermission("war.warmupexempt")) {
final int TICKS_PER_SECOND = 20;
TeleportPlayerJob job = new TeleportPlayerJob(player, warzone.getTeleport());
job.runTaskLater(War.war, warmup);
this.msg("command.tp.init", warmup / TICKS_PER_SECOND);
} else {
player.teleport(warzone.getTeleport());
}

View File

@ -4,12 +4,15 @@ import com.google.common.collect.ImmutableList;
import com.tommytony.war.Team;
import com.tommytony.war.War;
import com.tommytony.war.Warzone;
import java.text.MessageFormat;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import org.apache.commons.lang.Validate;
import org.bukkit.ChatColor;
import org.bukkit.Effect;
import org.bukkit.Material;
import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.configuration.MemoryConfiguration;
@ -41,6 +44,7 @@ public class KillstreakReward {
section.set("5.reward.points", 1);
section.set("5.reward.airstrike", true);
section.set("5.reward.items", ImmutableList.of(new ItemStack(Material.ARROW, 15), new ItemStack(Material.EGG)));
section.set("5.reward.effect", Effect.GHAST_SHRIEK.name());
ItemStack sword = new ItemStack(Material.WOOD_SWORD);
sword.addEnchantment(Enchantment.DAMAGE_ALL, 2);
sword.addEnchantment(Enchantment.KNOCKBACK, 1);
@ -131,6 +135,10 @@ public class KillstreakReward {
if (killSection.getBoolean("reward.airstrike")) {
this.airstrikePlayers.add(player.getName());
}
if (killSection.contains("reward.effect")) {
Effect effect = Effect.valueOf(killSection.getString("reward.effect"));
player.getWorld().playEffect(player.getLocation(), effect, null);
}
}
}

View File

@ -4,7 +4,8 @@ public enum ScoreboardType {
NONE(null),
POINTS("Points"),
LIFEPOOL("Lifepool");
LIFEPOOL("Lifepool"),
TOPKILLS("Top kills");
private final String displayName;
private ScoreboardType(String displayName) {

View File

@ -17,7 +17,10 @@ public enum TeamConfig {
XPKILLMETER (Boolean.class),
KILLSTREAK (Boolean.class),
BLOCKWHITELIST (String.class),
PLACEBLOCK (Boolean.class);
PLACEBLOCK (Boolean.class),
APPLYPOTION(String.class),
ECOREWARD(Double.class),
INVENTORYDROP(Boolean.class);
private final Class<?> configType;

View File

@ -54,6 +54,25 @@ public class TeamConfigBag {
}
}
public Double getDouble(TeamConfig config) {
if (this.contains(config)) {
return (Double)this.bag.get(config);
}
return null;
}
public Double resolveDouble(TeamConfig config) {
if (this.contains(config)) {
return (Double)this.bag.get(config);
} else if (this.warzone != null && this.warzone.getTeamDefaultConfig().contains(config)){
// use Warzone default config
return this.warzone.getTeamDefaultConfig().resolveDouble(config);
} else {
// use War default config
return War.war.getTeamDefaultConfig().resolveDouble(config);
}
}
public Integer getInt(TeamConfig config) {
if (this.contains(config)) {
return (Integer)this.bag.get(config);
@ -157,6 +176,8 @@ public class TeamConfigBag {
this.put(config, teamConfigSection.getBoolean(config.toString()));
} else if (config.getConfigType().equals(String.class)) {
this.put(config, teamConfigSection.getString(config.toString()));
} else if (config.getConfigType().equals(Double.class)) {
this.put(config, teamConfigSection.getDouble(config.toString()));
} else if (config.getConfigType().equals(FlagReturn.class)) {
String flagReturnStr = teamConfigSection.getString(config.toString());
FlagReturn returnMode = FlagReturn.getFromString(flagReturnStr);
@ -178,7 +199,8 @@ public class TeamConfigBag {
for (TeamConfig config : TeamConfig.values()) {
if (this.contains(config)) {
if (config.getConfigType().equals(Integer.class)
|| config.getConfigType().equals(Boolean.class)) {
|| config.getConfigType().equals(Boolean.class)
|| config.getConfigType().equals(Double.class)) {
teamConfigSection.set(config.toString(), this.bag.get(config));
} else {
teamConfigSection.set(config.toString(), this.bag.get(config).toString());
@ -195,6 +217,9 @@ public class TeamConfigBag {
if (teamConfig.getConfigType().equals(Integer.class)) {
int intValue = Integer.parseInt(namedParams.get(namedParam));
this.bag.put(teamConfig, intValue);
} else if (teamConfig.getConfigType().equals(Double.class)) {
double doubleValue = Double.parseDouble(namedParams.get(namedParam));
this.bag.put(teamConfig, doubleValue);
} else if (teamConfig.getConfigType().equals(Boolean.class)) {
String onOff = namedParams.get(namedParam);
this.bag.put(teamConfig, onOff.equals("on") || onOff.equals("true"));

View File

@ -11,7 +11,9 @@ public enum WarConfig {
TNTINZONESONLY (Boolean.class),
RESETSPEED (Integer.class),
MAXSIZE (Integer.class),
LANGUAGE (String.class);
LANGUAGE (String.class),
AUTOJOIN (String.class),
TPWARMUP(Integer.class);
private final Class<?> configType;

View File

@ -4,9 +4,11 @@ import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.BlockState;
import org.bukkit.entity.Player;
import org.bukkit.event.Cancellable;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockBreakEvent;
import org.bukkit.event.block.BlockBurnEvent;
@ -14,6 +16,7 @@ import org.bukkit.event.block.BlockDamageEvent;
import org.bukkit.event.block.BlockPistonExtendEvent;
import org.bukkit.event.block.BlockPistonRetractEvent;
import org.bukkit.event.block.BlockPlaceEvent;
import org.bukkit.event.world.StructureGrowEvent;
import org.bukkit.inventory.ItemStack;
import org.getspout.spoutapi.SpoutManager;
import org.getspout.spoutapi.player.SpoutPlayer;
@ -460,4 +463,16 @@ public class WarBlockListener implements Listener {
return;
}
}
@EventHandler(priority = EventPriority.HIGHEST)
public void onStructureGrowth(final StructureGrowEvent event) {
Warzone zone = Warzone.getZoneByLocation(event.getLocation());
if (zone != null) {
for (BlockState state : event.getBlocks()) {
if (!zone.getVolume().contains(state.getLocation())) {
state.setType(Material.AIR);
}
}
}
}
}

View File

@ -2,16 +2,17 @@ package com.tommytony.war.event;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.logging.Level;
import java.text.MessageFormat;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.BlockState;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Entity;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Projectile;
import org.bukkit.entity.TNTPrimed;
@ -19,18 +20,22 @@ import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.CreatureSpawnEvent;
import org.bukkit.event.entity.EntityCombustEvent;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
import org.bukkit.event.entity.EntityDeathEvent;
import org.bukkit.event.entity.EntityExplodeEvent;
import org.bukkit.event.entity.EntityRegainHealthEvent;
import org.bukkit.event.entity.EntityRegainHealthEvent.RegainReason;
import org.bukkit.event.entity.ExplosionPrimeEvent;
import org.bukkit.event.entity.FoodLevelChangeEvent;
import org.getspout.spoutapi.SpoutManager;
import org.getspout.spoutapi.player.SpoutPlayer;
import org.bukkit.event.entity.PlayerDeathEvent;
import org.bukkit.event.entity.ProjectileHitEvent;
import org.bukkit.event.entity.ProjectileLaunchEvent;
import org.bukkit.event.hanging.HangingPlaceEvent;
import org.bukkit.event.hanging.HangingBreakByEntityEvent;
import org.bukkit.inventory.ItemStack;
import org.bukkit.metadata.FixedMetadataValue;
import org.bukkit.projectiles.ProjectileSource;
import org.bukkit.util.Vector;
import com.tommytony.war.Team;
import com.tommytony.war.War;
@ -39,15 +44,8 @@ import com.tommytony.war.config.TeamConfig;
import com.tommytony.war.config.WarConfig;
import com.tommytony.war.config.WarzoneConfig;
import com.tommytony.war.job.DeferredBlockResetsJob;
import com.tommytony.war.spout.SpoutDisplayer;
import com.tommytony.war.structure.Bomb;
import com.tommytony.war.utility.LoadoutSelection;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.LivingEntity;
import org.bukkit.event.entity.ProjectileHitEvent;
import org.bukkit.event.entity.ProjectileLaunchEvent;
import org.bukkit.metadata.FixedMetadataValue;
import org.bukkit.util.Vector;
/**
* Handles Entity-Events
@ -57,8 +55,6 @@ import org.bukkit.util.Vector;
*/
public class WarEntityListener implements Listener {
private final Random killSeed = new Random();
/**
* Handles PVP-Damage
*
@ -68,7 +64,7 @@ public class WarEntityListener implements Listener {
private void handlerAttackDefend(EntityDamageByEntityEvent event) {
Entity attacker = event.getDamager();
Entity defender = event.getEntity();
// Maybe an arrow was thrown
if (attacker != null && event.getDamager() instanceof Projectile && ((Projectile)event.getDamager()).getShooter() instanceof Player){
attacker = ((Player)((Projectile)event.getDamager()).getShooter());
@ -82,24 +78,24 @@ public class WarEntityListener implements Listener {
Team attackerTeam = Team.getTeamByPlayerName(a.getName());
Warzone defenderWarzone = Warzone.getZoneByPlayerName(d.getName());
Team defenderTeam = Team.getTeamByPlayerName(d.getName());
if ((attackerTeam != null && defenderTeam != null && attackerTeam != defenderTeam && attackerWarzone == defenderWarzone)
|| (attackerTeam != null && defenderTeam != null && attacker.getEntityId() == defender.getEntityId())) {
LoadoutSelection defenderLoadoutState = defenderWarzone.getLoadoutSelections().get(d.getName());
if (defenderLoadoutState != null && defenderLoadoutState.isStillInSpawn()) {
War.war.badMsg(a, "pvp.target.spawn");
event.setCancelled(true);
return;
}
LoadoutSelection attackerLoadoutState = attackerWarzone.getLoadoutSelections().get(a.getName());
if (attackerLoadoutState != null && attackerLoadoutState.isStillInSpawn()) {
War.war.badMsg(a, "pvp.self.spawn");
event.setCancelled(true);
return;
}
// Make sure none of them are locked in by respawn timer
if (defenderWarzone.isRespawning(d)) {
War.war.badMsg(a, "pvp.target.respawn");
@ -110,7 +106,7 @@ public class WarEntityListener implements Listener {
event.setCancelled(true);
return;
}
if (!attackerWarzone.getWarzoneConfig().getBoolean(WarzoneConfig.PVPINZONE)) {
// spleef-like, non-pvp, zone
event.setCancelled(true);
@ -120,78 +116,35 @@ public class WarEntityListener implements Listener {
// Detect death, prevent it and respawn the player
if (event.getDamage() >= d.getHealth()) {
if (defenderWarzone.getReallyDeadFighters().contains(d.getName())) {
// don't re-kill a dead person
if (d.getHealth() != 0) {
d.setHealth(0);
}
// don't re-kill a dead person
return;
}
if (attackerWarzone.getWarzoneConfig().getBoolean(WarzoneConfig.DEATHMESSAGES)) {
String attackerString = attackerTeam.getKind().getColor() + a.getName();
String defenderString = defenderTeam.getKind().getColor() + d.getName();
if (attacker.getEntityId() != defender.getEntityId()) {
Material killerWeapon = a.getItemInHand().getType();
String weaponString = killerWeapon.toString();
if (a.getItemInHand().hasItemMeta() && a.getItemInHand().getItemMeta().hasDisplayName()) {
weaponString = a.getItemInHand().getItemMeta().getDisplayName() + ChatColor.WHITE;
}
if (killerWeapon == Material.AIR) {
weaponString = War.war.getString("pvp.kill.weapon.hand");
} else if (killerWeapon == Material.BOW || event.getDamager() instanceof Arrow) {
int rand = killSeed.nextInt(3);
if (rand == 0) {
weaponString = War.war.getString("pvp.kill.weapon.bow");
} else {
weaponString = War.war.getString("pvp.kill.weapon.aim");
}
} else if (event.getDamager() instanceof Projectile) {
weaponString = War.war.getString("pvp.kill.weapon.aim");
}
String adjectiveString = War.war.getDeadlyAdjectives().isEmpty() ? "" : War.war.getDeadlyAdjectives().get(this.killSeed.nextInt(War.war.getDeadlyAdjectives().size()));
String verbString = War.war.getKillerVerbs().isEmpty() ? "" : War.war.getKillerVerbs().get(this.killSeed.nextInt(War.war.getKillerVerbs().size()));
defenderWarzone.broadcast("pvp.kill.format", attackerString + ChatColor.WHITE, adjectiveString,
weaponString.toLowerCase().replace('_', ' '), verbString, defenderString);
} else {
defenderWarzone.broadcast("pvp.kill.self", defenderString + ChatColor.WHITE);
}
}
if (attacker.getEntityId() != defender.getEntityId()) {
defenderWarzone.addKillCount(a.getName(), 1);
defenderWarzone.addKillDeathRecord(a, 1, 0);
defenderWarzone.addKillDeathRecord(d, 0, 1);
if (attackerTeam.getTeamConfig().resolveBoolean(TeamConfig.XPKILLMETER)) {
a.setLevel(defenderWarzone.getKillCount(a.getName()));
}
if (attackerTeam.getTeamConfig().resolveBoolean(TeamConfig.KILLSTREAK)) {
War.war.getKillstreakReward().rewardPlayer(a, defenderWarzone.getKillCount(a.getName()));
}
}
WarPlayerDeathEvent event1 = new WarPlayerDeathEvent(defenderWarzone, d, a, event.getCause());
War.war.getServer().getPluginManager().callEvent(event1);
defenderWarzone.handleDeath(d);
if (!defenderWarzone.getWarzoneConfig().getBoolean(WarzoneConfig.REALDEATHS)) {
// fast respawn, don't really die
event.setCancelled(true);
return;
}
if (d == a) {
defenderWarzone.handleSuicide(d);
} else {
defenderWarzone.handleKill(a, d, event.getDamager());
}
} else if (defenderWarzone.isBombThief(d.getName()) && d.getLocation().distance(a.getLocation()) < 2) {
// Close combat, close enough to detonate
// Close combat, close enough to detonate
Bomb bomb = defenderWarzone.getBombForThief(d.getName());
// Kill the bomber
// Kill the bomber
WarPlayerDeathEvent event1 = new WarPlayerDeathEvent(defenderWarzone, d, null, event.getCause());
War.war.getServer().getPluginManager().callEvent(event1);
defenderWarzone.handleDeath(d);
if (defenderWarzone.getWarzoneConfig().getBoolean(WarzoneConfig.REALDEATHS)) {
// and respawn him and remove from deadmen (cause realdeath + handleDeath means no respawn and getting queued up for onPlayerRespawn)
defenderWarzone.getReallyDeadFighters().remove(d.getName());
defenderWarzone.respawnPlayer(defenderTeam, d);
}
// Blow up bomb
if (!defenderWarzone.getWarzoneConfig().getBoolean(WarzoneConfig.UNBREAKABLE)) {
defenderWarzone.getWorld().createExplosion(a.getLocation(), 2F);
@ -200,27 +153,14 @@ public class WarEntityListener implements Listener {
// bring back tnt
bomb.getVolume().resetBlocks();
bomb.addBombBlocks();
// Notify everyone
for (Team t : defenderWarzone.getTeams()) {
if (War.war.isSpoutServer()) {
for (Player p : t.getPlayers()) {
SpoutPlayer sp = SpoutManager.getPlayer(p);
if (sp.isSpoutCraftEnabled()) {
sp.sendNotification(
SpoutDisplayer.cleanForNotification(attackerTeam.getKind().getColor() + a.getName() + ChatColor.YELLOW + " made "),
SpoutDisplayer.cleanForNotification(defenderTeam.getKind().getColor() + d.getName() + ChatColor.YELLOW + " blow up!"),
Material.TNT,
(short)0,
10000);
}
}
}
t.sendAchievement(attackerTeam.getKind().getColor() + a.getName() + ChatColor.YELLOW + " made ",
defenderTeam.getKind().getColor() + d.getName() + ChatColor.YELLOW + " blow up!", new ItemStack(Material.TNT), 10000);
t.teamcast("pvp.kill.bomb", attackerTeam.getKind().getColor() + a.getName() + ChatColor.WHITE,
defenderTeam.getKind().getColor() + d.getName() + ChatColor.WHITE);
}
}
} else if (attackerTeam != null && defenderTeam != null && attackerTeam == defenderTeam && attackerWarzone == defenderWarzone && attacker.getEntityId() != defender.getEntityId()) {
// same team, but not same person
@ -236,7 +176,7 @@ public class WarEntityListener implements Listener {
if (!War.war.getWarConfig().getBoolean(WarConfig.DISABLEPVPMESSAGE)) {
War.war.badMsg(a, "pvp.outside.permission");
}
event.setCancelled(true); // global pvp is off
} else {
if (attackerTeam == null) {
@ -265,31 +205,17 @@ public class WarEntityListener implements Listener {
return;
}
if (defenderWarzone.getReallyDeadFighters().contains(d.getName())) {
// don't re-kill a dead person
if (d.getHealth() != 0) {
d.setHealth(0);
}
// don't re-kill a dead person
return;
}
if (defenderWarzone.getWarzoneConfig().getBoolean(WarzoneConfig.DEATHMESSAGES)) {
String defenderString = Team.getTeamByPlayerName(d.getName()).getKind().getColor() + d.getName();
if (event.getDamager() instanceof TNTPrimed) {
defenderWarzone.broadcast("pvp.death.explosion", defenderString + ChatColor.WHITE);
} else {
defenderWarzone.broadcast("pvp.death.other", defenderString + ChatColor.WHITE);
}
}
WarPlayerDeathEvent event1 = new WarPlayerDeathEvent(defenderWarzone, d, null, event.getCause());
War.war.getServer().getPluginManager().callEvent(event1);
defenderWarzone.handleDeath(d);
if (!defenderWarzone.getWarzoneConfig().getBoolean(WarzoneConfig.REALDEATHS)) {
// fast respawn, don't really die
event.setCancelled(true);
return;
}
defenderWarzone.handleNaturalKill(d, event);
}
}
}
@ -307,15 +233,15 @@ public class WarEntityListener implements Listener {
// protect zones elements, lobbies and warhub from creepers and tnt
List<Block> explodedBlocks = event.blockList();
List<Block> dontExplode = new ArrayList<Block>();
boolean explosionInAWarzone = event.getEntity() != null && Warzone.getZoneByLocation(event.getEntity().getLocation()) != null;
if (!explosionInAWarzone && War.war.getWarConfig().getBoolean(WarConfig.TNTINZONESONLY) && event.getEntity() instanceof TNTPrimed) {
// if tntinzonesonly:true, no tnt blows up outside zones
event.setCancelled(true);
return;
}
for (Block block : explodedBlocks) {
if (block.getType() == Material.TNT) {
continue; // don't restore TNT (failed to track down regression cause)
@ -346,28 +272,28 @@ public class WarEntityListener implements Listener {
inOneZone = true;
}
}
if (!inOneZone && explosionInAWarzone) {
// if the explosion originated in warzone, always rollback
dontExplode.add(block);
}
}
}
int dontExplodeSize = dontExplode.size();
if (dontExplode.size() > 0) {
// Reset the exploded blocks that shouldn't have exploded (some of these are zone artifacts, if rollbackexplosion some may be outside-of-zone blocks
// Reset the exploded blocks that shouldn't have exploded (some of these are zone artifacts, if rollbackexplosion some may be outside-of-zone blocks
DeferredBlockResetsJob job = new DeferredBlockResetsJob();
for (Block dont : dontExplode) {
job.add(dont.getState());
}
War.war.getServer().getScheduler().scheduleSyncDelayedTask(War.war, job);
// Changed explosion yield following proportion of explosion prevention (makes drops less buggy too)
// Changed explosion yield following proportion of explosion prevention (makes drops less buggy too)
int explodedSize = explodedBlocks.size();
float middleYeild = (float)(explodedSize - dontExplodeSize) / (float)explodedSize;
float newYeild = middleYeild * event.getYield();
event.setYield(newYeild);
}
}
@ -380,14 +306,14 @@ public class WarEntityListener implements Listener {
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onEntityDamage(final EntityDamageEvent event) {
if (!War.war.isLoaded()) {
if (!War.war.isLoaded()) {
return;
}
Entity entity = event.getEntity();
if (!(entity instanceof Player)) {
return;
}
Player player = (Player) entity;
@ -399,84 +325,36 @@ public class WarEntityListener implements Listener {
}
// pass pvp-damage
if (event instanceof EntityDamageByEntityEvent) {
if (event instanceof EntityDamageByEntityEvent) {
this.handlerAttackDefend((EntityDamageByEntityEvent) event);
} else {
Team team = Team.getTeamByPlayerName(player.getName());
if (zone != null && team != null) {
LoadoutSelection playerLoadoutState = zone.getLoadoutSelections().get(player.getName());
LoadoutSelection playerLoadoutState = zone.getLoadoutSelections().get(player.getName());
if (team.isSpawnLocation(player.getLocation())
&& playerLoadoutState != null && playerLoadoutState.isStillInSpawn()) {
// don't let a player still in spawn get damaged
event.setCancelled(true);
} else if (event.getDamage() >= player.getHealth()) {
if (zone.getReallyDeadFighters().contains(player.getName())) {
// don't re-count the death points of an already dead person, make sure they are dead though
// (reason for this is that onEntityDamage sometimes fires more than once for one death)
if (player.getHealth() != 0) {
player.setHealth(0);
}
// don't re-count the death points of an already dead person
return;
}
// Detect death, prevent it and respawn the player
if (zone.getWarzoneConfig().getBoolean(WarzoneConfig.DEATHMESSAGES)) {
String playerName = Team.getTeamByPlayerName(player.getName()).getKind().getColor() + player.getName() + ChatColor.WHITE;
if (event.getCause() == DamageCause.FIRE || event.getCause() == DamageCause.FIRE_TICK
|| event.getCause() == DamageCause.LAVA || event.getCause() == DamageCause.LIGHTNING) {
zone.broadcast("pvp.death.fire", playerName);
} else if (event.getCause() == DamageCause.DROWNING) {
zone.broadcast("pvp.death.drown", playerName);
} else if (event.getCause() == DamageCause.FALL) {
zone.broadcast("pvp.death.fall", playerName);
} else {
zone.broadcast("pvp.death.other", playerName);
}
}
WarPlayerDeathEvent event1 = new WarPlayerDeathEvent(zone, player, null, event.getCause());
War.war.getServer().getPluginManager().callEvent(event1);
zone.handleDeath(player);
if (!zone.getWarzoneConfig().getBoolean(WarzoneConfig.REALDEATHS)) {
// fast respawn, don't really die
event.setCancelled(true);
}
zone.handleNaturalKill(player, event);
}
}
}
}
@EventHandler
public void onEntityCombust(final EntityCombustEvent event) {
if (!War.war.isLoaded()) {
return;
}
Entity entity = event.getEntity();
if (entity instanceof Player) {
Player player = (Player) entity;
Team team = Team.getTeamByPlayerName(player.getName());
Warzone zone = Warzone.getZoneByPlayerName(player.getName());
LoadoutSelection playerLoadoutState = null;
if (zone != null) {
playerLoadoutState = zone.getLoadoutSelections().get(player.getName());
}
if (team != null
&& zone != null
&& team.isSpawnLocation(player.getLocation())
&& playerLoadoutState != null
&& playerLoadoutState.isStillInSpawn()) {
// smother out the fire that didn't burn out when you respawned
// Stop fire (but not if you came back to spawn after leaving it a first time)
player.setFireTicks(0);
event.setCancelled(true);
}
}
}
/**
* Prevents creatures from spawning in warzones if no creatures is active
*
@ -502,10 +380,7 @@ public class WarEntityListener implements Listener {
*/
@EventHandler
public void onEntityRegainHealth(final EntityRegainHealthEvent event) {
if (!War.war.isLoaded() ||
(event.getRegainReason() != RegainReason.REGEN
&& event.getRegainReason() != RegainReason.EATING
&& event.getRegainReason() != RegainReason.SATIATED)) {
if (!War.war.isLoaded()) {
return;
}
@ -518,8 +393,7 @@ public class WarEntityListener implements Listener {
Warzone zone = Warzone.getZoneByPlayerName(player.getName());
if (zone != null) {
Team team = Team.getTeamByPlayerName(player.getName());
if ((event.getRegainReason() == RegainReason.EATING
|| event.getRegainReason() != RegainReason.SATIATED )
if (event.getRegainReason() == RegainReason.SATIATED
&& team.getTeamConfig().resolveBoolean(TeamConfig.NOHUNGER)) {
// noHunger setting means you can't auto-heal with full hunger bar (use saturation instead to control how fast you get hungry)
event.setCancelled(true);
@ -529,13 +403,13 @@ public class WarEntityListener implements Listener {
}
}
}
@EventHandler
public void onFoodLevelChange(final FoodLevelChangeEvent event) {
if (!War.war.isLoaded() || !(event.getEntity() instanceof Player)) {
return;
}
Player player = (Player) event.getEntity();
Warzone zone = Warzone.getZoneByPlayerName(player.getName());
Team team = Team.getTeamByPlayerName(player.getName());
@ -543,14 +417,10 @@ public class WarEntityListener implements Listener {
event.setCancelled(true);
}
}
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onEntityDeath(final EntityDeathEvent event) {
if (!War.war.isLoaded() || !(event.getEntity() instanceof Player)) {
return;
}
Player player = (Player) event.getEntity();
public void onPlayerDeath(final PlayerDeathEvent event) {
Player player = event.getEntity();
Warzone zone = Warzone.getZoneByPlayerName(player.getName());
if (zone != null) {
event.getDrops().clear();
@ -561,18 +431,21 @@ public class WarEntityListener implements Listener {
if (zone.getWarzoneConfig().getBoolean(WarzoneConfig.DEATHMESSAGES)) {
zone.broadcast("pvp.death.other", team.getKind().getColor() + player.getName());
}
War.war.getLogger().log(Level.WARNING, "We missed the death of player {0} - something went wrong.", player.getName());
} else {
event.setDeathMessage("");
}
}
}
@EventHandler
public void onExplosionPrime(final ExplosionPrimeEvent event) {
if (!War.war.isLoaded()) {
return;
}
Location eventLocation = event.getEntity().getLocation();
for (Warzone zone : War.war.getWarzones()) {
if (zone.isBombBlock(eventLocation.getBlock())) {
// prevent the Bomb from exploding on its pedestral
@ -610,7 +483,7 @@ public class WarEntityListener implements Listener {
return;
}
if (event.getEntityType() == EntityType.EGG) {
LivingEntity shooter = event.getEntity().getShooter();
ProjectileSource shooter = event.getEntity().getShooter();
if (shooter instanceof Player) {
Player player = (Player) shooter;
Warzone zone = Warzone.getZoneByPlayerName(player.getName());
@ -625,4 +498,43 @@ public class WarEntityListener implements Listener {
}
}
@EventHandler
public void onPaintingBreakByEntity(final HangingBreakByEntityEvent event) {
if (!War.war.isLoaded()) {
return;
}
if (!(event.getRemover() instanceof Player)) {
return;
}
Player player = (Player) event.getRemover();
Warzone zone = Warzone.getZoneByLocation(event.getEntity().getLocation());
Team team = Team.getTeamByPlayerName(player.getName());
boolean isZoneMaker = War.war.isZoneMaker(player);
if (team == null && isZoneMaker) {
return;
}
if (zone != null && zone.getWarzoneConfig().getBoolean(WarzoneConfig.UNBREAKABLE)) {
event.setCancelled(true);
War.war.badMsg(player, "build.denied.zone.break");
}
}
@EventHandler
public void onPaintingPlaceByEntity(final HangingPlaceEvent event) {
if (!War.war.isLoaded()) {
return;
}
Player player = event.getPlayer();
Warzone zone = Warzone.getZoneByLocation(event.getBlock().getLocation());
Team team = Team.getTeamByPlayerName(player.getName());
boolean isZoneMaker = War.war.isZoneMaker(player);
if (team == null && isZoneMaker) {
return;
}
if (zone != null && (zone.getWarzoneConfig().getBoolean(WarzoneConfig.UNBREAKABLE)
|| (team != null && !team.getTeamConfig().resolveBoolean(TeamConfig.PLACEBLOCK)))) {
event.setCancelled(true);
War.war.badMsg(player, "build.denied.zone.place");
}
}
}

View File

@ -3,6 +3,9 @@ package com.tommytony.war.event;
import java.util.HashMap;
import java.util.List;
import com.tommytony.war.config.WarConfig;
import org.apache.commons.lang.Validate;
import org.bukkit.ChatColor;
import org.bukkit.Effect;
import org.bukkit.Location;
@ -42,6 +45,7 @@ import com.tommytony.war.utility.Direction;
import com.tommytony.war.utility.Loadout;
import com.tommytony.war.utility.LoadoutSelection;
import com.tommytony.war.volume.Volume;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.logging.Level;
@ -73,6 +77,34 @@ public class WarPlayerListener implements Listener {
}
}
@EventHandler(priority = EventPriority.LOW, ignoreCancelled = true)
public void onPlayerJoin(final PlayerJoinEvent event) {
String autojoinName = War.war.getWarConfig().getString(WarConfig.AUTOJOIN);
boolean autojoinEnabled = !autojoinName.isEmpty();
if (autojoinEnabled) { // Won't be able to find warzone if unset
Warzone autojoinWarzone = Warzone.getZoneByNameExact(autojoinName);
if (autojoinWarzone == null) {
War.war.getLogger().log(Level.WARNING, "Failed to find autojoin warzone ''{0}''.", new Object[] {autojoinName});
return;
}
if (autojoinWarzone.getWarzoneConfig().getBoolean(WarzoneConfig.DISABLED) || autojoinWarzone.isReinitializing()) {
War.war.badMsg(event.getPlayer(), "join.disabled");
event.getPlayer().teleport(autojoinWarzone.getTeleport());
} else if (!autojoinWarzone.getWarzoneConfig().getBoolean(WarzoneConfig.JOINMIDBATTLE) && autojoinWarzone.isEnoughPlayers()) {
War.war.badMsg(event.getPlayer(), "join.progress");
event.getPlayer().teleport(autojoinWarzone.getTeleport());
} else if (autojoinWarzone.isFull()) {
War.war.badMsg(event.getPlayer(), "join.full.all");
event.getPlayer().teleport(autojoinWarzone.getTeleport());
} else if (autojoinWarzone.isFull(event.getPlayer())) {
War.war.badMsg(event.getPlayer(), "join.permission.all");
event.getPlayer().teleport(autojoinWarzone.getTeleport());
} else { // Player will only ever be autoassigned to a team
autojoinWarzone.autoAssign(event.getPlayer());
}
}
}
@EventHandler
public void onPlayerDropItem(final PlayerDropItemEvent event) {
if (War.war.isLoaded()) {
@ -228,7 +260,7 @@ public class WarPlayerListener implements Listener {
// Whenever a player dies in the middle of conflict they will
// likely respawn still trying to use their items to attack
// another player.
player.playSound(player.getLocation(), Sound.ITEM_BREAK, 1, 0);
player.playSound(player.getLocation(), Sound.ENTITY_ITEM_BREAK, 1, 0);
}
if (zone != null && event.getAction() == Action.RIGHT_CLICK_BLOCK && event.getClickedBlock().getType() == Material.ENDER_CHEST && !zone.getWarzoneConfig().getBoolean(WarzoneConfig.ALLOWENDER)) {
@ -845,27 +877,30 @@ public class WarPlayerListener implements Listener {
@EventHandler(priority = EventPriority.HIGHEST)
public void onPlayerRespawn(PlayerRespawnEvent event) {
if (War.war.isLoaded()) {
// Anyone who died in warzones needs to go back there pronto!
for (Warzone zone : War.war.getWarzones()) {
if (zone.getReallyDeadFighters().contains(event.getPlayer().getName())) {
zone.getReallyDeadFighters().remove(event.getPlayer().getName());
for (Team team : zone.getTeams()) {
if (team.getPlayers().contains(event.getPlayer())) {
event.setRespawnLocation(team.getRandomSpawn());
zone.respawnPlayer(team, event.getPlayer());
break;
}
}
if (zone.hasPlayerState(event.getPlayer().getName())) {
// If not member of a team and zone has your state, then game ended while you were dead
War.war.log("Failed to restore game state to dead player.", Level.WARNING);
}
break;
}
Warzone playingZone = Warzone.getZoneByPlayerName(event.getPlayer().getName());
Warzone deadZone = Warzone.getZoneForDeadPlayer(event.getPlayer());
if (playingZone == null && deadZone != null) {
// Game ended while player was dead, so restore state
deadZone.getReallyDeadFighters().remove(event.getPlayer().getName());
if (deadZone.hasPlayerState(event.getPlayer().getName())) {
deadZone.restorePlayerState(event.getPlayer());
}
event.setRespawnLocation(deadZone.getEndTeleport(LeaveCause.DISCONNECT));
return;
} else if (playingZone == null) {
// Player not playing war
return;
} else if (deadZone == null) {
// Player is not a 'really' dead player, nothing to do here
return;
}
Team team = playingZone.getPlayerTeam(event.getPlayer().getName());
Validate.notNull(team, String.format(
"Failed to find a team for player %s in warzone %s on respawn.",
event.getPlayer().getName(), playingZone.getName()));
playingZone.getReallyDeadFighters().remove(event.getPlayer().getName());
event.setRespawnLocation(team.getRandomSpawn());
playingZone.respawnPlayer(team, event.getPlayer());
}
@EventHandler
@ -918,7 +953,7 @@ public class WarPlayerListener implements Listener {
// Prevent thieves from taking their bomb/wool/cake into a chest, etc.
if (zone.isThief(player.getName())) {
event.setCancelled(true);
player.playSound(player.getLocation(), Sound.FIZZ, 10, 10);
player.playSound(player.getLocation(), Sound.BLOCK_LAVA_EXTINGUISH, 10, 10);
} else // Magically give player a wool block when they click their helmet
if (event.getSlotType() == InventoryType.SlotType.ARMOR && event.getSlot() == 39
&& zone.getWarzoneConfig().getBoolean(WarzoneConfig.BLOCKHEADS)) {
@ -932,4 +967,17 @@ public class WarPlayerListener implements Listener {
public void purgeLatestPositions() {
this.latestLocations.clear();
}
@EventHandler
public void onBucketEmpty(PlayerBucketEmptyEvent event) {
Player player = (Player) event.getPlayer();
Warzone zone = Warzone.getZoneByPlayerName(player.getName());
if (zone == null) {
return;
}
if (zone.isImportantBlock(event.getBlockClicked())) {
event.setCancelled(true);
player.playSound(player.getLocation(), Sound.BLOCK_LAVA_EXTINGUISH, 10, 10);
}
}
}

View File

@ -23,9 +23,6 @@ public class LoadoutResetJob implements Runnable {
public void run() {
this.zone.equipPlayerLoadoutSelection(player, team, isFirstRespawn, isToggle);
// Stop fire here, since doing it in the same tick as death doesn't extinguish it
this.player.setFireTicks(0);
}
}

View File

@ -74,7 +74,7 @@ public class RestoreYmlWarzonesJob implements Runnable {
}
plugins.addPlotter(new PlotterEnabled("War")); // of course
metrics.start();
} catch (IOException ignored) {
} catch (Exception ignored) {
}
}
}

View File

@ -0,0 +1,51 @@
package com.tommytony.war.job;
import com.tommytony.war.War;
import org.bukkit.Location;
import org.bukkit.entity.Player;
import org.bukkit.event.player.PlayerTeleportEvent;
import org.bukkit.scheduler.BukkitRunnable;
public class TeleportPlayerJob extends BukkitRunnable {
private final Player player;
private final Location location;
private final Location originalLocation;
private final double originalHealth;
public TeleportPlayerJob(Player player, Location location) {
this.player = player;
this.location = location;
this.originalLocation = player.getLocation().clone();
this.originalHealth = player.getHealth();
}
@Override
public void run() {
if (!player.isOnline()) {
} else if (hasPlayerMoved()) {
War.war.badMsg(player, "command.tp.moved");
} else if (hasPlayerTakenDamage()) {
War.war.badMsg(player, "command.tp.damaged");
} else {
player.teleport(location, PlayerTeleportEvent.TeleportCause.COMMAND);
War.war.msg(player, "command.tp.success");
}
}
boolean hasPlayerMoved() {
final double MAX_MOVE_TOLERANCE = 1.5;
return distance3D(player.getLocation(), originalLocation) > MAX_MOVE_TOLERANCE;
}
boolean hasPlayerTakenDamage() {
final double MAX_DAMAGE_TOLERANCE = 2;
return Math.abs(originalHealth - player.getHealth()) > MAX_DAMAGE_TOLERANCE;
}
double distance3D(Location pos1, Location pos2) {
double distX = pos2.getX() - pos1.getX();
double distY = pos2.getY() - pos1.getY();
double distZ = pos2.getZ() - pos1.getZ();
return Math.sqrt(Math.pow(distX, 2) + Math.pow(distY, 2) + Math.pow(distZ, 2));
}
}

View File

@ -184,7 +184,9 @@ public class ZoneVolumeMapper {
// Skulls
if (modify instanceof Skull) {
String[] opts = query.getString("metadata").split("\n");
((Skull) modify).setOwner(opts[0]);
if (!opts[0].isEmpty()) {
((Skull) modify).setOwner(opts[0]);
}
((Skull) modify).setSkullType(SkullType.valueOf(opts[1]));
((Skull) modify).setRotation(BlockFace.valueOf(opts[2]));
modify.update(true, false);
@ -262,6 +264,7 @@ public class ZoneVolumeMapper {
public static void loadStructure(Volume volume, Connection databaseConnection) throws SQLException {
String prefix = String.format("structure_%d", volume.getName().hashCode() & Integer.MAX_VALUE);
World world = volume.getWorld();
Validate.notNull(world, String.format("Cannot find the warzone for %s", prefix));
Statement stmt = databaseConnection.createStatement();
ResultSet cornerQuery = stmt.executeQuery("SELECT * FROM " + prefix + "_corners");
cornerQuery.next();
@ -370,7 +373,7 @@ public class ZoneVolumeMapper {
dataStmt.setString(6, ((Jukebox) block.getState()).getPlaying().toString());
} else if (state instanceof Skull) {
dataStmt.setString(6, String.format("%s\n%s\n%s",
((Skull) block.getState()).getOwner(),
((Skull) block.getState()).hasOwner() ? ((Skull) block.getState()).getOwner() : "",
((Skull) block.getState()).getSkullType().toString(),
((Skull) block.getState()).getRotation().toString()));
} else if (state instanceof CommandBlock) {

View File

@ -282,8 +282,8 @@ public class WarHub {
// add redstone blocks and torches to gate if there are players in it (to highlight active zones)
zoneGate.getRelative(BlockFace.UP, 2).getRelative(left).setType(Material.REDSTONE_BLOCK);
zoneGate.getRelative(BlockFace.UP, 2).getRelative(left.getOppositeFace()).setType(Material.REDSTONE_BLOCK);
zoneGate.getRelative(BlockFace.UP, 2).getRelative(left).getRelative(back, 1).setType(Material.TORCH);
zoneGate.getRelative(BlockFace.UP, 2).getRelative(left.getOppositeFace()).getRelative(back, 1).setType(Material.TORCH);
zoneGate.getRelative(BlockFace.UP, 2).getRelative(left).getRelative(back, 1).setType(Material.AIR);
zoneGate.getRelative(BlockFace.UP, 2).getRelative(left.getOppositeFace()).getRelative(back, 1).setType(Material.AIR);
} else {
zoneGate.getRelative(BlockFace.UP, 2).getRelative(left).getRelative(back, 1).setType(Material.AIR);
zoneGate.getRelative(BlockFace.UP, 2).getRelative(left.getOppositeFace()).getRelative(back, 1).setType(Material.AIR);

View File

@ -6,8 +6,9 @@ import org.bukkit.entity.Player;
import org.bukkit.potion.PotionEffect;
public class PotionEffectHelper {
public static void restorePotionEffects(Player player, Collection<PotionEffect> potionEffects) {
public static void restorePotionEffects(Player player,
Collection<PotionEffect> potionEffects) {
clearPotionEffects(player);
for (PotionEffect effect : potionEffects) {
player.addPotionEffect(effect, true);
@ -15,9 +16,8 @@ public class PotionEffectHelper {
}
public static void clearPotionEffects(Player player) {
for(PotionEffect effect : player.getActivePotionEffects())
{
player.addPotionEffect(new PotionEffect(effect.getType(), 0, 0), true);
for (PotionEffect effect : player.getActivePotionEffects()) {
player.removePotionEffect(effect.getType());
}
}
}

View File

@ -9,6 +9,10 @@ build.denied.zone.place = You cannot place blocks in this warzone.
build.denied.zone.type = You cannot modify this type of block.
command.console = You can't do this if you are not in game.
command.disabled = You can only use War commands (e.g. /leave) while playing.
command.tp.init = Please wait for {0} seconds before teleportation. Movement or damage will cancel the timer.
command.tp.moved = Teleportation cancelled due to movement.
command.tp.damaged = Teleportation cancelled due to damage.
command.tp.success = You have been teleported. Thanks for your patience.
drop.bomb.broadcast = {0} dropped the {1} bomb!
drop.bomb.disabled = You can't drop items while stealing bomb. What are you doing?! Run for your enemy's spawn!
drop.cake.broadcast = {0} dropped the {1} cake!

View File

@ -0,0 +1,133 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Ma T8dr Tbny Hna
build.denied.outside = Bs T8dr Tbny Gwa WarZones
build.denied.teamblock = Ymknk F86 Ast3mal Blockat Fre8k l2lt8a6 Almouments
build.denied.zone.break = Blockat Warzone Ma Ttksr
build.denied.zone.multteam = A9ln 3ndk {0} Block
build.denied.zone.outside = Ma T8dr Tksr 3shan Ant Ma Tl3b
build.denied.zone.place = Ma T8dr T76 Blockat Fe WarZone
build.denied.zone.type = Ma T8dr T3dl 3la H4a Al No3
command.console = Ma T8dr Tswe H4a 3shank Mo Fe Al Game
command.disabled = Ma T8dr Tktb Alla (/Leave) w Ant Tl3b
command.tp.init = Alrja2 Ant9''ar {0} Thwany 8bl Ant8al. A4a Mshet Aw 9''rbk A7d By36l Ant8al.
command.tp.moved = Al Ant8al M36l 3shank Tmshy.
command.tp.damaged = Al Ant8al M36l 3shan Al 9''rb
command.tp.success = L8d Tm N8lk. Shkrn l 9brk
drop.bomb.broadcast = \u200e{0}\u200e 6a7t, \u200e{1}\u200e Al 8nblh!
drop.bomb.disabled = Ma T8dr Trmy Shy w Ant Ma54 8nblh. Wsh 8a3d Tswe?! Ahrb l Spawn Al3do!
drop.cake.broadcast = {0} 6a7t , {1} Al Cake!
drop.cake.disabled = Ma T8dr Trmy Shy w Ant Ma54 Al Cake. Wsh 8a3d Tswe?! Ahrb!
drop.flag.broadcast = {0} 6a7 , {1} Al 3lm!
drop.flag.disabled = Ma T8dr Trmy Items w Ant Ma54 Al 3lm. Wsh 8a3d Tswe?! Ahrb!
drop.item.border = ant mat8dr trmy items fe alzone
drop.item.disabled = Ma T8dr Trmy H4a Fe WarZone.
drop.item.spawn = Ant Ma T8dr Trmy w Ant Fe Spawn.
drop.team = Ant Ma T8dr Trmy {0} Blocks.
drop.wand = Ant Rmet Al Zone {0} Al 39a
join.aarequired = Al Warzone Y6lb Mnk D5ol Tl8a2y l Fre8\nAlrja2 Ad5l Ay Bwabh
join.broadcast = {0} D5l Team {1}
join.disabled = H4a Al WarZone M36l
join.full.all = Kl Al Teams Full
join.full.single = Fre8 {0} H4a Full.
join.inventorystored = .Al Inventory 78k Fe Al M5zn 7ta T6l3 /War Leave.
join.permission.all = Ma 3ndk 9la7yat l Ay Teams Fe H4e WarZone.
join.permission.single = Ma 3ndk 9la7yat Td5l Team {0}
join.progress = Ma T8dr Td5l Al7rb Bd2t Fe H4e Zone.
join.selfteam = mat8dr td5l alteam 78k
join.team404 = alteam 3''er mojod jrb aktb/ teams tshof 8a2mh alteams
leave.broadcast = {0} 6l3 mn alzone.
leave.inventoryrestore = 78ybtk tm astrja3ha
pvp.death.drown = {0} 3''r8
pvp.death.explosion = {0} tfjr
pvp.death.fall = {0}s86 wmat fj2h
pvp.death.fire = \u200e{0}\u200e a7tr8 llshwa2
pvp.death.other = {0} mat
pvp.ff.disabled = hjomk fashl! hdfk m3k fe alfre8
pvp.ff.enabled = alnyran al9de8h msh3''lh! alrja2 la to24e fre8k
pvp.kill.adjectives = ;;al8wy;al8atl;b5er;d8e8;alw7shy;6a8h
pvp.kill.bomb = \u200e{0}\u200eada ela \u200e{1}\u200e tfjer!
pvp.kill.format = {0}''s{1}{2}{3}{4}
pvp.kill.self = {0} ant7r
pvp.kill.verbs = An8tl;An8tl;An8tl;Antha;Abed;8tl;Ams7;Abed
pvp.kill.weapon.aim = Hdf
pvp.kill.weapon.bow = 8os
pvp.kill.weapon.hand = Yd
pvp.outside.permission = Mat8dr Thajm Ala3ben 5arj Alwarzones.
pvp.self.notplaying = Lazm Tkon Tl3b 3shan Thjm
pvp.self.respawn = Mat8dr Thjm W Ant Trsbn
pvp.self.spawn = Ma t8dr Thjm W Ant Fe Spawn
pvp.target.notplaying = Hdfk Ma Yl3b Fe Alwarzone
pvp.target.otherzone = Hdfk Y3b Fe Warzone Thany.
pvp.target.respawn = Hdfk 7alya Yrsbn!
pvp.target.spawn = Hdfk Fe Alspawn!
sign.lobby.autoassign = Warzone\u00a0\n{0}\u00a0\nD5ol Tl8a2y -\u00a0\nAssign Gate.
sign.lobby.pick = Warzone\u00a0\n{0}\u00a0\n\u00a0
sign.lobby.warhub = \n\n\nTo War hub\n
sign.team.limited = Fre8 \u200e{0}\u200e\n\u200e{1}\u200e/\u200e{2}\u200e La3ben\n\u200e{3}\u200e/\u200e{4}\u200e N8a6\n\u200e{5}\u200e 7yah
sign.team.unlimited = fre8 {0}\u00a0\n{1}/{2} la3ben\n{3}/{4} n8a6\n7yah la nha2yh
sign.warhub = War hub\u00a0\n(/warhub)\u00a0\na5tar al3bh
sign.warzone = Warzone\u00a0\n{0}\u00a0\n{1}/{2} la3ben\n{3} afr8h
team.chat.enable = Chat Al Fre8 Msh3''l. Byst8bl Rsayl Team 78k Bs.
team.chat.disable = Chat Al Fre8 M36l
use.anvil = mat8dr tst3ml anvil fe h4a alwarzone!
use.enchant = ma t8dr tst3ml 6awlh alt6wer fe h4a alwarzone!
use.ender = mat8dr tst3ml enderchst w ant tl3b fe warzone!
use.item.spawn = mat8dr tst3ml items w ant fe spawn
use.xpkillmeter = h4a al xpkillmeter ymkn a5tyar tsh3''elh
wand.toofar = hdf alblockh b3ed jda.
war.notadmin = mat8dr tswe h4a e4a ant mo admin fe war (permission war.admin).
war.notzm = mat8dr tswe h4a e4a ant mo warzone maker ( permssion war.zonemaker).
war.prefix = War>
war.title = War
warhub.none = mafyh warhub fe h4a alserver. jrb /zone aw /zone.
warhub.permission = ma3ndk 9la7yh al2nt8al ela war hub.
warhub.teleport = ahla bk fe WarHub. a5tr l3btk
zone.airstrike = {0} d3a fy 9''rbh jwyh !
zone.battle.end = alm3krh antht. fre8 {0} 5sr: {1} mat w lm ykn 7yah trkt lhm
zone.battle.newscores = n8a6 jdedh - {0}
zone.battle.next = al7rb antht . a3adh alwarzone {0} ...
zone.battle.reset = stbda alm3rh aljdedh 8rabn. a3adh alwarzone...
zone.battle.resetprogress = al23adh fe t8dm: {0}%,{1}thwany...
zone.battle.resetcomplete = Al WarZone Bt3ed B3d {0} Thwany. Mbarat Gdedh Btbd2.
zone.bomb.broadcast = \u200e{0}\u200e fjr bdayh fre8 {1}. fre8 {2} n86h wa7dh.
zone.cake.broadcast = \u200e{0}\u200e cake astwlt \u200e{1}\u200e. fre8 \u200e{2}\u200e n86h wa7dh w 7yah jdedh
zone.flagcapture.broadcast = \u200e{0}\u200e fjr bdayh fre8 {1}. fre8 {2} n86h wa7dh.
zone.flagreturn.deadlock = mat8dr tstwle 3lm al3do 7ta ytm arja3 3lm fre8k
zone.flagreturn.flag = yjb an tstwle 3la 3lm 3dok ela 3lm fre8k.
zone.flagreturn.spawn = yjb 3lek an tstwle 3la 3lm 3dok ela bdayh fre8k
zone.leavenotice = ast3ml /war leave 3shan t6l3 mn alzone
zone.lifepool.empty = 7yat alfre8 \u200e{0}\u200e 5l9t . moth w7dh w y5sron al7rb
zone.loadout.equip = mjhz \u200e{0}\u200e loadout ( tsll lld5ol )
zone.loadout.reenter = mat8dr t3''er alloadout b3d 5rojk mn albdayh.
zone.monument.badblock = yjb 3lek alt8a6 al monument m3 block al9of 78 fre8k\n54 wa7d mn bdayh fre8k
zone.monument.capture = Monument {0} tm alt8a6ha mn alfre8 {1}.
zone.monument.lose = fre8 \u200e{0}\u200e f8d alsy6rh 3la monument {1}
zone.monument.voodoo = ant tr89 tr9''e al monument''''s voodoo. ant ksbt {0} 8lob!
zone.noteamnotice = mat8dr tkon da5l alwarzone bdon fre8.
zone.score.board404 = alwarzone mo mf3l alscoreboard.
zone.score.empty = ant mat8dr ta54 score 7ta yd5l a7d alfre8 althany.
zone.spawn.minplayers = mat8dr ttrk alspawn 7ta hna al7d al2dna mn {0} ala3ben ma y8l 3n {1} fre8.
zone.spawn.timer = mat8dr ttrk alspawn 7ta {0} thanyh b3d alrespawn!
zone.steal.bomb.broadcast = {0} ldeh 8nblh {1}.
zone.steal.bomb.notice = ldyk 8nblh {0}. t9l ela spawn alfre8 althany lln8a6 . la tnlms mn a7d wla ant btnfjr!
zone.steal.bomb.prevent = mn3 {0} mn alw9wl ela alspawn 78k m3 al8nblh!
zone.steal.cake.broadcast = {0} ldyh cake {1}.
zone.steal.cake.notice = ldyk cake {0}.aw9l lfre8k lln8a6 wtjded 7yatk.
zone.steal.cake.prevent = mn3 {0} mn alw9l ela alspawn m3 alcake!
zone.steal.flag.broadcast = {0} sr8 3lm fre8 {1}.
zone.steal.flag.empty = mat8dr tsr8 3lm alfre8 {0} l2n mafy a7d da5l alfre8.
zone.steal.flag.notice = ldyk 3lm alfre8 {0} . aw9l llspawn fre8k aw al3lm 3shan tlt86h!
zone.steal.flag.prevent = mn3 {0} mn alw9l ela spawn alfre8 {1} aw al3lm
zone.stealextra.bomb = ant t8dr bs tsr8 8nblh w7dh fe w8t wa7d!
zone.stealextra.cake = ant t8dr bs tsr8 cake wa7d fe w8t wa7d!
zone.stealextra.flag = ant bs t8dr tsr8 3lm wa7d fe w8t wa7d!
zone.stealextra.other = ant bs t8dr tsr8 shy wa7d fe w8t wa7d!
zone.teaminfo.format = {0}: {1} n8a6, {2}\\{3} 7yah mtb8yh. {4}
zone.teaminfo.none = La Shy2
zone.teaminfo.prefix = Al2fr8h:
zone.teleport = Ahln Bk Fe WarZone {0}.
zone.warp.permission = Ma 3ndk 9la7yat L Ant8al l WarZone
zone.zone404 = WarZone Mo Mwgodh.
zone.zoneinfo.format = {0}: {1} Afr8h, {2} L3ebh
zone.zoneinfo.prefix = Warzones:
zone.zoneinfo.teleport = Ast3ml /Zone <Asm-Zone> 3shan Tro7 l WarZone

View File

@ -0,0 +1,19 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Zde nem\u016f\u017ee\u0161 stav\u011bt.
build.denied.outside = M\u016f\u017ee\u0161 stav\u011bt pouze v bitevn\u00edch z\u00f3n\u00e1ch.
build.denied.teamblock = M\u016f\u017ee\u0161 pou\u017e\u00edvat pouze bloky tv\u00e9ho t\u00fdmu k zabr\u00e1n\u00ed monument\u016f.
build.denied.zone.break = Bloky v bitevn\u00ed z\u00f3n\u011b jsou nezni\u010diteln\u00e9!
build.denied.zone.multteam = Blok {0} u\u017e m\u00e1\u0161.
build.denied.zone.outside = Nem\u016f\u017ee\u0161 zni\u010dit bitevn\u00ed z\u00f3nu,ve kter\u00e9 nehraje\u0161.
build.denied.zone.place = Nem\u016f\u017ee\u0161 pokl\u00e1dat bloky v t\u00e9to bitevn\u00ed z\u00f3n\u011b.
build.denied.zone.type = Nem\u016f\u017ee\u0161 upravovat tento typ blok\u016f!
command.console = Toto nem\u016f\u017ee\u0161 pokud nejsi ve h\u0159e.
command.disabled = M\u016f\u017ee\u0161 pou\u017e\u00edvat pouze War p\u0159\u00edkazy (nap\u0159. /leave) kdy\u017e hraje\u0161.
drop.bomb.broadcast = {0} ztratil {1} bombu!
drop.bomb.disabled = Nem\u016f\u017ee\u0161 pokl\u00e1dat p\u0159edm\u011bty kdy\u017e krade\u0161 bombu! Co d\u011bl\u00e1\u0161?! B\u011b\u017e na nep\u0159\u00e1telsk\u00fd spawn!
drop.cake.broadcast = {0} ztratil {1} dort!
drop.cake.disabled = Nem\u016f\u017ee\u0161 pokl\u00e1dat p\u0159edm\u011bty kdy\u017e krade\u0161 dort! Co d\u011bl\u00e1\u0161?! B\u011b\u017e!
drop.flag.broadcast = {0} ztratil {1} vlajku!
drop.flag.disabled = Nem\u016f\u017ee\u0161 pokl\u00e1dat p\u0159edm\u011bty kdy\u017e krade\u0161 vlajku. Co d\u011bl\u00e1\u0161?! B\u011b\u017e!
drop.item.border = Nem\u016f\u017ee\u0161 pokl\u00e1dat p\u0159edm\u011bty bl\u00edzko hranice z\u00f3ny.
drop.item.disabled = Nem\u016f\u017ee\u0161 pokl\u00e1dat p\u0159edm\u011bty v t\u00e9to bitevn\u00ed z\u00f3n\u011b.

View File

@ -0,0 +1,133 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Du kan ikke bygge her.
build.denied.outside = Du kan kun bygge inde i krigszoner.
build.denied.teamblock = Du kan kun bruge dit holds blokke til at overtage monumenter.
build.denied.zone.break = Blokkenede i denne krigszone er ubrydelige!
build.denied.zone.multteam = You har allerede en {0} blok.
build.denied.zone.outside = Du kan ikke \u00f8del\u00e6gge en krigszone du ikke spiller i.
build.denied.zone.place = Du kan ikke placere bloks i denne krigszone.
build.denied.zone.type = Du kan ikke \u00e6ndre denne type blok.
command.console = Du kan ikke g\u00f8re dette hvis du ikke er inde i et spil.
command.disabled = Du kan kun bruge War kommandoer (f.eks. /leave) n\u00e5r du spiller.
command.tp.init = V\u00e6r venlig at vente {0} sekunder f\u00f8r teleportation. Bev\u00e6gelse eller skade vil afbryde timeren.
command.tp.moved = Teleportation afbrudt pga. bev\u00e6gelse.
command.tp.damaged = Teleportation afbrudt pga. skade.
command.tp.success = Du er blevet teleporteret. Tak for din t\u00e5lmodighed.
drop.bomb.broadcast = {0} tabte den {1} bombe!
drop.bomb.disabled = Du kan ikke smide ting n\u00e5r du er ved at stj\u00e6le en bombe. Hvad laver du?! L\u00f8b mod din fjendes spawn!
drop.cake.broadcast = {0} tabte den {1} kage!
drop.cake.disabled = Du kan ikke smide ting n\u00e5r du er ved at stj\u00e6le en kage. Hvad laver du?! L\u00f8b!
drop.flag.broadcast = {0} tabte den {1} flag!
drop.flag.disabled = Du kan ikke smide ting n\u00e5r du er ved at stj\u00e6le et flag. Hvad laver du?! L\u00f8b!
drop.item.border = Du kan ikke smide ting n\u00e6r zone gr\u00e6nsen.
drop.item.disabled = Du kan ikke smide ting i denne krigszone.
drop.item.spawn = Du kan ikke smide ting mens du stadig er i spawn.
drop.team = Du kan ikke smide {0} blokke.
drop.wand = Du kan tabte zone {0} stav.
join.aarequired = Denne krigszone kr\u00e6ver at du automatisk bliver tildelt et hold.\nV\u00e6r venlig og g\u00e5 ind i autotildelings indgangen istedet.
join.broadcast = {0} sluttede sig til hold {1}.
join.disabled = Denne krigszone er deaktiveret.
join.full.all = Alle hold er fulde.
join.full.single = Hold {0} er fuld.
join.inventorystored = Din beholdning er i et lager indtil du forlader spillet med /war leave.
join.permission.all = Du har ikke tilladelse til nogen af de tilg\u00e6ngelige hold i denne krigszone.
join.permission.single = Du har ikke tilladelse til at tilslutte dig til team {0}.
join.progress = Du kan ikke tilslutte dig en kamp der er i gang i denne zone.
join.selfteam = Du kan ikke tilslutte dig dit eget hold.
join.team404 = Det hold blev ikke fundet. Pr\u00f8v at bruge /teams for en liste.
leave.broadcast = {0} forladte zonen.
leave.inventoryrestore = Din beholdning er i gang med at blive genoprettet.
pvp.death.drown = {0} druknede.
pvp.death.explosion = {0} eksploderede.
pvp.death.fall = {0} faldt til en alt for tidlige d\u00f8d.
pvp.death.fire = {0} br\u00e6ndte til aske.
pvp.death.other = {0} d\u00f8de.
pvp.ff.disabled = Dit angreb missede! Dit m\u00e5l er p\u00e5 dit eget hold.
pvp.ff.enabled = Egenbeskydning er aktiveret! V\u00e6r venlig ikke at dr\u00e6be dine holdkammerater.
pvp.kill.adjectives = ;;m\u00e6gtige;d\u00f8dbringende;kvalitets;pr\u00e6cise;brutale;kraftfulde
pvp.kill.bomb = {0} fik {1} til at springe i luften!
pvp.kill.format = {0}s {1} {2} {3} {4}
pvp.kill.self = {0} begik selvmord
pvp.kill.verbs = dr\u00e6bte;aflivede;dr\u00e6bte;f\u00e6rdigjorde;tilintetgjorde,myrdede;udslettede;udryddede
pvp.kill.weapon.aim = sigt
pvp.kill.weapon.bow = bue
pvp.kill.weapon.hand = h\u00e5nd
pvp.outside.permission = Du kan ikke angribe spillere udenfor kriszoner.
pvp.self.notplaying = Du bliver n\u00f8d til at spille inde i krigszonen for at kunne angribe.
pvp.self.respawn = Du kan ikke angribe spillere mens du genopst\u00e5r!
pvp.self.spawn = Du kan ikke angribe mens du stadig er i spawn!
pvp.target.notplaying = Dit m\u00e5l spiller ikke i krigszonen.
pvp.target.otherzone = Dit m\u00e5l spiller i en anden krigszone.
pvp.target.respawn = Dit m\u00e5l er i gang med at genopst\u00e5!
pvp.target.spawn = Dit m\u00e5l er stadig i spawn!
sign.lobby.autoassign = Krigszone\n{0}\nG\u00e5 ind i til-\ndelingsporten.
sign.lobby.pick = Krigszone\n{0}\n\nV\u00e6lg dit hold.
sign.lobby.warhub = \nTil War samlingspunkt\n
sign.team.limited = Hold {0}\n{1}/{2} spillere\n{3}/{4} pts\n{5} liv tilbage
sign.team.unlimited = Hold {0}\n{1}/{2} spillere\n{3}/{4} pts\nuendelig liv
sign.warhub = War samlingspunkt\n(/warhub)\nV\u00e6lg din\nkamp!
sign.warzone = Krigszone\n{0}\n{1}/{2} spillere\n{3} hold
team.chat.enable = Hold chat sl\u00e5et til. Dine normale chat beskeder vil kun blive modtaget af folk fra dit hold.
team.chat.disable = Hold chat sl\u00e5et fra.
use.anvil = Du kan ikke bruge ambolte i denne krigszone!
use.enchant = Du kan ikke bruge fortrylleses borde i denne krigszone!
use.ender = Du kan ikke bruge ender kister n\u00e5r du spiller i en krigszone!
use.item.spawn = Du kan ikke bruge ting mens du stadig er i spawn.
use.xpkillmeter = Dette skyldes, at xpkillmetereret punktet er aktiveret.
wand.toofar = Din valgte blok er for langt v\u00e6k.
war.notadmin = Du kan g\u00f8re dette hvis du ikke er en War admin (permission war.admin).
war.notzm = Du kan ikke g\u00f8re dette hvis du ikke er en krigszone bygger (permission war.zonemaker).
war.prefix = War>
war.title = War
warhub.none = Intet war samlingssted p\u00e5 denne War server. Pr\u00f8v /zones og /zone.
warhub.permission = Du har ikke tilladelse til at teleportere til War samlingstedet.
warhub.teleport = Velkommen til War samlingsstedet. V\u00e6lg din kamp!
zone.airstrike = {0} kaldte ind et luftangreb!
zone.battle.end = Kampen er ovre. Hold {0} tabte: {1} d\u00f8de og der var ikke flere live tilbage i deres livs p\u00f8l.
zone.battle.newscores = Nye scorer - {0}
zone.battle.next = Kampen blev afbrudt. Nulstiller krigszone {0}...
zone.battle.reset = En ny kamp vil begynde snart. Nulstiller krigszone...
zone.battle.resetprogress = Nulstillings fremskridt: {0}%, {1} sekunder...
zone.battle.resetcomplete = Krigszone nulstillet p\u00e5 {0} sekunder. En ny kamp begynder.
zone.bomb.broadcast = {0} spr\u00e6ngte hold {1}s spawn i luften. Hold {2} scorer \u00e9t point.
zone.cake.broadcast = {0} erobrede kage {1}. Hold {2} scorer \u00e9t point og f\u00e5r en fuld livs p\u00f8l.
zone.flagcapture.broadcast = {0} erobrede hold {1}s flag. Hold {2} scorer \u00e9t point.
zone.flagreturn.deadlock = Du kan ikke erobre fjendens flag f\u00f8r dit eget flag er returneret.
zone.flagreturn.flag = Du bliver n\u00f8d til at erobre fjendes flag p\u00e5 dit holds flag.
zone.flagreturn.spawn = Du bliver n\u00f8d til at erobre fjendes flag p\u00e5 dit holds spawn.
zone.leavenotice = Brug /war leave til at forlade zonen.
zone.lifepool.empty = Hold {0}s livs p\u00f8l et tom. \u00c9t til d\u00f8dsfald og de taber kampen!
zone.loadout.equip = Rustet med {0} udstyret (snig for at skifte).
zone.loadout.reenter = Kan ikke \u00e6ndre udstyr efter at have forladt spawn.
zone.monument.badblock = Du bliver n\u00f8d til at erobre et monument med en blok af dit holds uld farve. F\u00e5 en fra dit holds spawn.
zone.monument.capture = Monument {0} blev erobret af hold {1}.
zone.monument.lose = Hold {0} tabte kontrollen af monument {1}.
zone.monument.voodoo = Din dans tilfredsstiller monuments voodoo. Du f\u00e5r {0} hjerte(r)!
zone.noteamnotice = Du kan ikke v\u00e6re inde i en krigszone uden et hold.
zone.score.board404 = Denne krigszone har ikke en resultattavle.
zone.score.empty = Du kan ikke score indtil mindst \u00e9n spiller tilslutter sig et andet hold.
zone.spawn.minplayers = Du kan ikke forlade spawn indtil der er et minimum af {0} spiller(e) p\u00e5 mindst {1} hold.
zone.spawn.timer = Du kan ikke forlade spawn for {0} sekund(er) efter genopstandelse!
zone.steal.bomb.broadcast = {0} har bombe {1}.
zone.steal.bomb.notice = Du har bombe {0}. N\u00e5 et andet holds spawn for at score. Lad v\u00e6re med at r\u00f8re andre ellers eksplodere du!
zone.steal.bomb.prevent = Forhindre {0} i at n\u00e5 dit spawn med bomben!
zone.steal.cake.broadcast = {0} har kage {1}.
zone.steal.cake.notice = You har kage {0}. N\u00e5 dit holds spawn for at score og genopfylde din livs p\u00f8l.
zone.steal.cake.prevent = Forhindre {0} i at n\u00e5 sit spawn med kagen!
zone.steal.flag.broadcast = {0} stjal hold {1}s flag.
zone.steal.flag.empty = Du kan ikke stj\u00e6le hold {0}s flag siden ingen spillere er p\u00e5 det hold.
zone.steal.flag.notice = Du har hold {0}s flag. N\u00e5 dit holds spawn eller flag for at erobre det!
zone.steal.flag.prevent = Forhindre {0} i at n\u00e5 hold{1}s spawn eller flag.
zone.stealextra.bomb = Du kan kun stj\u00e6le \u00e9n bombe af gangen!
zone.stealextra.cake = Du kan kun stj\u00e6le \u00e9n kage af gangen!
zone.stealextra.flag = Du kan kun stj\u00e6le \u00e9t flag af gangen!
zone.stealextra.other = Du kan kun stj\u00e6le \u00e9n ting af gangen!
zone.teaminfo.format = {0}: {1} point, {2}/{3} liv tilbage. {4}
zone.teaminfo.none = intet
zone.teaminfo.prefix = Hold:
zone.teleport = Velkommen til krigszone {0}.
zone.warp.permission = Du har ikke tilladelse til at teleportere til krigszonen.
zone.zone404 = Krigszonen blev ikke fundet.
zone.zoneinfo.format = {0}: {1} hold, {2} spillere
zone.zoneinfo.prefix = Krigszoner:
zone.zoneinfo.teleport = Brug /zone <zone-navn> for at teleportere til en krigszone.

View File

@ -1,14 +1,18 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Du kannst hier nicht bauen.
build.denied.outside = Du kannst nur inerhalb einer Warzone bauen.
build.denied.teamblock = Du kannst nur dein Team-Block nehmen, um ein Monument einzunehmen.
build.denied.outside = Du kannst nur innerhalb einer Warzone Arena bauen.
build.denied.teamblock = Du kannst nur dein Team-Block nehmen, um ein Monument zu \u00fcbernehmen.
build.denied.zone.break = Die Bl\u00f6cke in dieser Warzone sind unzerst\u00f6rbar.
build.denied.zone.multteam = Du hast schon einen {0} Block.
build.denied.zone.outside = Du kannst nichts in einer Warzone zerst\u00f6ren,wenn du dich nicht in ihr befindest.
build.denied.zone.outside = Du kannst nichts in einer Warzone zerst\u00f6ren, wenn du dich nicht in ihr befindest.
build.denied.zone.place = Du kannst in dieser Warzone keine Bl\u00f6cke setzen.
build.denied.zone.type = Du kannst keine Bl\u00f6cke dieses Typs zerst\u00f6ren.
command.console = Dieser Command ist leider nicht von der Konsole aus nutzbar
command.disabled = Du kannst nur War Kommandos (Z.Bsp. /leave) ausf\u00fchren, w\u00e4hrend du spielst!
command.disabled = Du kannst nur War Kommandos (bsp /leave) ausf\u00fchren, w\u00e4hrend du spielst!
command.tp.init = Bitte warte {0} Sekunden. Schaden oder Bewegung bricht die Teleportierung ab.
command.tp.moved = Teleportation wegen Bewegung abgebrochen.
command.tp.damaged = Bewegung wegen Schaden abgebrochen
command.tp.success = Du wirst teleportiert. Vielen Dank f\u00fcr deine Geduld.
drop.bomb.broadcast = {0} hat die {1} Bombe fallen gelassen.
drop.bomb.disabled = Du kannst keine Items droppen w\u00e4hrend du die Bombe stielst.\nWas machst du?! Renne zu dem Spawn von deinen Feinden!
drop.cake.broadcast = {0} hat den {1} Kuchen fallen gelassen.

View File

@ -1,14 +1,18 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = No puedes construir aqui!
build.denied.outside = Solo puedes contruir en la arena.
build.denied.location = No puedes construir aqui.
build.denied.outside = Solo puedes construir dentro de las arenas.
build.denied.teamblock = Solo puedes usar los bloques de tu equipo para capturar los monumentos!
build.denied.zone.break = Estos bloques tienen las propiedades de la Bedrock!
build.denied.zone.multteam = Tienes {0} bloques
build.denied.zone.break = No puedes romper bloques en esta arena.
build.denied.zone.multteam = Ya tienes {0} bloques
build.denied.zone.outside = No puedes destruir arenas en las que no estas jugando.
build.denied.zone.place = No puedes modificar estos bloques!
build.denied.zone.place = No puedes poner bloques dentro de esta arena.
build.denied.zone.type = No puedes modificar estos bloques!
command.console = No puedes usar este comando si no estas en partida.
command.disabled = Solo puedes usar comandos de guerra si estas jugando (Ej: /leave).
command.tp.init = Por favor espera {0} segundos antes de la teletransportaci\u00f3n. Cualquier movimiento o da\u00f1o cancelar\u00e1 la cuenta atr\u00e1s
command.tp.moved = Teletransportaci\u00f3n cancelada debido a que te has movido.
command.tp.damaged = Teletransportaci\u00f3n cancelada debido a que has sido atacado.
command.tp.success = Te has teletransportado. Gracias por tu paciencia.
drop.bomb.broadcast = {0} ha soltado la {1} bomba!
drop.bomb.disabled = No puedes tirar objetos mientras tienes la bomba!
drop.cake.broadcast = {0} ha soltado la {1} tarta!
@ -73,12 +77,12 @@ use.xpkillmeter = La opcion xpkillmeter esta habilitado.
wand.toofar = Tu bloque objetivo esta muy lejos.
war.notadmin = No puedes hacer esto si no eres un War Admin (permiso: war.admin).
war.notzm = No puedes hacer esto si no eres un editor de la zona de batalla (permiso: war.zonemaker).
war.prefix = PvP>
war.title = PvP
warhub.none = No hay war central en este servidor War. Fijate las zonas con /zones o /zone.
warhub.permission = No tienes permisos para teletransportarte para el War central.
warhub.teleport = Bienvenido a la War central. Elige tu batalla!
zone.airstrike = {0} fue llamada en un ataque aereo!
war.prefix = Guerra>
war.title = Guerra
warhub.none = No hay un War Hub en este servidor War. Fijate las zonas con /zones o /zone.
warhub.permission = No tienes permisos para teletransportarte hacia el War Hub..
warhub.teleport = Bienvenido al War Hub. Elige tu batalla!
zone.airstrike = {0} ha llamado un ataque aereo!
zone.battle.end = La batalla se ha acabado. El equipo {0} perdio: {1} murio y no quedan mas vidas restantes en su equipo.
zone.battle.newscores = Nuevas puntuaciones - {0}
zone.battle.next = La batalla ha sido interrumpida. Reiniciando zona de batalla {0}.

View File

@ -0,0 +1,133 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Sa ei saa ehitada siin.
build.denied.outside = Sa saad ehitada ainult s\u00f5jatsooni sees.
build.denied.teamblock = Sa saad kasutada ainult oma tiimi plokke, et p\u00fc\u00fcda monumente.
build.denied.zone.break = Plokid selles s\u00f5jatsoonis on purunematud!
build.denied.zone.multteam = Sul juba on {0} plokk.
build.denied.zone.outside = Sa ei saa l\u00f5hkuda s\u00f5jatsoonis kuna sa ei m\u00e4ngi selles.
build.denied.zone.place = Sa ei saa asetada plokke selles s\u00f5jatsoonis.
build.denied.zone.type = Sa ei saa muuta seda t\u00fc\u00fcpi plokki.
command.console = Sa ei saa teha seda kui sa pole m\u00e4ngus.
command.disabled = Sa saad kasutada ainult War k\u00e4sklusi (Nt /leave) kui sa m\u00e4ngid.
command.tp.init = Palun oota {0} sekundit ennem teleporteerumist. Liikumine v\u00f5i kahjustuse saamine peatab taimeri.
command.tp.moved = Teleporteertumine peatati liikumise t\u00f5ttu.
command.tp.damaged = Teleporteerumine peatati kahjustuse saamise t\u00f5ttu.
command.tp.success = Sa oled teleporteeritud. T\u00e4nan sinu kannatlikkuse eest.
drop.bomb.broadcast = {0} kukutas {1} pommi!
drop.bomb.disabled = Sa ei saa kukutada esemeid kui sa varastasid pommi. Mida sa teed?! Jookse oma vastase baasi!
drop.cake.broadcast = {0} kukutas {1} koogi!
drop.cake.disabled = Sa ei saa kukutada esemeid kui varastasid koogi. Mida sa teed?! Jookse!
drop.flag.broadcast = {0} kukutas {1} lipu!
drop.flag.disabled = Sa ei saa kukutada esemeid kui varastasid lipu. Mida sa teed?! Jookse!
drop.item.border = Sa ei saa kukutada esemeid tsooni piiri l\u00e4hedal.
drop.item.disabled = Sa ei saa kukutada esemeid selles s\u00f5jatsoonis.
drop.item.spawn = Sa ei saa kukutada esemeid kui sa oled veel alguspunktis.
drop.team = Sa ei saa kukutada {0} plokki.
drop.wand = Sa kukutasid tsooni {0} v\u00f5lukepi.
join.aarequired = See s\u00f5jatsoon n\u00f5uab, et sind saadetaks automaatselt meeskonda.\nPalun sisene automaatse suunaja v\u00e4ravasse.
join.broadcast = {0} liitus tiimiga {1}.
join.disabled = See s\u00f5jatsoon on keelatud.
join.full.all = K\u00f5ik tiimid on t\u00e4is.
join.full.single = Tiim {0} on t\u00e4is.
join.inventorystored = Sinu seljakott s\u00e4ilitati kuni sa lahkud /war leave.
join.permission.all = Sul ei ole \u00f5iguseid \u00fchelegi saadaval olevale tiimile selles s\u00f5jatsoonis.
join.permission.single = Sul ei ole \u00f5igusi, et liituda {0} tiimiga.
join.progress = Sa ei saa liituda kui s\u00f5da on pooleli.
join.selfteam = Sa ei saa liituda oma enda tiimiga.
join.team404 = Seda tiimi ei leitud. Proovi kasutada /teams ,et saada kogu nimekiri.
leave.broadcast = {0} lahkus tsoonist.
leave.inventoryrestore = Sinu seljakott taastati.
pvp.death.drown = {0} uppus
pvp.death.explosion = {0} plahvatas
pvp.death.fall = {0} kukkus surnuks
pvp.death.fire = {0} p\u00f5les \u00e4ra
pvp.death.other = {0} suri
pvp.ff.disabled = Sinu r\u00fcnnak kadus! Sihtm\u00e4rk on sinu tiimis.
pvp.ff.enabled = S\u00f5bra tapmine on lubatud! Palun, \u00e4ra tapa oma tiimi liikmeid.
pvp.kill.adjectives = ;;v\u00e4gev;surmav;korras;t\u00e4pne;j\u00f5hker;v\u00f5imas
pvp.kill.bomb = {0} tegi {1} plahvatuse.
pvp.kill.format = {0} {1} {2} {3} {4}
pvp.kill.self = {0} tegi enesetapu
pvp.kill.verbs = tapetud;tapetud;tapetud;l\u00f5petatud;h\u00e4vitatud;m\u00f5rvatud;h\u00e4vitatud;h\u00e4vitatud
pvp.kill.weapon.aim = siht
pvp.kill.weapon.bow = vibu
pvp.kill.weapon.hand = k\u00e4si
pvp.outside.permission = Sa ei saa r\u00fcnnata m\u00e4ngijaid v\u00e4ljaspool s\u00f5jatsooni.
pvp.self.notplaying = Sa pead m\u00e4ngima s\u00f5jatsoonisl, et r\u00fcnnata.
pvp.self.respawn = Sa ei saa r\u00fcnnata taass\u00fcndides!
pvp.self.spawn = Sa ei saa r\u00fcnnata kui oled endiselt alguspunktis!
pvp.target.notplaying = Sinu vastane ei m\u00e4ngi s\u00f5jatsoonis.
pvp.target.otherzone = Sinu vastane m\u00e4ngib teises s\u00f5jatsoonis.
pvp.target.respawn = Sinu vastane taass\u00fcnnib hetkel!
pvp.target.spawn = Sinu vastane on endiselt alguspunktis!
sign.lobby.autoassign = S\u00f5jatsoon\n{0}\nSisene autom.\nv\u00e4ravasse
sign.lobby.pick = S\u00f5jatsoon\n{0}\n\nVali tiim
sign.lobby.warhub = \nWar alguspunkt\n
sign.team.limited = Tiim {0}\n{1}/{2} m\u00e4ngijat\n{3}/{4} punkti\n{5} elu j\u00e4rel
sign.team.unlimited = Tiim {0}\n{1}/{2} m\u00e4ngijat\n{3}/{4} punkti\nL\u00f5pmatult elusi
sign.warhub = War alguspunkt\n(warhub)\nVali enda\ns\u00f5da!
sign.warzone = S\u00f5jatsoon\n{0}\n{1}/{2} m\u00e4ngijat\n{3} tiimi
team.chat.enable = Tiimi jutukas l\u00fclitati sisse. Sinu regulaarsed jutuka s\u00f5numeid n\u00e4eb ainult sinu tiim.
team.chat.disable = Tiimi jutukas l\u00fclitati v\u00e4lja.
use.anvil = Sa ei saa kasutada alaseid sellel s\u00f5jatsoonil!
use.enchant = Sa ei saa kasutada loitsumislauda sellel s\u00f5jatsoonil!
use.ender = Sa ei saa kasutada m\u00e4ngimise ajal l\u00f5pukirstu s\u00f5jatsoonis!
use.item.spawn = Sa ei saa kasutada esemeid kui oled alguspunktis.
use.xpkillmeter = See on seet\u00f5ttu, et kogemustasemete surmaindikaatori valik on lubatud.
wand.toofar = Sinu vastase plokk on liiga kaugel.
war.notadmin = Sa ei saa teha seda kui sa ei ole War administraator (\u00f5igus war.admin).
war.notzm = Sa ei saa teha seda kui sa ei ole s\u00f5jatsooni tegija (\u00f5igus war.zonemaker)
war.prefix = War>
war.title = War
warhub.none = Puuduvad War alguspunktid serveris. Proovi /zones ja /zone.
warhub.permission = Sul puuduvad \u00f5igused teleporteerumiseks War alguspuntki.
warhub.teleport = Tere tulemast War alguspunkti. Vali enda tiim!
zone.airstrike = {0} kutsus \u00f5hur\u00fcnnaku!
zone.battle.end = S\u00f5da on l\u00e4bi. Tiim {0} kaotas: {1} suri ja tema tiimil polnud enam elusi.
zone.battle.newscores = Uued skoorid - {0}
zone.battle.next = S\u00f5da on katkestatud. Taastatakse s\u00f5jatsoon {0}...
zone.battle.reset = Uus s\u00f5da algab varsti. Taastatakse s\u00f5jatsooni...
zone.battle.resetprogress = Taastamine k\u00e4ib: {0}%, {1} sekundit...
zone.battle.resetcomplete = Warzone l\u00e4hestatakse {0} sekundi p\u00e4rast. Uus v\u00f5itlus algab.
zone.bomb.broadcast = {0} lasi \u00f5hku tiimi {1} alguspunkti. Tiim {2} sai juurde \u00fche punkti.
zone.cake.broadcast = {0} varastas koogi {1}. Tiim {2} sai endale juurde \u00fche punkti ning nende k\u00f5ik elud taastati.
zone.flagcapture.broadcast = {0} varastas tiimi {1} lipu. Tiim {2} sai juurde \u00fche punkti.
zone.flagreturn.deadlock = Sa ei saa varastada vastase lippu ennem kui sinu tiimi lipp on tagastatud.
zone.flagreturn.flag = Sa pead tooma vastaste lipu oma lipu juurde.
zone.flagreturn.spawn = Sa pead tooma vastaste lipu oma alguskoha juurde.
zone.leavenotice = Kasuta /war leave ,et lahkuda tsoonist.
zone.lifepool.empty = Tiimi {0} elud on t\u00fchjad. 1 lisa surm ja nad kaotavad s\u00f5ja!
zone.loadout.equip = K\u00e4tte v\u00f5etud {0} v\u00e4ljalaadimine (hiili, et vahetada).
zone.loadout.reenter = V\u00e4ljalaadimist ei saa vahetada p\u00e4rast alguskohast v\u00e4ljumist.
zone.monument.badblock = Sa pead hankima kuju oma meeskonna v\u00e4rvi villaga
zone.monument.capture = Monument {0} varastati tiimi {1} poolt.
zone.monument.lose = Tiim {0} kaotas kontrolli monumendis {1}.
zone.monument.voodoo = Sinu tants rahuldab kuju voodoo''d. Sa said {0} s\u00fcdant!
zone.noteamnotice = Sa ei saa olla s\u00f5jatsooni sees kui sa ei ole \u00fcheski tiimis.
zone.score.board404 = Selles s\u00f5jatsoonis ei ole lubatud skooritabel.
zone.score.empty = Sa ei saa punkte kuni teise tiimi liitub m\u00f5ni m\u00e4ngija.
zone.spawn.minplayers = Sa ei saa lahkuda spawnist kuni on saavutatud miinumum arv {0} m\u00e4ngija(id) {1} tiimis(des)
zone.spawn.timer = Sa ei saa lahkuda spawnist {0} sekundit peale taass\u00fcndimist.
zone.steal.bomb.broadcast = {0} omab pommi {1}.
zone.steal.bomb.notice = Sul on pomm {0}. Proovi minna vastase tiimi alguspunkti. \u00c4ra puutu kedagi v\u00f5i sa plahvatad!
zone.steal.bomb.prevent = V\u00e4ldi {0} sattumist pommiga sinu tiimi alguspunkti.
zone.steal.cake.broadcast = {0} omab kooki {1}.
zone.steal.cake.notice = Sul on kook {0}. Mine oma tiimi alguspunkti, et saada \u00fcks punkt ja taastada oma elud.
zone.steal.cake.prevent = Vaata, et {0} ei j\u00f5uaks enda alguspunkti koogiga!
zone.steal.flag.broadcast = {0} varastas tiimi {1} lipu.
zone.steal.flag.empty = Sa ei saa varastada tiimi {0} lippu kuni pole \u00fchtegi m\u00e4ngijat selles tiimis.
zone.steal.flag.notice = Sul on tiimi {0} lipp. Mine oma tiimi alguspunkti v\u00f5i lipu varastamis punkti.
zone.steal.flag.prevent = Vaata, et {0} ei j\u00f5uaks meeskonna {1} alguspunkti v\u00f5i lipuni.
zone.stealextra.bomb = Sa saad varastada ainult \u00fche pommi korraga!
zone.stealextra.cake = Sa saad varastada ainult \u00fche koogi korraga!
zone.stealextra.flag = Sa saad varastada ainult \u00fche lipu korraga!
zone.stealextra.other = Sa saad varastada ainult \u00fche asja korraga!
zone.teaminfo.format = {0}: {1} punktid, {2}/{3} elu j\u00e4rgi. {4}
zone.teaminfo.none = puudub
zone.teaminfo.prefix = Tiimid:
zone.teleport = Tere tulemast s\u00f5jatsooni {0}.
zone.warp.permission = Sul ei ole \u00f5igusi, et teleporteeruda s\u00f5jatsooni.
zone.zone404 = S\u00f5jatsooni ei leitud.
zone.zoneinfo.format = {0}: {1} tiimid, {2} m\u00e4ngijad
zone.zoneinfo.prefix = S\u00f5jatsoonid:
zone.zoneinfo.teleport = Kasuta /zone <tsooni-nimi> ,et teleporteeruda s\u00f5jatsooni.

View File

@ -0,0 +1,133 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Et voi rakentaa t\u00e4h\u00e4n.
build.denied.outside = Voit rakentaa vain Sotatantereen sis\u00e4ll\u00e4.
build.denied.teamblock = Voit k\u00e4ytt\u00e4\u00e4 vain joukkueesi kuutioita monumentin valloittamiseen.
build.denied.zone.break = T\u00e4m\u00e4n Sotatantereen kuutiot ovat tuhoutumattomia.
build.denied.zone.multteam = Sinulla on jo {0} kuutio.
build.denied.zone.outside = Et voi tuhota Sotatannerta, jos et pelaa siin\u00e4.
build.denied.zone.place = Et voi asettaa kuutioita t\u00e4ss\u00e4 Sotatantereessa.
build.denied.zone.type = Et voi muokata t\u00e4m\u00e4ntyyppisi\u00e4 kuutioita.
command.console = Et voi suorittaa t\u00e4t\u00e4 toimintoa ellet ole mukana peliss\u00e4.
command.disabled = Voit k\u00e4ytt\u00e4\u00e4 vain War-lis\u00e4osan komentoja (esim. /leave) pelatessasi.
command.tp.init = Odota {0} sekuntia ennen siirtoa. Liikkuminen tai vaurioituminen peruvat siirron.
command.tp.moved = Teleportaatio peruttu liikkumisen takia.
command.tp.damaged = Teleportaatio peruttu vaurioitumisen takia.
command.tp.success = Sinut on siirretty. Kiitos k\u00e4rsiv\u00e4llisyydest\u00e4si.
drop.bomb.broadcast = {0} menetti {1} pommin!
drop.bomb.disabled = Et voi pudottaa tavaroita varastaessasi pommia. Mit\u00e4 ihmett\u00e4 olet tekem\u00e4ss\u00e4?! Juokse vihollisjoukkueen tukikohtaan!
drop.cake.broadcast = {0} pudotti {1} kakun!
drop.cake.disabled = Et voi pudottaa tavaroita varastaessasi kakkua. Mit\u00e4 ihmett\u00e4 olet tekem\u00e4ss\u00e4?! Juokse!
drop.flag.broadcast = {0} pudotti {1} lipun!
drop.flag.disabled = Et voi pudottaa tavaroita ry\u00f6st\u00e4ess\u00e4si lippua. Mit\u00e4 ihmett\u00e4 olet tekem\u00e4ss\u00e4?! Juokse!
drop.item.border = Et voi pudottaa tavaroita Sotatantereen rajojen l\u00e4heisyydess\u00e4.
drop.item.disabled = Et voi pudottaa tavaroita t\u00e4ss\u00e4 Sotatantereessa.
drop.item.spawn = Et voi pudottaa tavaroita ollessasi tukikohdassa.
drop.team = Et voi pudottaa {0} kuutioita.
drop.wand = Pudotit {0} sauvan.
join.aarequired = T\u00e4m\u00e4 Sotatanner k\u00e4ytt\u00e4\u00e4 automaattijakajaa. Astu automaattijakajan l\u00e4pi.
join.broadcast = {0} liittyi {1} joukkueeseen.
join.disabled = T\u00e4m\u00e4 Sotatanner ei ole k\u00e4yt\u00f6ss\u00e4.
join.full.all = Kaikki joukkueet ovat t\u00e4ynn\u00e4.
join.full.single = {0} joukkue on t\u00e4ynn\u00e4.
join.inventorystored = Tavaraluettelosi on varastossa siihen asti kun poistut k\u00e4ytt\u00e4m\u00e4ll\u00e4 /war leave.
join.permission.all = Sinulla ei ole valtuuksia mihink\u00e4\u00e4n joukkueeseen t\u00e4ss\u00e4 Sotatantereessa.
join.permission.single = Sinulla ei ole valtuuksia liitty\u00e4 joukkueeseen {0}.
join.progress = Et voi liitty\u00e4 t\u00e4ll\u00e4 Sotatantereella meneill\u00e4\u00e4n olevaan taisteluun.
join.selfteam = Et voi liitty\u00e4 omaan joukkueeseesi.
join.team404 = Tuota joukkuetta ei l\u00f6ydetty. Yrit\u00e4 k\u00e4ytt\u00e4\u00e4 /teams komentoa n\u00e4hd\u00e4ksesi listan.
leave.broadcast = {0} poistui Sotatantereelta.
leave.inventoryrestore = Tavaraluetteloasi palautetaan.
pvp.death.drown = {0} hukkui.
pvp.death.explosion = {0} r\u00e4j\u00e4hti.
pvp.death.fall = {0} putosi ennenaikaiseen kuolemaan.
pvp.death.fire = {0} paloi poroksi.
pvp.death.other = {0} kuoli.
pvp.ff.disabled = Hy\u00f6kk\u00e4yksesi ep\u00e4onnistui! Kohteesi on joukkueessasi.
pvp.ff.enabled = Oma tuli on sallittu. \u00c4l\u00e4 satuta joukkuetovereitasi.
pvp.kill.adjectives = ;;mahtava;kuolettava;upea;tarkka;brutaali;voimakas
pvp.kill.bomb = {1} r\u00e4j\u00e4ytettiin {0} toimesta.
pvp.kill.format = {0}''''s {1} {2} {3} {4}
pvp.kill.self = {0} teki itsemurhan.
pvp.kill.verbs = tappoi;tappoi;tappoi;viimeisteli;tuhosi;murhasi;h\u00e4vitti;tuhosi
pvp.kill.weapon.aim = nuoli
pvp.kill.weapon.bow = jousi
pvp.kill.weapon.hand = k\u00e4si
pvp.outside.permission = Et voi hy\u00f6k\u00e4t\u00e4 Sotatantereen ulkopuolisia pelaajia vastaan.
pvp.self.notplaying = Sinun t\u00e4ytyy olla mukana pelaamassa Sotatantereella hy\u00f6k\u00e4t\u00e4ksesi.
pvp.self.respawn = Et voi hy\u00f6k\u00e4t\u00e4 sill\u00e4 aikaa kun olet uudelleensyntym\u00e4ss\u00e4!
pvp.self.spawn = Et voi hy\u00f6k\u00e4t\u00e4 ollessasi viel\u00e4 tukikohdassa!
pvp.target.notplaying = Kohteesi ei pelaa Sotatantereella.
pvp.target.otherzone = Kohteesi pelaa toisella Sotatantereella.
pvp.target.respawn = Kohde on juuri uudelleensyntym\u00e4ss\u00e4!
pvp.target.spawn = Kohde on viel\u00e4 tukikohdassa!
sign.lobby.autoassign = Sotatanner\n{0}\nAstu automaatti-\njakajaan.
sign.lobby.pick = Sotanner\n{0}\n\nValitse joukkue.
sign.lobby.warhub = \nSotakeskukseen\n\n
sign.team.limited = {0} joukkue\n{1}/{2} pelaajaa\n{3}/{4} pistett\u00e4\n{5} el\u00e4m\u00e4\u00e4 j\u00e4ljell\u00e4
sign.team.unlimited = {0} joukkue\n{1}/{2} pelaajaa\n{3}/{4} pistett\u00e4\nehtym\u00e4tt\u00f6m\u00e4t el\u00e4m\u00e4t
sign.warhub = Sotakeskus\n(/warhub)\nValitse \nottelu!
sign.warzone = Sotatanner\n{0}\n{1}/{2} pelaajaa\n{3} joukkuetta
team.chat.enable = Joukkueviestittely p\u00e4\u00e4ll\u00e4. Vain joukkueesi saa normaalit viestisi.
team.chat.disable = Joukkueviestittely pois p\u00e4\u00e4lt\u00e4.
use.anvil = Et voi k\u00e4ytt\u00e4\u00e4 alasimia t\u00e4ll\u00e4 Sotatantereella!
use.enchant = Et voi k\u00e4ytt\u00e4\u00e4 lumousp\u00f6yti\u00e4 t\u00e4ll\u00e4 Sotatantereella!
use.ender = Et voi k\u00e4ytt\u00e4\u00e4 \u00e4\u00e4riarkkuja pelatessasi Sotatantereella!
use.item.spawn = Et voi k\u00e4ytt\u00e4\u00e4 tavaroita ollessasi tukikohdassa.
use.xpkillmeter = T\u00e4m\u00e4 johtuu xpkillmeter ominaisuuden p\u00e4\u00e4ll\u00e4 olemisesta.
wand.toofar = Kohdekuutio on liian kaukana.
war.notadmin = Et voi tehd\u00e4 tuota ellet ole War:in yll\u00e4pit\u00e4j\u00e4 (lupa war.admin).
war.notzm = Et voi tehd\u00e4 tuota ellet ole Sotatantereen tekij\u00e4 (lupa war.zonemaker).
war.prefix = War>
war.title = War
warhub.none = T\u00e4ss\u00e4 serveriss\u00e4 ei ole Sotakeskusta. Yrit\u00e4 komentoja /zones ja /zone.
warhub.permission = Sinulla ei ole valtuuksia siirty\u00e4 Sotakeskukseen.
warhub.teleport = Tervetuloa Sotakeskukseen! Valitse ottelusi!
zone.airstrike = {0} kutsui ilmaiskun!
zone.battle.end = Taistelu on p\u00e4\u00e4ttynyt. {0} joukkue h\u00e4visi: {1} kuoli ja joukkueella ei ollut en\u00e4\u00e4 j\u00e4ljell\u00e4 el\u00e4mi\u00e4.
zone.battle.newscores = Uudet pisteet - {0}
zone.battle.next = Taistelu keskeytettiin. Palautetaan Sotatanner {0}...
zone.battle.reset = Uusi taistelu alkaa pian. Palautetaan Sotatannerta...
zone.battle.resetprogress = Palautusprosessi: {0}%, {1} sekuntia...
zone.battle.resetcomplete = Sotatanner palautettu {0} sekunnissa. Uusi taistelu alkaa.
zone.bomb.broadcast = {0} r\u00e4j\u00e4ytti {1} joukkueen tukikohdan. {2} joukkue saa yhden pisteen.
zone.cake.broadcast = {0} valloitti {1} kakun. {2} joukkue saa yhden pisteen ja t\u00e4ydet el\u00e4m\u00e4t.
zone.flagcapture.broadcast = {0} joukkue valloitti {1} joukkueen lipun. {2} joukkue saa yhden pisteen.
zone.flagreturn.deadlock = Et voi vallata vihollisen lippua ennen kuin oman joukkueesi lippu on palautettu.
zone.flagreturn.flag = Sinun t\u00e4ytyy vallata vihollisen lippu joukkueesi lipun luona.
zone.flagreturn.spawn = Sinun t\u00e4ytyy vallata vihollisen lippu joukkueesi tukikohdassa.
zone.leavenotice = K\u00e4yt\u00e4 komentoa /war leave poistuaksesi Sotatantereelta.
zone.lifepool.empty = {0} joukkueen el\u00e4m\u00e4t ovat ehtyneet. Viel\u00e4 yksi kuolema ja he h\u00e4vi\u00e4v\u00e4t ottelun!
zone.loadout.equip = {0} varustus otettu k\u00e4ytt\u00f6\u00f6n (paina shift vaihtaaksesi).
zone.loadout.reenter = Et voi vaihtaa varustusta poistuttuasi tukikohdasta.
zone.monument.badblock = Voit vallata monumentin joukkueesi v\u00e4risell\u00e4 villakuutiolla. Hae yksi joukkueesi tukikohdasta.
zone.monument.capture = {0} monumentti on valloitettu {1} joukkueen toimesta.
zone.monument.lose = {0} joukkue menetti {1} monumentin hallinnan.
zone.monument.voodoo = Tanssisi miellytt\u00e4\u00e4 monumentin henke\u00e4. Saat {0} syd\u00e4nt\u00e4!
zone.noteamnotice = Et voi olla Sotatantereen sis\u00e4ll\u00e4 ilman joukkuetta.
zone.score.board404 = T\u00e4ss\u00e4 Sotatantereessa ei ole k\u00e4yt\u00f6ss\u00e4 pistetaulukkoa.
zone.score.empty = Et saa pistett\u00e4 ennen kuin v\u00e4hint\u00e4\u00e4n yksi pelaaja liittyy toiseen joukkueeseen.
zone.spawn.minplayers = Et voi poistua tukikohdasta ennen kuin v\u00e4hint\u00e4\u00e4n {0} pelaaja(a) on v\u00e4hint\u00e4\u00e4n {1} joukkueessa.
zone.spawn.timer = Et voi poistua tukikohdasta {0} sekuntiin uudelleensyntymisen j\u00e4lkeen.
zone.steal.bomb.broadcast = Pelaajalla {0} on {1} pommi.
zone.steal.bomb.notice = Sinulla on {0} pommi. P\u00e4\u00e4se toisen joukkueen tukikohtaan saadaksesi pisteen. \u00c4l\u00e4 osu kehenk\u00e4\u00e4n tai muuten r\u00e4j\u00e4hd\u00e4t!
zone.steal.bomb.prevent = Est\u00e4 pelaajaa {0} p\u00e4\u00e4sem\u00e4st\u00e4 tukikohtaanne pommin kanssa!
zone.steal.cake.broadcast = Pelaajalla {0} on {1} kakku.
zone.steal.cake.notice = Sinulla on {0} kakku. P\u00e4\u00e4se joukkueesi tukikohtaan saadaksesi pisteen ja t\u00e4ydent\u00e4\u00e4ksesi el\u00e4mi\u00e4nne.
zone.steal.cake.prevent = Est\u00e4 pelaajaa {0} p\u00e4\u00e4sem\u00e4st\u00e4 heid\u00e4n tukikohtaansa kakun kanssa!
zone.steal.flag.broadcast = {0} ry\u00f6sti {1} joukkueen lipun.
zone.steal.flag.empty = Et voi ry\u00f6st\u00e4\u00e4 {0} joukkueen lippua, sill\u00e4 siin\u00e4 joukkueessa ei ole yht\u00e4\u00e4n pelaajaa.
zone.steal.flag.notice = Sinulla on {0} joukkueen lippu. P\u00e4\u00e4se joukkueesi tukikohtaan tai lipulle valloittaaksesi sen!
zone.steal.flag.prevent = Est\u00e4 pelaajaa {0} p\u00e4\u00e4sem\u00e4st\u00e4 {1} joukkueen tukikohtaan tai lipulle.
zone.stealextra.bomb = Voit ry\u00f6st\u00e4\u00e4 vain yhden pommin kerrallaan!
zone.stealextra.cake = Voit ry\u00f6st\u00e4\u00e4 vain yhden kakun kerrallaan!
zone.stealextra.flag = Voit ry\u00f6st\u00e4\u00e4 vain yhden lipun kerrallaan!
zone.stealextra.other = Voit ry\u00f6st\u00e4\u00e4 vain yhden asian kerrallaan!
zone.teaminfo.format = {0}: {1} pistett\u00e4, {2}/{3} el\u00e4m\u00e4\u00e4 j\u00e4ljell\u00e4. {4}
zone.teaminfo.none = ei yht\u00e4\u00e4n
zone.teaminfo.prefix = Joukkueet:
zone.teleport = Tervetuloa {0} Sotatantereelle.
zone.warp.permission = Sinulla ei ole valtuuksia siirty\u00e4 Sotatantereelle.
zone.zone404 = Sotatannerta ei l\u00f6ydetty.
zone.zoneinfo.format = {0}: {1} joukkuetta, {2} pelaajaa
zone.zoneinfo.prefix = Sotatantereet:
zone.zoneinfo.teleport = K\u00e4yt\u00e4 komentoa /zone <sotatantereen-nimi> siirty\u00e4ksesi Sotatantereelle.

View File

@ -1,129 +1,133 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Vous ne pouvez pas construire ici.
build.denied.outside = Vous pouvez construire uniquement dans les zones de combat.
build.denied.teamblock = Vous devez utiliser les blocs de l'\u00e9quipe pour vous emparer des monuments.
build.denied.zone.break = Vous ne pouvez pas casser de bloc !
build.denied.outside = Vous ne pouvez construire qu''\u00e0 l''int\u00e9rieur de la WarZone
build.denied.teamblock = Vous pouvez seulement utiliser les blocs de votre team pour prendre un monument.
build.denied.zone.break = Les blocs de la zone sont incassables !
build.denied.zone.multteam = Vous avez d\u00e9j\u00e0 le bloc {0}.
build.denied.zone.outside = Vous ne pouvez pas d\u00e9truire le terrain si vous n'\u00eates pas dans la partie.
build.denied.zone.place = Vous ne pouvez pas placer de bloc ici.
build.denied.zone.outside = Impossible de d\u00e9truire les blocs d''une zone sans jouer.
build.denied.zone.place = Vous ne pouvez pas placer de bloc dans cette zone.
build.denied.zone.type = Vous ne pouvez pas modifier ce type de bloc.
command.console = Vous ne pouvez pas effectuer cette action si vous n'\u00eates pas dans une partie.
command.disabled = Vous ne pouvez utiliser que les commandes de combat quand vous jouez.
command.console = Vous ne pouvez pas effectuer cette action si vous n''''\u00eates pas dans la partie.
command.disabled = Vous pouvez seulement utiliser les commandes de War en jeu (ex: /war leave)
command.tp.init = Attendez {0} seconde(s) pour \u00eatre t\u00e9l\u00e9porter. Ne bougez pas.
command.tp.moved = T\u00e9l\u00e9portation annul\u00e9 \u00e0 cause de mouvement.
command.tp.damaged = T\u00e9l\u00e9portation annul\u00e9e. Vous recevez des coups !
command.tp.success = Vous avez \u00e9t\u00e9 t\u00e9l\u00e9port\u00e9. Merci pour votre patience.
drop.bomb.broadcast = {0} a perdu la bombe {1} !
drop.bomb.disabled = Vous ne pouvez pas jeter des objets quand vous avez la bombe, Que faites vous ?!... Foncez au Spawn de l'ennemi !
drop.bomb.disabled = Vous ne pouvez pas jeter d''objet quand vous avez la bombe ! Atteignez rapidement la base ennemie !
drop.cake.broadcast = {0} a perdu le g\u00e2teau {1} !
drop.cake.disabled = Vous ne pouvez pas jeter des objets tout en volant un g\u00e2teau. Que faites vous ?! Courez !
drop.cake.disabled = Vous ne pouvez pas jeter d''objet quand vous avez le g\u00e2teau ! Atteignez vite votre base !
drop.flag.broadcast = {0} a perdu le drapeau {1} !
drop.flag.disabled = Vous ne pouvez pas jeter d'objets quand vous avez le drapeau. Que faites vous ?! Courez !
drop.item.border = Vous ne pouvez pas jeter d'objets pr\u00e8s des fronti\u00e8res de la zone.
drop.item.disabled = Vous ne pouvez rien jeter sur ce champs de bataille. Soyez \u00e9colo !
drop.item.spawn = Vous ne pouvez pas jeter d'objets en \u00e9tant \u00e0 votre base.
drop.team = Vous ne pouvez pas jeter de blocs {0}.
drop.wand = Vous jetez l''outil de zone {0}.
drop.flag.disabled = Vous ne pouvez pas lancer d''objet quand vous avez le drapeau ! Atteignez vite votre base !
drop.item.border = Vous ne pouvez pas lancer d''objet pr\u00e8s des limites de la zone.
drop.item.disabled = Vous ne pouvez rien jeter sur le champ de bataille.
drop.item.spawn = Vous ne pouvez pas jeter d''objet lorsque vous \u00eates \u00e0 votre base.
drop.team = Vous ne pouvez pas jeter les blocs de l''\u00e9quipe {0}.
drop.wand = Vous jetez l''''outil de zone {0}.
join.aarequired = Vous serez automatiquement int\u00e9gr\u00e9 \u00e0 une \u00e9quipe en passant le portail.
join.broadcast = {0} a rejoint l''\u00e9quipe {1}.
join.broadcast = {0} a rejoint l''''\u00e9quipe {1}.
join.disabled = Cette ar\u00e8ne est d\u00e9sactiv\u00e9e.
join.full.all = Toutes les \u00e9quipes sont au complet.
join.full.single = Il n'y a plus de place dans l''\u00e9quipe {0}.
join.inventorystored = Votre inventaire est conserv\u00e9 jusqu'\u00e0 ce que vous quittiez le champs de bataille (via '/war leave').
join.permission.all = Vous n'avez pas les permissions suffisantes pour rejoindre une \u00e9quipe.
join.permission.single = Vous n''avez pas la permission de rejoindre l''\u00e9quipe {0}.
join.progress = Les combats ont d\u00e9j\u00e0 d\u00e9marr\u00e9, vous ne pouvez pas rejoindre cette ar\u00e8ne.
join.full.all = Tous les \u00e9quipes sont pleine.
join.full.single = Il n''y a plus de place dans l''''\u00e9quipe {0}.
join.inventorystored = Votre inventaire est conserv\u00e9 jusqu''\u00e0 ce que vous quittiez le champs de bataille (via ''/war leave'').
join.permission.all = Vous n''avez pas les permissions suffisantes pour rejoindre une \u00e9quipe.
join.permission.single = Vous n''''avez pas la permission de rejoindre l''''\u00e9quipe {0}.
join.progress = Impossible de rejoindre une zone en jeu.
join.selfteam = Vous ne pouvez pas rejoindre votre propre \u00e9quipe.
join.team404 = Cette \u00e9quipe n'existe pas. Utilisez '/teams' pour obtenir la liste des \u00e9quipes existantes.
join.team404 = Cette \u00e9quipe n''existe pas. Utilisez ''/teams'' pour obtenir la liste des \u00e9quipes existantes.
leave.broadcast = {0} a quitt\u00e9 la bataille.
leave.inventoryrestore = Votre inventaire vient d'\u00eatre restaur\u00e9.
pvp.death.drown = {0} ne sait pas nager, et vient de se noyer !
pvp.death.explosion = Boom ! {0} vient d''exploser !
pvp.death.fall = {0} s''est cass\u00e9 le doigt de pied en tombant... Et il en est mort !
pvp.death.fire = {0} vient de p\u00e9rir dans les flammes... Paix \u00e0 son \u00e2me !
leave.inventoryrestore = Votre inventaire vient d''\u00eatre restaur\u00e9.
pvp.death.drown = {0} vient de se noyer.
pvp.death.explosion = {0} vient d''''exploser !
pvp.death.fall = {0} est mort en tombant.
pvp.death.fire = {0} vient de p\u00e9rir dans les flammes.
pvp.death.other = {0} est mort !
pvp.ff.disabled = Rat\u00e9 ! Il est dans ton \u00e9quipe celui-l\u00e0 !
pvp.ff.enabled = Tir ami activ\u00e9 ! Faites attention quand vous tapez ;)
pvp.ff.disabled = Il est dans ton \u00e9quipe celui-l\u00e0 !
pvp.ff.enabled = PvP entre \u00e9quipe activ\u00e9, attention !
pvp.kill.adjectives = ;;puissant;mortel;bien;pr\u00e9cis;brutal;puissant
pvp.kill.bomb = Bien jou\u00e9 {0} ! Le souffle de l''explosion a tu\u00e9 {1} !
pvp.kill.bomb = Bien jou\u00e9 {0} ! L''explostion a tu\u00e9 {1} !
pvp.kill.format = {1} {2} de {0} {3} {4}
pvp.kill.self = {0} s''est suicid\u00e9 !
pvp.kill.self = {0} s''''est suicid\u00e9 !
pvp.kill.verbs = tu\u00e9;tu\u00e9;tu\u00e9;termin\u00e9;an\u00e9anti;assassin\u00e9;effac\u00e9;extermin\u00e9
pvp.kill.weapon.aim = cible
pvp.kill.weapon.bow = arc
pvp.kill.weapon.hand = main
pvp.outside.permission = Vous ne pouvez pas attaquer les joueurs en dehors de l'ar\u00e8ne.
pvp.self.notplaying = Vous devez rejoindre l'ar\u00e8ne pour attaquer. Allez, viens, on est bien !
pvp.self.respawn = Attendez qu'il soit pr\u00eat pour attaquer !
pvp.self.spawn = Vous ne pouvez pas attaquer depuis votre base.
pvp.target.notplaying = Votre cible est en dehors de l'ar\u00e8ne.
pvp.target.otherzone = Votre cible est dans une autre ar\u00e8ne... Bien tent\u00e9 !
pvp.outside.permission = Impossible d''''attaquer les joueurs en dehors de la zone.
pvp.self.notplaying = Vous devez rejoindre l''ar\u00e8ne pour attaquer.
pvp.self.respawn = Attendez qu''il r\u00e9apparaisse pour l''attaquer !
pvp.self.spawn = Vous ne pouvez pas attaquer depuis votre base !
pvp.target.notplaying = Votre cible est en dehors de l''ar\u00e8ne.
pvp.target.otherzone = Votre cible est dans une autre zone...
pvp.target.respawn = La cible est actuellement \u00e0 sa base !
pvp.target.spawn = La cible est d\u00e9j\u00e0 au point d'apparition !
sign.lobby.autoassign = Warzone\n{0}\nEntrez dans un\nportail.
sign.lobby.pick = Ar\u00e8ne\n{0}\nChoisissez\nvotre \u00e9quipe
sign.lobby.warhub = \nVers la zone de\nchoix d'ar\u00e8ne\n
pvp.target.spawn = La cible est d\u00e9j\u00e0 au point d''apparition !
sign.lobby.autoassign = Zone\n{0}\nEntrez dans un\nportail.
sign.lobby.pick = Carte\n{0}\nChoisissez\nvotre \u00e9quipe
sign.lobby.warhub = \nVers la zone\nwarhub\n
sign.team.limited = Equipe {0}\n{1}/{2} joueurs\n{3}/{4} points\n{5} vies
sign.team.unlimited = Equipe {0}\n{1}/{2} joueurs\n{3}/{4} points\nVies illimit\u00e9es
sign.warhub = War hub\n( /warhub )\nChoisissez votre\nbataille !
sign.warzone = Champs de bataille\n{0}\n{1}/{2} joueurs\n{3} \u00e9quipes
team.chat.enable = Chat d'\u00e9quipe activ\u00e9. Seule votre \u00e9quipe pourra lire vos messages.
team.chat.disable = Chat d'\u00e9quipe d\u00e9sactiv\u00e9.
use.anvil = Vous ne pouvez pas utiliser l'enclume sur ce champs de bataille !
use.enchant = Vous ne pouvez pas utiliser la table d'enchantement sur ce champs de bataille !
use.ender = Vous ne pouvez pas utiliser les coffres de l'end en pleine bataille !
use.item.spawn = Vous ne pouvez pas utiliser d'objet \u00e0 votre base.
use.xpkillmeter = L'option 'xpkillmeter' doit \u00eatre activ\u00e9e.
sign.warhub = Zone \n( /warhub )\nChoisissez votre\nzone !
sign.warzone = Zone\n{0}\n{1}/{2} joueurs\n{3} \u00e9quipes
team.chat.enable = Chat d''\u00e9quipe activ\u00e9. Seule votre \u00e9quipe pourra lire vos messages.
team.chat.disable = Chat d''\u00e9quipe d\u00e9sactiv\u00e9.
use.anvil = Vous ne pouvez pas utiliser l''enclume sur cette zone.
use.enchant = Vous ne pouvez pas utiliser la table d''enchantement sur cette zone.
use.ender = Vous ne pouvez pas utiliser les coffres de l''end en pleine bataille !
use.item.spawn = Vous ne pouvez pas utiliser d''objet \u00e0 votre base.
use.xpkillmeter = L''option ''xpkillmeter'' doit \u00eatre activ\u00e9e.
wand.toofar = Le bloc cible est trop \u00e9loign\u00e9.
war.notadmin = Vous n'avez pas la permission.
war.notzm = Vous n'avez pas la permission requise.
war.notadmin = Vous n''avez pas la permission.
war.notzm = Vous n''avez pas la permission requise.
war.prefix = War >
war.title = War
warhub.none = Il n'y a pas de "warhub". Utilisez '/zones' et '/zone'.
warhub.permission = Vous n'avez pas la permission de vous t\u00e9l\u00e9porter.
warhub.teleport = Bienvenue ! Choisissez un champs de bataille.
warhub.none = Il n''y a pas de "warhub". Utilisez ''/zones'' et ''/zone''.
warhub.permission = Vous n''avez pas la permission de vous t\u00e9l\u00e9porter \u00e0 la zone warhub.
warhub.teleport = Bienvenue ! Choisissez une zone pour combattre.
zone.airstrike = {0} a fait un raid a\u00e9rien !
zone.battle.end = La partie est termin\u00e9e ! L''\u00e9quipe {0} a perdu : {1} morts et plus aucune de vie.
zone.battle.end = La partie est termin\u00e9e ! L''''\u00e9quipe {0} a perdu : L''\u00e9quipe {1} est morte et n''a plus aucune de vie.
zone.battle.newscores = Nouveaux scores - {0}
zone.battle.next = Le combat a \u00e9t\u00e9 interrompu... Remise \u00e0 z\u00e9ro de la zone {0}...
zone.battle.reset = Une nouvelle bataille va bient\u00f4t d\u00e9marrer. Pr\u00e9paration de l'ar\u00e8ne...
zone.battle.resetprogress = Progression: {0}%, {1} secondes...
zone.battle.resetcomplete = L''ar\u00e8ne va \u00eatre r\u00e9initialis\u00e9e dans {0} secondes. Une nouvelle bataille va commencer !
zone.bomb.broadcast = {0} a explos\u00e9 la base de l''\u00e9quipe {1}. L''\u00e9quipe {2} gagne un point.
zone.cake.broadcast = {0} a ramen\u00e9 le g\u00e2teau {1} \u00e0 sa base. L''\u00e9quipe {2} gagne un point et r\u00e9cup\u00e8re toutes ses vies.
zone.flagcapture.broadcast = {0} a ramen\u00e9 le drapeau de l''\u00e9quipe {1} dans son camp ! L''\u00e9quipe {2} gagne un point.
zone.battle.next = Le combat a \u00e9t\u00e9 interrompu... Regen\u00e9ration de la zone {0}...
zone.battle.reset = Une nouvelle bataille va bient\u00f4t d\u00e9marrer. Regen de la zone..
zone.battle.resetprogress = Progression: {0}%, {1} secondes pass\u00e9...
zone.battle.resetcomplete = Carte r\u00e9initialis\u00e9e en {0} secondes. Une nouvelle bataille va commencer !
zone.bomb.broadcast = {0} a explos\u00e9 la base de l''''\u00e9quipe {1}. L''''\u00e9quipe {2} gagne 1 point.
zone.cake.broadcast = {0} a ramen\u00e9 le g\u00e2teau {1} \u00e0 sa base. L''''\u00e9quipe {2} gagne un point et r\u00e9cup\u00e8re toutes ses vies.
zone.flagcapture.broadcast = {0} a ramen\u00e9 le drapeau de l''''\u00e9quipe {1} \u00e0 sa base ! L''''\u00e9quipe {2} gagne 1 point.
zone.flagreturn.deadlock = Vous ne pouvez pas rapporter un drapeau ennemi alors que votre propre drapeau a \u00e9t\u00e9 vol\u00e9 !
zone.flagreturn.flag = Vous devez rapporter le drapeau ennemi \u00e0 votre propre drapeau.
zone.flagreturn.flag = Vous devez captuer le drapeau enemie \u00e0 votre drapeau d''\u00e9quipe.
zone.flagreturn.spawn = Vous devez rapporter le drapeau ennemi \u00e0 votre base.
zone.leavenotice = Utilisez '/war leave' pour quitter le champs de bataille.
zone.lifepool.empty = L''\u00e9quipe {0} n''a plus de vie. Encore un d\u00e9c\u00e8s, et elle perd la bataille !
zone.loadout.equip = Voici l''\u00e9quipement {0} (accroupissez-vous pour changer).
zone.leavenotice = Utilisez ''/war leave'' pour quitter la zone.
zone.lifepool.empty = L''''\u00e9quipe {0} n''''a plus de vie. Encore une mort, et elle perd la bataille !
zone.loadout.equip = Voici votre \u00e9quipement {0} (Utiliser la touche sneak pour changer).
zone.loadout.reenter = Vous ne pouvez pas changer votre \u00e9quipement apr\u00e8s avoir quitt\u00e9 votre base.
zone.monument.badblock = Vous devez vous emparer d'un monument avec une laine \u00e0 la couleur de votre \u00e9quipe. Obtenez en une \u00e0 votre base.
zone.monument.capture = L''\u00e9quipe {1} s''est empar\u00e9e du monument {0}.
zone.monument.lose = L''\u00e9quipe {0} a perdu le contr\u00f4le du monument {1}.
zone.monument.voodoo = Votre danse a plu au monument. Vous gagnez {0} coeur(s) !
zone.noteamnotice = Vous ne pouvez pas \u00eatre dans l'ar\u00e8ne sans \u00eatre dans une \u00e9quipe.
zone.score.board404 = Le tableau des scores n'est pas activ\u00e9 dans cette ar\u00e8ne.
zone.score.empty = Vous ne pourrez pas marquer de point tant qu'aucun joueur n'aura rejoint une autre \u00e9quipe.
zone.spawn.minplayers = Vous ne pouvez pas quitter votre base s''il n''y a pas au moins {0} joueurs dans au moins {1} \u00e9quipes.
zone.spawn.timer = Vous ne pouvez pas quitter votre base pendant {0} apr\u00e8s votre apparition.
zone.steal.bomb.broadcast = {0} s''est empar\u00e9 de la bombe {1}.
zone.steal.bomb.notice = Vous avez la bombe {0}. Atteignez la base d''une \u00e9quipe ennemie pour gagner des points. Si vous vous faites toucher, vous exploserez !
zone.steal.bomb.prevent = Emp\u00eachez {0} d''atteindre votre base avec la bombe !
zone.monument.badblock = Vous devez vous emparer d''un monument avec une laine \u00e0 la couleur de votre \u00e9quipe.
zone.monument.capture = L''''\u00e9quipe {1} s''''est empar\u00e9e du monument {0}.
zone.monument.lose = L''''\u00e9quipe {0} a perdu le contr\u00f4le du monument {1}.
zone.monument.voodoo = Votre dance plait au monument voodoo ! Vous gagnez {0} coeur(s) !
zone.noteamnotice = Vous ne pouvez pas \u00eatre dans la zone sans \u00eatre dans une \u00e9quipe.
zone.score.board404 = Le tableau des scores n''est pas activ\u00e9 dans cette zone.
zone.score.empty = Vous ne pourrez pas marquer de point tant qu''aucun joueur n''aura rejoint une autre \u00e9quipe.
zone.spawn.minplayers = Vous ne pouvez pas quitter votre base s''''il n''''y a pas au moins {0} joueurs dans au moins {1} \u00e9quipes.
zone.spawn.timer = Vous devez attendre {0} secondes pour quitter votre base !
zone.steal.bomb.broadcast = {0} s''''est empar\u00e9 de la bombe {1} !
zone.steal.bomb.notice = Vous avez la bombe {0}. Atteignez la base d''''une \u00e9quipe ennemie pour gagner des points. Si vous vous faites toucher, vous exploserez !
zone.steal.bomb.prevent = Emp\u00eachez {0} d''''atteindre votre base avec la bombe !
zone.steal.cake.broadcast = {0} a vol\u00e9 le g\u00e2teau {1}.
zone.steal.cake.notice = Vous avez le g\u00e2teau {0}. Atteignez votre base pour gagner des points et obtenir des vies !
zone.steal.cake.prevent = Emp\u00eachez {0} d''atteindre sa base avec le g\u00e2teau !
zone.steal.flag.broadcast = {0} a vol\u00e9 le drapeau de l''\u00e9quipe {1} !
zone.steal.flag.empty = Vous ne pouvez pas voler le drapeau de l''\u00e9quipe {0} si aucun joueur n''a rejoint cette \u00e9quipe.
zone.steal.flag.notice = Vous avez le drapeau de l''\u00e9quipe {0}. Atteigez votre base ou votre propre drapeau, et vite !
zone.steal.flag.prevent = Emp\u00eachez {0} d''atteindre la base ou le drapeau de l''\u00e9quipe {1} !
zone.stealextra.bomb = Vous ne pouvez voler qu'une seule bombe \u00e0 la fois !
zone.stealextra.cake = Vous ne pouvez voler qu'un seul g\u00e2teau \u00e0 la fois !
zone.stealextra.flag = Vous ne pouvez voler qu'un seul drapeau \u00e0 la fois !
zone.stealextra.other = Vous ne pouvez voler qu'une seule chose \u00e0 la fois !
zone.steal.cake.prevent = Emp\u00eachez {0} d''''atteindre sa base avec le g\u00e2teau !
zone.steal.flag.broadcast = {0} a vol\u00e9 le drapeau de l''''\u00e9quipe {1} !
zone.steal.flag.empty = Vous ne pouvez pas voler le drapeau de l''''\u00e9quipe {0} si aucun joueur n''''a rejoint cette \u00e9quipe.
zone.steal.flag.notice = Vous avez le drapeau de l''''\u00e9quipe {0}. Atteignez vite votre base !
zone.steal.flag.prevent = Emp\u00eachez {0} d''''atteindre la base de l''''\u00e9quipe {1} !
zone.stealextra.bomb = Vous ne pouvez voler qu''une seule bombe \u00e0 la fois !
zone.stealextra.cake = Vous ne pouvez voler qu''un seul g\u00e2teau \u00e0 la fois !
zone.stealextra.flag = Vous ne pouvez voler qu''un seul drapeau \u00e0 la fois !
zone.stealextra.other = Vous ne pouvez voler qu''une seule chose \u00e0 la fois !
zone.teaminfo.format = {0} : {1} points, {2}/{3} vies restantes. {4}
zone.teaminfo.none = aucun(e)
zone.teaminfo.prefix = Equipes :
zone.teleport = Bienvenue sur le champs de bataille {0} !
zone.warp.permission = Vous n'avez pas la permission de vous t\u00e9l\u00e9porter \u00e0 cette ar\u00e8ne.
zone.zone404 = Ar\u00e8ne non trouv\u00e9e.
zone.teleport = Bienvenue sur la zone {0} !
zone.warp.permission = Vous n''avez pas la permission de vous t\u00e9l\u00e9porter \u00e0 cette zone.
zone.zone404 = Zone non trouv\u00e9e.
zone.zoneinfo.format = {0} : {1} \u00e9quipes, {2} joueurs
zone.zoneinfo.prefix = Liste des ar\u00e8nes :
zone.zoneinfo.teleport = Utilisez '/zone <nom de la zone>' pour vous y t\u00e9l\u00e9porter.
zone.zoneinfo.prefix = Liste des zones:
zone.zoneinfo.teleport = Utilisez ''/zone <nom de la zone>'' pour vous y t\u00e9l\u00e9porter.

View File

@ -0,0 +1,65 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Do kinst hjir net bouwe.
build.denied.outside = Do kinst allinnich yn oarlochsgebieten bouwe.
build.denied.teamblock = Do kinst allinnich de blokken fan dyn tiim br\u00fbke om monuminten te feroverjen.
build.denied.zone.break = Do blokken dy''t yn dit oarlochsgebiet boud binne, binne unbrekber!
build.denied.zone.multteam = Do hast al in {0} blok.
build.denied.zone.outside = Do kinst in oarlochsgebiet w\u00ear''tsto net yn spilest net ferneatigje.
build.denied.zone.place = Do kinst gjin blokken pleatsen yn dit oarlochsgebiet.
build.denied.zone.type = Do kinst blokken fan dit type net oanpasse.
command.console = Do kinst dit net dwaan at''sto net yn-spiel bist.
command.disabled = Do kinst allinnich Oarlochkommando''s (lykas /leave) br\u00fbke at''sto oan it spilen bist.
drop.bomb.broadcast = {0} hat de {1} bom fallen litten!
drop.bomb.disabled = Do kinst gjin foarwerpen fallen litten at''sto de bom oan it stelle bist. Wat dochsto?! Rin nei de spawn fan dyn fij\u00e2n!
drop.cake.broadcast = {0} hat de {1} cake fallen listen!
drop.cake.disabled = Do kinst gjin foarwerpen fallen litten at''sto de cake oan it stelle bist. Wat dochsto?! Rin!
drop.flag.broadcast = {0} hat de {1} flagge fallen litten!
drop.flag.disabled = Do kinst gjin foarwerpen fallen litten at''sto de flag oan it stelle bist. Wat dochsto?! Rin!
drop.item.border = Do kinst gjin foarwerpen fallen litten yn ''e buert fan de s\u00f4negrins.
drop.item.disabled = Do kinst gjin foarwerpen fallen litten yn dit oarlochsgebiet.
drop.item.spawn = Do kinst gjin foarwerpen fallen litten at''sto noch yn ''e spawn bist.
drop.team = Do kinst gjin {0} blokken fallen litten.
drop.wand = Do hast de s\u00f4ne {0} st\u00eaf fallen litten.
join.aarequired = Dit oarlochsgebiet ferplichtet dy om automatysk tawiisd te wurden oan in tiim. Gean asjebleaft nei de auto-tawiispoarte.
join.broadcast = {0} wie taheakke oan tiim {1}
join.disabled = Dit oarlochsgebiet is \u00fatskeakele.
join.full.all = Alle tiims binne fol.
join.full.single = Tiim {0} is fol.
join.inventorystored = Dyn ynventaris stiet yn ''e opslach oant datsto fuort geast mei /war leave.
join.permission.all = Do hast gjin tastimming foar elts fan ''e beskikbere tiims yn dit oarlochsgebiet.
join.permission.single = Do hast gjin tastimming om dysels ta te heakje oan team {0}.
join.progress = Do kinst dysels net taheakje oan in dwaande striid yn dizze s\u00f4ne.
join.selfteam = Do kinst dysels net taheakje oan dyn eigen tiim.
join.team404 = It team waard net f\u00fbn. Probearje /teams te br\u00fbken foar in list.
leave.broadcast = {0} hat de s\u00f4ne ferlitten.
leave.inventoryrestore = Dyn ynventaris wurdt wer ynoarder.
pvp.death.drown = {0} fersopen
pvp.death.explosion = {0} eksplodearre
pvp.death.fall = {0} is betiid dea gongen troch in fal
pvp.death.fire = {0} wie knapperich opbaarnd
pvp.death.other = {0} is dea gongen
pvp.ff.disabled = Dyn oanfal miste! Dyn wyt is yn dyn tiim.
pvp.ff.enabled = Freonlike fjoer stiet oan! Alsjebleaft, blessearje dyn tiimgenoaten net.
pvp.kill.adjectives = ;;machtich;deadlik;fijn;presys;br\u00fat;kr\u00eaftich
pvp.kill.bomb = {0} hat {1} opblaasd!
pvp.kill.format = {0}''''s {1} {2} {3} {4}
pvp.kill.self = {0} hat selsmoard plege
pvp.kill.weapon.aim = rjochtsje
pvp.kill.weapon.bow = b\u00f4ge
pvp.kill.weapon.hand = h\u00e2n
pvp.outside.permission = Do kinst gjin spilers oanfalle b\u00fbten de oarlochsgebieten.
pvp.self.notplaying = Do moatst yn it oarlochsgebiet w\u00eaze asto aanfalle wolst.
pvp.self.respawn = Do kinst net oanfalle asto oan it respawnen bist!
pvp.self.spawn = Do kinst net oanfalle asto noch yn ''e spawn bist!
pvp.target.notplaying = Dyn wyt spilet net yn it oarlochsgebiet.
pvp.target.otherzone = Dyn wyt spilet yn in oar oarlochsgebiet.
pvp.target.respawn = It wyt is dwaande mei respawnen!
pvp.target.spawn = Dyn wyt is noch hyltyd yn ''e spawn.
sign.lobby.autoassign = Oarlochsgebiet\n{0}\nGean nei auto-\ntawiispoarte.
sign.lobby.pick = Oarlochsgebiet\n{0} \n \nIn tiim \u00fatkieze.
sign.lobby.warhub = \nNei Oarlochshub\n\n
sign.team.limited = Tiim {0}\n{1}/{2} spilers\n{3}/{4} pnt\n{5} libbens oer
sign.team.unlimited = Tiim {0}\n{1}/{2} spilers\n{3}/{4} pnt\nlibbens unbeheind
sign.warhub = Oarlochshub\n(/warhub)\nKies dyn\nstriid!
sign.warzone = Oarlochsgebiet\n{0}\n{1}/{2} spilers\n{3} tiims
use.anvil = Do kinst gjin ambylden br\u00fbke yn dit oarlochsgebiet!

View File

@ -0,0 +1,3 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = \u05d0\u05e1\u05d5\u05e8 \u05dc\u05d1\u05e0\u05d5\u05ea \u05db\u05d0\u05df
build.denied.outside = \u05d0\u05e4\u05e9\u05e8 \u05dc\u05d1\u05e0\u05d5\u05ea \u05e8\u05e7 \u05d1\u05ea\u05d5\u05da \u05d0\u05d6\u05d5\u05e8\u05d9 \u05de\u05dc\u05d7\u05de\u05d4

View File

@ -1,10 +1,133 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Itt nem \u00e9p\u00edthetsz.
build.denied.outside = Csak a j\u00e1t\u00e9kteren bel\u00fcl \u00e9p\u00edthetsz.
build.denied.teamblock = Csak arra haszn\u00e1lhatod a csapatod blokkjait, hogy elfoglald a szobrokat.
build.denied.zone.break = Ez egy t\u00f6rhetelen blokk!
build.denied.zone.multteam = Neked m\u00e1r van {0} blokkod.
build.denied.zone.outside = Nem t\u00f6rhetsz blokkokat az ar\u00e9n\u00e1ban, ha nem j\u00e1tszol
build.denied.zone.place = Nem rakhatsz le blokkokat ebben az ar\u00e9n\u00e1ban.
build.denied.zone.type = Nem m\u00f3dos\u00edthatod a blokk t\u00edpus\u00e1t.
command.console = Ezt nem csin\u00e1lhatod, ha nem j\u00e1tszol.
command.disabled = Csak a War parancsait haszn\u00e1lhatod, amikor j\u00e1tszol. (pl.: /leave)
command.tp.init = V\u00e1rj {0} m\u00e1sodpercet a teleport\u00e1l\u00e1sig. Ha mozogsz, vagy sebz\u0151dsz, az megszak\u00edtja a teleport\u00e1l\u00e1st.
command.tp.moved = Nem tudt\u00e1l teleport\u00e1l\u00f3dni, mert mozogt\u00e1l.
command.tp.damaged = Nem tudt\u00e1l teleport\u00e1l\u00f3dni, mert sebz\u0151dt\u00e9l.
command.tp.success = Elteleport\u00e1l\u00f3dt\u00e1l. K\u00f6sz\u00f6nj\u00fck a t\u00fcrelmet.
drop.bomb.broadcast = {0} eldobta a(z) {1} bomb\u00e1t!
drop.bomb.disabled = Nem dobhatsz el t\u00e1rgyakat, amikor n\u00e1lad van a bomba. Mit csin\u00e1lsz?! Fuss az ellens\u00e9ged spawnj\u00e1ra!
drop.cake.broadcast = {0} eldobta a(z) {1} tort\u00e1t!
drop.cake.disabled = Nem dobhatsz el t\u00e1rgyakat, amikor n\u00e1lad van a torta. Mit csin\u00e1lsz?! Fuss!
drop.flag.broadcast = {0} eldobta a(z) {1} csapat z\u00e1szl\u00f3j\u00e1t.
drop.flag.disabled = Nem dobhatod el a z\u00e1szl\u00f3t. Mit csin\u00e1lsz?! Fuss!
drop.item.border = Nem dobhatsz el t\u00e1rgyakat az ar\u00e9na fal\u00e1nak k\u00f6zel\u00e9ben.
drop.item.disabled = Nem dobhatsz el t\u00e1rgyakat az ar\u00e9n\u00e1ban.
drop.item.spawn = Nem dobhatsz el t\u00e1rgyakat, am\u00edg a spawnon vagy.
drop.team = Nem dobhatsz el {0} blokkot.
drop.wand = Eldobtad a(z) {0} ar\u00e9na kijel\u00f6l\u0151 eszk\u00f6z\u00e9t.
join.aarequired = Ez az ar\u00e9na megk\u00f6veteli az aut\u00f3matikus eloszt\u00e1st.\nL\u00e9pj be az eloszt\u00f3 kapun.
join.broadcast = {0} csatlakozott a(z) {1} csapatba.
join.disabled = Ez az ar\u00e9na le van tiltva.
join.full.all = A csapatok tele vannak.
join.inventorystored = Az eszk\u00f6zt\u00e1rad vissza\u00e1ll, ha kil\u00e9psz a /warp leave paranccsal.
join.permission.single = Nincs jogod, hogy csatlakozz a(z) {0} csapathoz.
join.full.all = A \u00f6sszes csapat tele van.
join.full.single = A(z) {0} csapat tele van.
join.inventorystored = Az eszk\u00f6zt\u00e1rad vissza\u00e1ll, ha kil\u00e9psz a /war leave, vagy a /leave paranccsal.
join.permission.all = Egyik csapatban sem lehetsz, mivel nincs enged\u00e9lyed hozz\u00e1.
join.permission.single = Nincs jogod ahhoz, hogy csatlakozz a(z) {0} csapathoz.
join.progress = nem csatlakozhatsz, am\u00edg a jelenlegi j\u00e1t\u00e9k be nem fejez\u0151dik.
join.selfteam = Nem csatlakozhatsz a saj\u00e1t csapatodba.
join.team404 = Nincs ilyen csapat. Pr\u00f3b\u00e1ld ki a /teams parancsot.
leave.broadcast = {0} kil\u00e9pett az ar\u00e9n\u00e1b\u00f3l.
leave.inventoryrestore = Az eszk\u00f6zt\u00e1rad vissza\u00e1llt.
pvp.death.drown = {0} megfulladt
pvp.death.explosion = {0} felrobbant
pvp.death.fall = {0} kiesett az ar\u00e9n\u00e1b\u00f3l
pvp.death.fire = {0} porr\u00e1 \u00e9gett
pvp.death.other = {0} meghalt
pvp.ff.disabled = Rossz helyre c\u00e9lozt\u00e1l! A csapat t\u00e1rsadat tal\u00e1ltad el.
pvp.ff.enabled = A Friendly fire be van kapcsolva. Ne s\u00e9rtsd meg a csapatt\u00e1rsaidat.
pvp.kill.adjectives = ;;hatalmas;hal\u00e1los;v\u00e9gs\u0151;pontos;brut\u00e1lis;er\u0151teljes
pvp.kill.bomb = {0} felrobbantotta {1}-t
pvp.kill.format = {0} {1} {2} {3} {4}
pvp.kill.self = {0} \u00f6ngyilkoss\u00e1gban meghalt
pvp.kill.verbs = meg\u00f6lte;meg\u00f6lte;meg\u00f6lte;kiv\u00e9gezte;megsemmis\u00edtette;meggyilkolta;els\u00f6p\u00f6rte;kiirtotta
pvp.kill.weapon.aim = ny\u00edlvessz\u0151
pvp.kill.weapon.bow = \u00edj
pvp.kill.weapon.hand = k\u00e9z
pvp.outside.permission = Nem \u00fctheded meg azt, aki nem j\u00e1tszik.
pvp.self.notplaying = J\u00e1tszanod kell ahhoz, hogy megt\u00e1madhass valakit.
pvp.self.respawn = Nem t\u00e1madhatod meg azt, aki most \u00e9led \u00fajra.
pvp.self.spawn = Nem t\u00e1madhatsz, am\u00edg a spawnon \u00e1llsz.
pvp.target.notplaying = Az, akit meg akarsz \u00f6lni, nem j\u00e1tszik.
pvp.target.otherzone = Az, akit meg akarsz \u00f6lni, egy m\u00e1sik ar\u00e9n\u00e1ban j\u00e1tszik,
pvp.target.respawn = Az, akit meg akarsz \u00f6lni, jelenleg \u00fajra\u00e9led!
pvp.target.spawn = Az, akit meg akarsz \u00f6lni a kezd\u0151 ponton van!
sign.lobby.autoassign = Warzone\n{0}\nL\u00e9pj be az\neloszt\u00f3n.
sign.lobby.pick = Warzone\n{0}\nV\u00e1lassz\ncsapatot.
sign.lobby.warhub = \nA WarHub-ba\u00a0\n\n
sign.team.limited = {0} csapat\n{1}/{2} j\u00e1t\u00e9kos\n{3}/{4} pont\n{5} \u00e9let h\u00e1tra
sign.team.unlimited = {0} csapat\n{1}/{2} j\u00e1t\u00e9kos\n{3}/{4} pont\nv\u00e9gtelen \u00e9let
sign.warhub = War hub\n(/warhub)\nV\u00e1lassz\nar\u00e9n\u00e1t!
sign.warzone = Warzone\n{0}\n{1}/{2} j\u00e1t\u00e9kos\n{3} csapat
team.chat.enable = A csapat besz\u00e9lget\u00e9s bekapcsolva. Az \u00fczeneteket, amit k\u00fcldesz, csak a csapatt\u00e1rsaid l\u00e1tj\u00e1k.
team.chat.disable = A csapat besz\u00e9lget\u00e9s kikapcsolva.
use.anvil = Nem haszn\u00e1lhatsz \u00fcll\u0151t, mik\u00f6zben j\u00e1tszol!
use.enchant = Nem haszn\u00e1lhatsz enchant asztalt, mik\u00f6zben j\u00e1tszol!
use.ender = Nem haszn\u00e1lhatsz v\u00e9gzetl\u00e1d\u00e1t, mik\u00f6zben j\u00e1tszol!
use.item.spawn = Nem haszn\u00e1lhatsz t\u00e1rgyakat, am\u00edg a spawnon vagy
use.xpkillmeter = Ez az\u00e9rt van, mert az xpkillmeter be\u00e1ll\u00edt\u00e1s be van kapcsolva.
wand.toofar = A megc\u00e9lzott blokk t\u00fal messze van.
war.notadmin = Ezt nem csin\u00e1lhatod, ha nem vagy War admin (jog: war.admin)
war.notzm = Ezt nem csin\u00e1lhatod, ha nem vagy Z.M. (jog: war.zonemaker)
war.prefix = War>
war.title = War
warhub.none = Nincs warhub a szerveren. Pr\u00f3b\u00e1ld: /zones \u00e9s a /zone parancsot.
warhub.permission = Nincs jogod, hogy a Warhubba teleport\u00e1lj.
warhub.teleport = \u00dcdv a Warhubban. V\u00e1lassz ar\u00e9n\u00e1t!
zone.airstrike = {0} egy l\u00e9git\u00e1mad\u00e1st h\u00edvott!
zone.battle.end = A j\u00e1t\u00e9knak v\u00e9ge. A(z) {0} csapat vesztett: {1} meghalt, \u00e9s nem volt t\u00f6bb \u00e9lete a csapatnak.
zone.battle.newscores = \u00daj pontok - {0}
zone.battle.next = A j\u00e1t\u00e9k megszakadt. Ar\u00e9na \u00fajra\u00e9p\u00edt\u00e9se {0}...
zone.battle.reset = Hamarosan \u00faj j\u00e1t\u00e9k kezd\u0151dik. Ar\u00e9na \u00fajra\u00e9p\u00edt\u00e9se...
zone.battle.resetprogress = \u00dajra\u00e9p\u00edt\u00e9s folyamatban: {0}%, {1} m\u00e1sodperc alatt...
zone.battle.resetcomplete = Az ar\u00e9na \u00fajra\u00e9p\u00fcl {0} m\u00e1sodperc m\u00falva. \u00daj csata kezd\u0151dik.
zone.bomb.broadcast = {0} felrobbantotta a(z) {1} csapat spawnj\u00e1t. A(z) {2} csapat pontja 1 pont.
zone.cake.broadcast = {0} elfoglalta a(z) {1} tort\u00e1t. A(z) {2} csapat \u00f6sszes tagj\u00e1nak felt\u00f6lt\u0151d\u00f6tt az \u00e9lete.
zone.flagcapture.broadcast = {0} megszerezte a(z) {1} csapat z\u00e1szl\u00f3j\u00e1t. A(z) {2} csapatnak 1 pontja van.
zone.flagreturn.deadlock = Nem teheted le a z\u00e1szl\u00f3t, am\u00edg a csapatod z\u00e1szl\u00f3ja nincs a hely\u00e9n.
zone.flagreturn.flag = El kell vinned az ellens\u00e9g z\u00e1szl\u00f3j\u00e1t a csapatod z\u00e1szl\u00f3j\u00e1hoz.
zone.flagreturn.spawn = El kell vinned az ellens\u00e9g z\u00e1szl\u00f3j\u00e1t a csapatod indul\u00f3hely\u00e9hez.
zone.leavenotice = /war leave vagy /leave a kil\u00e9p\u00e9shez.
zone.lifepool.empty = A(z) {0} csapatnak nincs t\u00f6bb \u00e9lete. M\u00e9g egy hal\u00e1l \u00e9s elvesztik a j\u00e1t\u00e9kot.
zone.loadout.equip = Lek\u00e9rted a(z) {0} csomagot (guggolj a v\u00e1lt\u00e1shoz).
zone.loadout.reenter = Nem tudod v\u00e1ltoztatni a csomagot, miut\u00e1n kiment\u00e9l a kezd\u0151 helyr\u0151l.
zone.monument.badblock = A szobrokat a csapatod blokkj\u00e1val kell elfoglalnod. Szerezz egyet a csapatod kezd\u0151 pontj\u00e1r\u00f3l.
zone.monument.capture = A(z) {0} szobrot elfoglalta a(z) {1} csapat.
zone.monument.lose = A(z) {0} csapat elvesz\u00edtette az uralmat a(z) {1} szobor felett.
zone.monument.voodoo = A t\u00e1ncod tetszik a szobor szellem\u00e9nek. Szerezt\u00e9l {0} \u00e9letet!
zone.noteamnotice = Nem lehetsz egy ar\u00e9n\u00e1ban csapat n\u00e9lk\u00fcl.
zone.score.board404 = Enn\u00e9l az ar\u00e9n\u00e1n\u00e1l nem enged\u00e9lyezt\u00e9k az eredm\u00e9nyjelz\u0151t.
zone.score.empty = Nem kaphatsz pontot, am\u00edg egy j\u00e1t\u00e9kos be nem sz\u00e1ll egy m\u00e1sik csapatba.
zone.spawn.minplayers = Nem hagyhatod el a kezd\u0151 helyet, am\u00edg nem lesz minimum {0} j\u00e1t\u00e9kos {1} csapatban.
zone.spawn.timer = Nem hagyhatod el a spawn {0} m\u00e1sodpercig, az \u00fajra \u00e9led\u00e9s ut\u00e1n!
zone.steal.bomb.broadcast = {0} megszerezte a(z) {1} bomb\u00e1t.
zone.steal.bomb.notice = Megszerezted a(z) {0} bomb\u00e1t. Menj a m\u00e1sik csapat kezd\u0151 hely\u00e9hez. Vigy\u00e1zz, hogy ne \u00e9rintkezz senkivel, vagy felrobbansz!
zone.steal.bomb.prevent = Akad\u00e1lyozd meg, hogy {0} el\u00e9rje a kezd\u0151 helyedet a bomb\u00e1val.
zone.steal.cake.broadcast = {0} megszerezte a(z) {1} tort\u00e1t.
zone.steal.cake.notice = Megszerezted a(z) {0} tort\u00e1t. Menj a csapatod kezd\u0151 hely\u00e9hez, hogy pontot kapj \u00e9s felt\u00f6lt\u0151dj\u00f6n az \u00e9leted.
zone.steal.cake.prevent = Akad\u00e1lyozd meg, hogy {0} el\u00e9rje a kezd\u0151hely\u00e9t a tort\u00e1val!
zone.steal.flag.broadcast = {0} megszerezte a(z) {1} csapat z\u00e1szl\u00f3j\u00e1t.
zone.steal.flag.empty = Nem foglalhatod el a(z) {0} csapat z\u00e1szl\u00f3j\u00e1t, mert nincs senki a csapatban.
zone.steal.flag.notice = Megszerezted a(z) {0} csapat z\u00e1szl\u00f3j\u00e1t. Fuss a spawnodra, vagy a z\u00e1szl\u00f3dhoz, hogy a csapatod megkapja a pontot \u00e9rte.
zone.steal.flag.prevent = Akad\u00e1lyozd meg, hogy {0} el\u00e9rje a(z) {1} csapat z\u00e1szl\u00f3j\u00e1t.
zone.stealextra.bomb = Egyszerre csak egy bomb\u00e1t lophatsz!
zone.stealextra.cake = Egyszerre csak egy tort\u00e1t lophatsz!
zone.stealextra.flag = Egyszerre csak egy z\u00e1szl\u00f3t lophatsz!
zone.stealextra.other = Egyszerre csak egy dolgot lophatsz!
zone.teaminfo.format = {0}: {1} pont, {2}/{3} \u00e9let van h\u00e1tra. {4}
zone.teaminfo.none = semmi
zone.teaminfo.prefix = Csapatok:
zone.teleport = \u00dcdv a(z) {0} ar\u00e9n\u00e1ban.
zone.warp.permission = Nincs enged\u00e9lyed, hogy ebbe az ar\u00e9n\u00e1ba teleport\u00e1lj.
zone.zone404 = Nincs ilyen ar\u00e9na.
zone.zoneinfo.format = {0}:\n{1} csapat\n{2} j\u00e1t\u00e9kos
zone.zoneinfo.prefix = Ar\u00e9n\u00e1k:
zone.zoneinfo.teleport = Haszn\u00e1ld a /zone <ar\u00e9na-neve> parancsot, hogy bel\u00e9pj egy ar\u00e9n\u00e1ba.

View File

@ -0,0 +1,133 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Anda tidak boleh membangun disini.
build.denied.outside = Anda hanya boleh membangun dalam sebuah warzone.
build.denied.teamblock = Anda hanya bisa menggunakan balok tim anda untuk merebut sebuah monumen.
build.denied.zone.break = Balok-balok dalam warzone ini tidak bisa dirusak !
build.denied.zone.multteam = Anda telah memiliki sebuah balok {0}.
build.denied.zone.outside = Anda tidak bisa merusak sebuah warzone yang tidak anda mainkan.
build.denied.zone.place = Anda tidak bisa menaruh balok dalam warzone ini.
build.denied.zone.type = Anda tidak bisa mengubah tipe balok ini.
command.console = Anda tidak bisa melakukan ini jika anda tidak sedang bermain.
command.disabled = Anda hanya boleh menggunakan perintah War (contoh : /leave) jika anda sedang bermain.
command.tp.init = Tunggu untuk {0} detik sebelum anda akan diteleportasi. Gerakan yang dilakukan atau cedera yang anda alami akan membatalkan timer
command.tp.moved = Teleportasi telah dibatalkan karena anda telah bergerak.
command.tp.damaged = Teleportasi telah dibatalkan karena anda telah dicederai.
command.tp.success = Anda telah diteleportasi. Terima kasih untuk kesabaran anda.
drop.bomb.broadcast = {0} menjatuhkan bom {1} !
drop.bomb.disabled = Anda tidak bisa menjatuhkan barang saat mencuri bom. Apa yang anda sedang lakukan ?! Larilah menuju ke spawn musuhmu !
drop.cake.broadcast = {0} menjatuhkan kue {1} !
drop.cake.disabled = Anda tidak bisa menjatuhkan barang saat mencuri kue. Apa yang anda sedang lakukan ?! Larilah !
drop.flag.broadcast = {0} menjatuhkan bendera {1} !
drop.flag.disabled = Anda tidak bisa menjatuhkan barang saat mencuri bendera. Apa yang anda sedang lakukan ?! Larilah !
drop.item.border = Anda tidak bisa menjatuhkan barang saat berada didekat perbatasan warzone.
drop.item.disabled = Anda tidak bisa menjatuhkan barang dalam warzone ini.
drop.item.spawn = Anda tidak bisa menjatuhkan barang saat anda masih didalam spawn.
drop.team = Anda tidak bisa menjatuhkan balok {0}.
drop.wand = Anda menjatuhkan tongkat zona {0}.
join.aarequired = Warzone ini memerlukan anda untuk dimasukkan ke sebuah tim secara otomatis. Anda dimohon untuk memasuki gerbang autoassign.
join.broadcast = {0} memasuki tim {1}
join.disabled = Warzone ini sedang ditutup.
join.full.all = Semua tim sudah penuh.
join.full.single = Tim {0} sudah penuh.
join.inventorystored = Barang-barang anda akan disimpan sampai anda keluar dengan /war leave.
join.permission.all = Anda tidak memiliki izin untuk semua tim yang ada dalam warzone ini.
join.permission.single = Anda tidak memiliki izin untuk memasuki tim {0}.
join.progress = Anda tidak bisa memasuki sebuah pertempuran yang sedang berlangsung dalam zona ini.
join.selfteam = Anda tidak bisa memasuki tim anda sendiri.
join.team404 = Tim itu tidak dapat ditemukan. Cobalah menggunakan /teams untuk sebuah daftar.
leave.broadcast = {0} meninggalkan zona ini.
leave.inventoryrestore = Barang-barang anda sedang dipulihkan.
pvp.death.drown = {0} tenggelam
pvp.death.explosion = {0} meledak
pvp.death.fall = {0} jatuh kedalam kematian
pvp.death.fire = {0} terbakar menjadi abu
pvp.death.other = {0} meninggal
pvp.ff.disabled = Serangan anda meleset ! Target anda adalah rekan setim anda !
pvp.ff.enabled = Anda bisa menyerang rekan setim anda ! Tapi, dimohon untuk tidak membunuh mereka.
pvp.kill.adjectives = ;;hebat;mematikan;bagus;tepat;brutal;sangat kuat
pvp.kill.bomb = {0} telah meledakkan {1} !
pvp.kill.format = {1} {2} {3} {4} yang dimiliki {0}
pvp.kill.self = {0} membunuh dirinya sendiri
pvp.kill.verbs = membunuh;membunuh;membunuh;menyelesaikan;menumpaskan;membunuh;mengoyak;membinasakan
pvp.kill.weapon.aim = bidikan
pvp.kill.weapon.bow = bow
pvp.kill.weapon.hand = tangan
pvp.outside.permission = Anda tidak bisa menyerang pemain diluar warzone.
pvp.self.notplaying = Anda harus bermain di warzone untuk menyerang.
pvp.self.respawn = Anda tidak bisa menyerang saat sedang respawn !
pvp.self.spawn = Anda tidak bisa menyerang saat sedang dalam spawn !
pvp.target.notplaying = Target anda sedang tidak bermain dalam warzone ini.
pvp.target.otherzone = Target anda sedang bermain dalam warzone lain.
pvp.target.respawn = Target anda sedang bermain dalam warzone lain.
pvp.target.spawn = Target anda masih berada dalam spawn mereka !
sign.lobby.autoassign = Warzone\n{0}\nMasuklah ke\ngerbang autoassign
sign.lobby.pick = Warzone\n{0}\nPilihlah tim\nanda
sign.lobby.warhub = \nKe pusat War\n
sign.team.limited = Tim {0}\n{1}/{2} pemain\n{3}/{4} poin\n{5} jiwa tersisa
sign.team.unlimited = Team {0}\n{1}/{2} pemain \n{3}/{4} poin \nJiwa tak terbatas
sign.warhub = Pusat War\n(/warhub)\nPilihlah perang\nanda !
sign.warzone = Warzone\n{0}\n{1}/{2} pemain\n{3} tim
team.chat.enable = Mode chat tim telah dinyalakan. Pesan chat biasa anda akan diterima oleh anggota tim anda saja.
team.chat.disable = Mode chat tim telah dimatikan.
use.anvil = Anda tidak bisa menggunakan anvil dalam warzone ini !
use.enchant = Anda tidak bisa menggunakan enchantment table dalam warzone ini !
use.ender = Anda tidak bisa menggunakan ender chest saat bermain dalam sebuah warzone !
use.item.spawn = Anda tidak bisa menggunakan barang apapun saat berada dalam spawn.
use.xpkillmeter = Ini terjadi karena pilihan xpkillmeter yang dinyalakan.
wand.toofar = Balok target anda terlalu jauh.
war.notadmin = Anda tidak bisa melakukan ini jika anda bukan seorang admin War (izin : war.admin).
war.notzm = Anda tidak bisa melakukan ini jika anda bukan seorang pembuat warzone (izin : war.zonemaker)
war.prefix = War>
war.title = War
warhub.none = Tidak ada pusat War dalam server War ini. Cobalah /zones dan /zone.
warhub.permission = Anda tidak mempunyai izin untuk menggunakan teleportasi untuk pergi ke pusat War.
warhub.teleport = Selamat datang di pusat War. Pilihlah perang anda !
zone.airstrike = {0} telah meluncurkan serangan udara !
zone.battle.end = Perang ini telah selesai. Tim {0} telah kalah : {1} meninggal dan tidak ada jiwa yang tersisa dalam kumpulan jiwa-jiwa mereka.
zone.battle.newscores = Skor baru - {0}
zone.battle.next = Perang terganggu. Warzone {0} sedang di-reset...
zone.battle.reset = Perang baru akan segera dimulai. Warzone sedang di-reset...
zone.battle.resetprogress = Kemajuan reset : {0}%, {1} detik...
zone.battle.resetcomplete = Warzone akan di-reset dalam {0} detik. Sebuah perang baru dimulai.
zone.bomb.broadcast = {0} meledakkan spawn tim {1}. Tim {2} mencetak satu poin.
zone.cake.broadcast = {0} telah merebut kue {1}. Tim {2} mencetak satu poin dan mendapat kumpulan jiwa-jiwa yang penuh.
zone.flagcapture.broadcast = {0} telah merebut bendera tim {1}. Tim {2} mencetak satu poin.
zone.flagreturn.deadlock = Anda tidak bisa merebut bendera musuh anda sampai bendera tim anda kembali.
zone.flagreturn.flag = Anda harus merebut bendera musuh anda dalam tempat bendera tim anda.
zone.flagreturn.spawn = Anda harus merebut bendera musuh anda dalam spawn tim anda.
zone.leavenotice = Gunakan /war leave untuk meninggalkan zona ini.
zone.lifepool.empty = Kumpulan jiwa-jiwa tim {0} sudah kosong. Mereka akan kalah jika seseorang dalam tim mereka meninggal !
zone.loadout.equip = Loadout {0} telah diperalati (Tekan SHIFT untuk mengganti)
zone.loadout.reenter = Tidak bisa mengganti loadout setelah meninggalkan spawn.
zone.monument.badblock = Anda harus merebut monumen dengan balok wol yang memiliki warna yang sama dengan warna tim anda. Ambil satu dari spawn anda.
zone.monument.capture = Monumen {0} telah direbut oleh tim {1}.
zone.monument.lose = Tim {0} kehilangan kendali monumen {1}.
zone.monument.voodoo = Tarian anda menyenangkan voodoo monumen. Anda mendapat {0} hati !
zone.noteamnotice = Anda tidak bisa memasuki warzone tanpa sebuah tim.
zone.score.board404 = Warzone ini tidak menyediakan sebuah papan skor.
zone.score.empty = Anda tidak bisa mencetak skor sampai seseorang memasuki sebuah tim lain.
zone.spawn.minplayers = Anda tidak bisa meninggalkan spawn sampai ada minimum {0} pemain dalam setidaknya {1} tim.
zone.spawn.timer = Anda tidak bisa meninggalkan spawn untuk {0} detik setelah respawn !
zone.steal.bomb.broadcast = {0} memiliki bom {1}.
zone.steal.bomb.notice = Anda memiliki bom {0}. Pergilah ke spawn tim lain untuk mencetak skor. Hindari kontak dari orang lain, atau anda akan meledak !
zone.steal.bomb.prevent = Halangi {0} yang bertujuan untuk mencapai spawn anda dengan bomnya !
zone.steal.cake.broadcast = {0} memiliki kue {1}.
zone.steal.cake.notice = Anda memiliki kue {0}. Pergilah ke spawn tim anda untuk mencetak skor dan mengisi kembali kumpulan jiwa-jiwa tim anda.
zone.steal.cake.prevent = Halangi {0} yang bertujuan untuk mencapai spawnnya dengan kuenya !
zone.steal.flag.broadcast = {0} mencuri bendera tim {1}.
zone.steal.flag.empty = Anda tidak bisa mencuri bendera tim {0} karena tidak ada pemain dalam tim itu.
zone.steal.flag.notice = Anda memiliki bendera tim {0}. Pergilah ke spawn tim anda atau tempat bendera tim anda untuk merebutnya !
zone.steal.flag.prevent = Halangi {0} yang bertujuan untuk mencapai spawn tim {1} atau bendera mereka !
zone.stealextra.bomb = Anda hanya boleh mencuri satu bom pada waktu yang sama !
zone.stealextra.cake = Anda hanya boleh mencuri satu kue pada waktu yang sama !
zone.stealextra.flag = Anda hanya boleh mencuri satu bendera pada waktu yang sama !
zone.stealextra.other = Anda hanya boleh mencuri satu barang pada waktu yang sama !
zone.teaminfo.format = {0} : {1} poin, {2}/{3} jiwa tersisa. {4}
zone.teaminfo.none = tidak ada
zone.teaminfo.prefix = Daftar tim :
zone.teleport = Selamat datang di warzone {0}.
zone.warp.permission = Anda tidak memiliki izin untuk menggunakan teleportasi untuk pergi ke warzone itu.
zone.zone404 = Warzone itu tidak dapat ditemukan.
zone.zoneinfo.format = {0} : {1} tim, {2} pemain
zone.zoneinfo.prefix = Daftar warzone :
zone.zoneinfo.teleport = Gunakan /zone <nama-zona> untuk menggunakan teleportasi untuk pergi ke sebuah warzone.

View File

@ -0,0 +1,114 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Non puoi costruire qui.
build.denied.outside = Puoi costruire solo dentro le Warzones.
build.denied.teamblock = Puoi usare solamente i blocchi del tuo team per catturare i monumenti.
build.denied.zone.break = I blocchi in questa warzone non sono distruttibili.
build.denied.zone.multteam = hai gi\u00e0 un blocco {0}
build.denied.zone.outside = Non puoi distruggere in una warzone se non ci stai giocando.
build.denied.zone.place = Non puoi piazzare blocchi in questa warzone.
build.denied.zone.type = Non puoi modificare questo tipo di blocco.
command.console = Non puoi fare questo se non sei in una partita.
command.disabled = Puoi usare solamente i comandi del War ( es. /leave ) mentre giochi.
command.tp.moved = Il teletrasporto \u00e8 stato cancellato poich\u00e8 ti sei mosso.
command.tp.damaged = Il teletrasporto \u00e8 stato cancellato poich\u00e8 hai subito danno.
command.tp.success = Sei stato teletrasportato. Grazie per la pazienza.
drop.bomb.broadcast = {0} ha lanciato la {1} bomba!
drop.bomb.disabled = Non puoi lanciare oggetti mentre stai portando una bomba. Che diavolo stai facendo?! Corri allo spawn del tuo nemico!
drop.cake.broadcast = {0} ha lanciato la {1} torta!
drop.cake.disabled = Non puoi lanciare oggetti mentre stai portando una torta. Che diavolo stai facendo?! Corri!
drop.flag.broadcast = {0} Ha perso la bandiera {1}
drop.flag.disabled = Non puoi lanciare oggetti mentre stai portando una bandiera. Che diavolo stai facendo?! Corri!
drop.item.border = Non puoi droppare oggetti vicino il bordo dell'arena
drop.item.disabled = Non puoi lanciare oggetti in questa warzone.
drop.item.spawn = Non puoi lanciare oggetti mentre sei ancora nello spawn.
drop.team = Non puoi lanciare i blocchi {0}
drop.wand = Hai lanciato l'ascia per l'arena {0}
join.aarequired = Quest'area richiede che tu sia assegnato automaticamente ad un team. Per favore entra dal portale automatico.
join.broadcast = {0} \u00e8 entrato nel team {1}
join.disabled = Questa warzone \u00e8 stata disabilitata.
join.full.all = Tutti i team sono pieni.
join.full.single = Il team {0} \u00e8 pieno.
join.inventorystored = Il tuo inventario \u00e8 stato salvato, ti verr\u00e0 restituito non appena uscirai dall'arena usando /war leave.
join.permission.all = Non hai il permesso per entrare in alcun team disponibile di questa zona.
join.permission.single = Non hai il permesso per entrare nel team {0}.
join.progress = Non puoi entrare in quest'arena, c'\u00e8 una battaglia in corso.
join.selfteam = Non puoi entrare nel tuo stesso team.
join.team404 = Non ho trovato questo team. Prova usando /teams per visualizzare la lista.
leave.broadcast = {0} \u00e8 uscito dall'arena.
leave.inventoryrestore = Ti stiamo ridando il tuo inventario.
pvp.death.drown = {0} \u00e8 affogato
pvp.death.explosion = {0} \u00e8 esploso
pvp.death.fall = {0} ha fatto una morte molto umiliante
pvp.death.fire = {0} ha bruciato fino a diventare croccante
pvp.death.other = {0} \u00e8 morto
pvp.ff.disabled = Hai sbagliato ad attaccare! Hai colpito un tuo compagno.
pvp.ff.enabled = Il fuoco amico \u00e8 acceso! Per favore, non far del male ai tuoi compagni.
pvp.kill.adjectives = ;;potente;mortale;fine;precisa;brutale;potente
pvp.kill.bomb = {0} ha fatto esplodere {1}
pvp.kill.self = {0} ha commesso un suicidio
pvp.kill.verbs = ucciso;ucciso;ucciso;finito;ammutilato;assassinato;obliterato;sterminato
pvp.kill.weapon.aim = scopo
pvp.kill.weapon.bow = arco
pvp.kill.weapon.hand = mano
pvp.outside.permission = Non puoi attaccare utenti fuori dalle warzone.
pvp.self.notplaying = Hai bisogno di essere in una warzone per attaccare.
pvp.self.respawn = Non puoi attaccare mentre stai respawnando!
pvp.self.spawn = Non puoi attaccare mentre sei nello spawn!
pvp.target.notplaying = Il tuo obbiettivo non \u00e8 attualmente nella warzone
pvp.target.otherzone = Il tuo obbiettivo sta giocando in un altra arena.
pvp.target.respawn = L'obbiettivo sta respawnando!
pvp.target.spawn = L'obbiettivo \u00e8 ancora all'interno dello spawn!
sign.lobby.autoassign = Warzone\n{0}\nEntra nel por-\ntale automatico
sign.lobby.pick = Warzone\n{0}\n\nScegli il team
sign.lobby.warhub = \nAlla War hub\n
sign.team.limited = Team {0}\n{1}/{2} giocatori\n{3}/{4} pts\n{5} vite rimaste
sign.team.unlimited = Team {0}\n{1}/{2} giocatori\n{3}/{4} pts\nvite illimitate
sign.warhub = War hub\n(/warhub)\nScegli la\ntua battaglia
sign.warzone = Warzone\n{0}\n{1}/{2} giocatori\n{3} team
team.chat.enable = chat del team abilitata. I tuoi messaggi verranno ricevuti solo dal tuo team.
team.chat.disable = Chat del team disabilitata.
use.anvil = Non puoi usare le anvil in quest'arena!
use.enchant = Non puoi usare i tavoli dell'incantamento in quest'arena!
use.ender = Non puoi usare le ender chest mentre stai giocando in un'arena
use.item.spawn = Non puoi usare gli oggetti mentre sei ancora nello spawn.
use.xpkillmeter = l'opzione xpkillmeter \u00e8 stata abilitata.
wand.toofar = Il tuo obbiettivo \u00e8 troppo lontano.
war.notadmin = Non puoi eseguire quest'azione se non sei un admin (permesso: war.admin).
war.notzm = Non puoi eseguire questa azione se non sei un creatore (permesso: war.zonemaker).
war.prefix = War>
war.title = War>
warhub.none = Non sono presenti warhub su questo server. Prova con /zones e/o /zone
warhub.permission = Non hai il permesso per teletrasportarti alla warhub
warhub.teleport = Benvenuto alla WarHub. Scegli la tua battaglia!
zone.airstrike = {0} ha chiamato un bombardamento!
zone.battle.end = La battaglia \u00e8 terminata. Team {0} ha perso: {1} morti e non hanno pi\u00f9 vite.
zone.battle.newscores = Nuovi punteggi - {0}
zone.battle.next = La battaglia \u00e8 stata interrotta. Resettando la WarZone {0}...
zone.battle.reset = Una nuova battaglia inizier\u00e0 presto. Resettando la WarZone...
zone.battle.resetprogress = Progresso di reset: {0}%, {1} secondi
zone.bomb.broadcast = {0} ha fatto esplodere lo spawn del team {1}. Il Team {2} riceve un punto.
zone.cake.broadcast = {0} ha catturato la torta {1}. Il team {2} riceve un punto e riceve nuovamente tutte le vite.
zone.flagcapture.broadcast = {0} ha catturato la bandiera del team {1}. Il Team {2} riceve un punto.
zone.flagreturn.deadlock = Non puoi catturare la bandiera del nemico finch\u00e8 la vostra non torna al piedistallo.
zone.flagreturn.flag = Per catturare la bandiera nemica devi portarla a quella del tuo team.
zone.flagreturn.spawn = Hai bisogno di andare allo spawn del tuo team per catturare la bandiera nemica.
zone.leavenotice = Usa /war leave per uscire dalla zona
zone.lifepool.empty = Il team {0} non ha pi\u00f9 vite, un ultima morte e perderanno la battaglia!
zone.loadout.equip = Equipaggiato l'equipaggiamento {0} (accovacciati per cambiare).
zone.loadout.reenter = Non sar\u00e0 pi\u00f9 possibile modificare l'equipaggiamento dopo esser usciti dallo spawn.
zone.monument.badblock = Devi catturare il monumento con un blocco della lana del tuo team, prendine uno allo spawn del tuo team.
zone.monument.capture = Il monumento {0} \u00e8 stato catturato dal team {1}
zone.monument.lose = Team {0} ha perso il controllo del monumento {1}
zone.monument.voodoo = La tua danza ha commosso il modumento voodo, hai ricevuto {0} cuore/i!
zone.noteamnotice = Non puoi stare dentro ad una warzone senza essere in un team.
zone.score.empty = Non puoi eseguire alcun punteggio finch\u00e8 almeno un giocatore non entra nel team nemico.
zone.spawn.minplayers = Non puoi lasciare lo spawn finch\u00e8 non c'\u00e8 almeno un minimo di {0} giocatori nel team {1}
zone.steal.bomb.broadcast = {0} ha la bomba {1}.
zone.steal.cake.broadcast = {0} ha la torta {1}.
zone.teaminfo.none = nulla
zone.teleport = Benvenuto alla warzone {0}.
zone.warp.permission = Non hai il permesso per teletrasportarti alla Warzone.
zone.zone404 = Warzone non trovata.
zone.zoneinfo.format = {0}: {1} team, {2} giocatori
zone.zoneinfo.prefix = Warzones:
zone.zoneinfo.teleport = Usa /zone <nome-zona> per teletrasportarti ad una warzone.

View File

@ -1,70 +1,74 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = \uc774\uacf3\uc5d0\uc11c \ube14\ub7ed\uc744 \uc124\uce58\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
build.denied.location = \uc5ec\uae30\uc11c \ube14\ub7ed\uc744 \uc124\uce58\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
build.denied.outside = \uc804\uc7c1\uad6c\uc5ed \ub0b4\uc5d0\uc11c\ub9cc \ube14\ub7ed\uc744 \uc124\uce58\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
build.denied.teamblock = \uc790\uc2e0\uc758 \ud300 \ube14\ub7ed\ub9cc\uc744 \uc774\uc6a9\ud574 \uc804\uc7c1\uad6c\uc5ed \uc911\uc2ec\uc5d0 \uc788\ub294 \uae43\ubc1c\ub85c \uaf42\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
build.denied.teamblock = \ub2f9\uc2e0\uc758 \ud300 \ube14\ub7ed\ub9cc\uc744 \uc774\uc6a9\ud574 \uae43\ubc1c\ub85c \uaf42\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
build.denied.zone.break = \uc774 \uc804\uc7c1\uc5d0\uc11c \ube14\ub7ed\uc744 \ud30c\uad34\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
build.denied.zone.multteam = \uc774\ubbf8 {0} \ube14\ub7ed\uc744 \uac00\uc9c0\uace0 \uc788\uc2b5\ub2c8\ub2e4.
build.denied.zone.outside = \uc804\uc7c1\uc5d0 \ucc38\uc5ec\ud558\uc9c0 \uc54a\uace0 \uc804\uc7c1\uad6c\uc5ed\uc5d0\uc11c \ube14\ub7ed\uc744 \ud30c\uad34\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
build.denied.zone.place = \uc774 \uc804\uc7c1\uc5d0\uc11c \ube14\ub7ed\uc744 \uc124\uce58\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
build.denied.zone.type = \uc804\uc7c1\uc5d0\uc11c \uc774 \ube14\ub7ed\uc744 \uc124\uce58 \ub610\ub294 \ud30c\uad34\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
command.console = \ucf58\uc194\uc5d0\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc5c6\ub294 \ucee4\ub9e8\ub4dc\uc785\ub2c8\ub2e4.
command.disabled = \uac8c\uc784\ub3c4\uc911\uc5d0\ub294 \uc804\uc7c1\uac8c\uc784 \ucee4\ub9e8\ub4dc (\uc608\uc2dc: /leave) \uc774\uc678\uc5d0\ub294 \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
drop.bomb.broadcast = {0} \uc774(\uac00) {1} \uc5d0\uac8c \ud3ed\ud0c4\uc744 \ud22c\ud558\ud588\uc2b5\ub2c8\ub2e4!
drop.bomb.disabled = \ud3ed\ud0c4\uc744 \ud6d4\uce58\uba74 \uc544\uc774\ud15c\uc744 \ub5a8\uc5b4\ub728\ub9b4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc9c0\uae08 \ub2f9\uc7a5 \uc801\uad70 \uae30\uc9c0\uc758 \uc2a4\ud3f0\uc73c\ub85c \uac00\uc2ed\uc2dc\uc624!
drop.cake.broadcast = {0} \uc774(\uac00) {1} \uc5d0\uac8c \ud3ed\ud0c4\uc744 \ud22c\ud558\ud588\uc2b5\ub2c8\ub2e4!
drop.cake.disabled = \ucf00\uc774\ud06c\ub97c \ud6d4\uce60 \ub54c \uc544\uc774\ud15c\uc744 \ub5a8\uc5b4\ub728\ub9b4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \ube68\ub9ac \ub6f0\uc2ed\uc2dc\uc624!
drop.flag.broadcast = {0} \uc774(\uac00) {1} \uc5d0\uac8c \uae43\ubc1c\uc744 \ub5a8\uc5b4\ub728\ub838\uc2b5\ub2c8\ub2e4!
drop.flag.disabled = \uae43\ubc1c\uc744 \ud6d4\uce60 \ub54c \uc544\uc774\ud15c\uc744 \ub5a8\uc5b4\ub728\ub9b4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \ube68\ub9ac \ub6f0\uc2ed\uc2dc\uc624!
command.disabled = \uac8c\uc784\ub3c4\uc911\uc5d0\ub294 \uc804\uc7c1\uac8c\uc784 \ucee4\ub9e8\ub4dc (\uc608: /leave) \uc678\uc5d0\ub294 \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
command.tp.init = \ud154\ub808\ud3ec\ud2b8\uac00 {0} \ucd08 \ud6c4 \uc2e4\ud589\ub418\ubbc0\ub85c \uc7a0\uc2dc\ub9cc \uae30\ub2e4\ub824\uc8fc\uc138\uc694. \uc6c0\uc9c1\uc774\uac70\ub098 \ub370\ubbf8\uc9c0\ub97c \ubc1b\uc73c\uba74 \ud154\ub808\ud3ec\ud2b8\uac00 \ucde8\uc18c\ub429\ub2c8\ub2e4.
command.tp.moved = \uc6c0\uc9c1\uc5ec\uc11c \ud154\ub808\ud3ec\ud2b8\uac00 \ucde8\uc18c\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
command.tp.damaged = \ub370\ubbf8\uc9c0\ub97c \ubc1b\uc544\uc11c \ud154\ub808\ud3ec\ud2b8\uac00 \ucde8\uc18c\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
command.tp.success = \ud154\ub808\ud3ec\ud2b8 \ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uae30\ub2e4\ub824 \uc8fc\uc154\uc11c \uac10\uc0ac\ud569\ub2c8\ub2e4.
drop.bomb.broadcast = {0} \uc774/\uac00 {1} \ud3ed\ud0c4\uc744 \ud22c\ud558\ud588\uc2b5\ub2c8\ub2e4!
drop.bomb.disabled = \ud3ed\ud0c4\uc744 \uac00\uc9c0\uace0 \uc788\ub294 \ub3d9\uc548, \ub2f9\uc2e0\uc740 \uc544\uc774\ud15c\uc744 \ub5a8\uc5b4\ub728\ub9b4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc9c0\uae08 \ub2f9\uc7a5 \uc801\uad70 \uae30\uc9c0\uc758 \uc2a4\ud3f0\uc73c\ub85c \uac00\uc2ed\uc2dc\uc624!
drop.cake.broadcast = {0} \uc774/\uac00 {1} \ucf00\uc774\ud06c\ub97c \ud22c\ud558\ud588\uc2b5\ub2c8\ub2e4!
drop.cake.disabled = \ucf00\uc774\ud06c\ub97c \uac00\uc9c0\uace0 \uc788\ub294 \ub3d9\uc548, \ub2f9\uc2e0\uc740 \uc544\uc774\ud15c\uc744 \ub5a8\uc5b4\ub728\ub9b4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \ube68\ub9ac \ub6f0\uc2ed\uc2dc\uc624!
drop.flag.broadcast = {0} \uc774/\uac00 {1} \uae43\ubc1c\uc744 \ub5a8\uc5b4\ub728\ub838\uc2b5\ub2c8\ub2e4!
drop.flag.disabled = \uae43\ubc1c\uc744 \uac00\uc9c0\uace0 \uc788\ub294 \ub3d9\uc548, \ub2f9\uc2e0\uc740 \uc544\uc774\ud15c\uc744 \ub5a8\uc5b4\ub728\ub9b4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \ube68\ub9ac \ub6f0\uc2ed\uc2dc\uc624!
drop.item.border = \uc804\uc7c1\uad6c\uc5ed \uacbd\uacc4\uc120 \uadfc\ucc98\uc5d0\uc11c \uc544\uc774\ud15c\uc744 \ub5a8\uc5b4\ub728\ub9b4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
drop.item.disabled = \uc774 \uc804\uc7c1\uc5d0\uc11c \uc544\uc774\ud15c\uc744 \ub5a8\uc5b4\ub728\ub9b4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
drop.item.disabled = \uc774 \uc804\uc7c1\uad6c\uc5ed\uc5d0\uc11c\ub294 \uc544\uc774\ud15c\uc744 \ub5a8\uc5b4\ub728\ub9b4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
drop.item.spawn = \uae30\uc9c0 \uc2a4\ud3f0\uad6c\uc5ed\uc5d0\uc11c\ub294 \uc544\uc774\ud15c\uc744 \ub5a8\uc5b4\ub728\ub9b4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
drop.team = {0} \ube14\ub7ed\uc744 \ub5a8\uc5b4\ub728\ub9b4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
drop.wand = \uc804\uc7c1\uad6c\uc5ed\uc5d0 {0} wand \ub97c \ub5a8\uc5b4\ub728\ub838\uc2b5\ub2c8\ub2e4.
join.aarequired = \uc804\uc7c1\uc744 \ucc38\uac00\ud558\ub824\uba74 \ud300\uc5d0 \uac00\uc785\ub418\uc5b4\uc57c\ub429\ub2c8\ub2e4. \uc804\uc7c1\ucc38\uac00 \uac8c\uc774\ud2b8\ub97c \ud1b5\uacfc\ud558\uc2ed\uc2dc\uc624.
join.broadcast = {0} \uc774(\uac00) {1} \ud300\uc73c\ub85c \uc804\uc7c1\uc5d0 \ucc38\uac00\ud588\uc2b5\ub2c8\ub2e4.
join.broadcast = {0} \uc774/\uac00 {1} \ud300\uc5d0 \ucc38\uc5ec\ud588\uc2b5\ub2c8\ub2e4.
join.disabled = \uc774 \uc804\uc7c1\uc740 \ud604\uc7ac \ube44\ud65c\uc131\ud654 \ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
join.full.all = \uc774 \uc804\uc7c1\uc758 \ubaa8\ub4e0 \ud300 \uc778\uc6d0\uc218\uac00 \ucc3c\uc2b5\ub2c8\ub2e4.
join.full.single = {0} \ud300 \uc778\uc6d0\uc218\uac00 \ucc3c\uc2b5\ub2c8\ub2e4.
join.inventorystored = \ub2f9\uc2e0\uc758 \uc778\ubca4\ud1a0\ub9ac\uac00 \ube44\uc6cc\uc84c\uc9c0\ub9cc \uc800\uc7a5\ub418\uc5b4 \uc804\uc7c1\uc774 \ub05d\ub098\uac70\ub098 /war leave \ub97c \uc785\ub825\ud558\uba74 \ub2e4\uc2dc \ubcf5\uad6c\ub429\ub2c8\ub2e4.
join.permission.all = \uc774 \uc804\uc7c1\uc758 \uc5b4\ub5a4 \ud300\uc5d0\ub3c4 \ucc38\uac00\ud560 \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.
join.permission.single = {0} \ud300\uc5d0 \ucc38\uac00\ud560 \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.
join.progress = \uc774 \uc804\uc7c1\uc740 \ud604\uc7ac \uc9c4\ud589\uc911\uc774\uc5ec\uc11c \ucc38\uac00\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
join.selfteam = \uc774\ubbf8 \uc790\uc2e0\uc758 \uc804\uc7c1 \ud300\uc5d0 \uc18c\uc18d\ub41c \ud300\uc73c\ub85c \ucc38\uac00\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
join.team404 = \uc785\ub825\ud55c \ud300\uc744 \ucc3e\uc744 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. /teams \ub97c \uc785\ub825\ud574 \ud300 \ubaa9\ub85d\uc744 \ubcf4\uc2ed\uc2dc\uc624.
leave.broadcast = {0} \uc774(\uac00) \uc804\uc7c1\uc5d0\uc11c \ub098\uac14\uc2b5\ub2c8\ub2e4.
leave.inventoryrestore = \ub2f9\uc2e0\uc758 \uc778\ubca4\ud1a0\ub9ac\uac00 \ub2e4\uc2dc \ubcf5\uad6c\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
pvp.death.drown = {0} \uc774(\uac00) \ubb3c\uc5d0 \ube60\uc838 \uc8fd\uc5c8\uc2b5\ub2c8\ub2e4
pvp.death.explosion = {0} \uc774(\uac00) \ud3ed\ubc1c\ub85c \uc8fd\uc5c8\uc2b5\ub2c8\ub2e4
pvp.death.fall = {0} \uc774(\uac00) \ub099\uc0ac\ud574\uc11c \uc8fd\uc5c8\uc2b5\ub2c8\ub2e4
pvp.death.fire = {0} \uc774(\uac00) \ubd88\uc5d0 \ud0c0\uc11c \uc8fd\uc5c8\uc2b5\ub2c8\ub2e4
pvp.death.other = {0} \uc774(\uac00) \uc8fd\uc5c8\uc2b5\ub2c8\ub2e4
pvp.ff.disabled = \uc790\uc2e0\uc758 \ud300\uc6d0\uc744 \uacf5\uaca9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc801\uc744 \uacf5\uaca9\ud558\uc2ed\uc2dc\uc624
pvp.ff.enabled = \ud300\ub3d9\ub8cc\ub97c \uacf5\uaca9\ud558\uc9c0 \uc54a\ub294\uac8c \uc88b\uaca0\uc2b5\ub2c8\ub2e4.
pvp.kill.adjectives = ;;\uac15\ub825\ud55c;\uc8fd\uc74c\uc758;\ud6cc\ub96d\ud55c;\uc815\ud655\ud55c;\uc794\uc778\ud55c;\ub9e4\uc6b0\uac15\ub825\ud55c
pvp.kill.bomb = {0} \uc774(\uac00) {1} \uc744(\ub97c) \ud130\ub728\ub838\uc2b5\ub2c8\ub2e4!
join.permission.single = \ub2f9\uc2e0\uc740 {0} \ud300\uc5d0 \ucc38\uc5ec\ud560 \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.
join.progress = \uc774 \uad6c\uc5ed\uc740 \uc774\ubbf8 \uac8c\uc784\uc774 \uc9c4\ud589\uc911\uc774\uc5ec\uc11c \ucc38\uc5ec\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
join.selfteam = \uc774\ubbf8 \uc774 \ud300\uc5d0 \ucc38\uc5ec\ud574 \uc788\uc2b5\ub2c8\ub2e4.
join.team404 = \uc785\ub825\ud55c \ud300\uc744 \ucc3e\uc744 \uc218 \uc5c6\uc5c8\uc2b5\ub2c8\ub2e4. \ud300 \ubaa9\ub85d\uc744 \ubcf4\ub824\uba74: /teams
leave.broadcast = {0} \uc774/\uac00 \uad6c\uc5ed\uc744 \ub098\uac14\uc2b5\ub2c8\ub2e4.
leave.inventoryrestore = \ub2f9\uc2e0\uc758 \uc778\ubca4\ud1a0\ub9ac\uac00 \uc774\uc804 \uc0c1\ud0dc\ub85c \ubcf5\uad6c\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
pvp.death.drown = {0} \uc774/\uac00 \ubb3c\uc5d0 \ube60\uc838 \uc8fd\uc5c8\uc2b5\ub2c8\ub2e4
pvp.death.explosion = {0} \uc774/\uac00 \ud3ed\ubc1c\ub85c \uc8fd\uc5c8\uc2b5\ub2c8\ub2e4
pvp.death.fall = {0} \uc774/\uac00 \ub099\uc0ac\ub85c \uc8fd\uc5c8\uc2b5\ub2c8\ub2e4
pvp.death.fire = {0} \uc774/\uac00 \ubd88\uc5d0 \ubc14\uc0ad\ud558\uac8c \ud0c0\uc11c \uc8fd\uc5c8\uc2b5\ub2c8\ub2e4
pvp.death.other = {0} \uc774/\uac00 \uc8fd\uc5c8\uc2b5\ub2c8\ub2e4
pvp.ff.disabled = \uc798\ubabb\ub41c \uc0ac\ub78c\uc744 \ub54c\ub838\uc2b5\ub2c8\ub2e4! \uc774 \uc0ac\ub78c\uc740 \ub2f9\uc2e0\uc758 \ud300\uc785\ub2c8\ub2e4.
pvp.ff.enabled = \ud300 \ub3d9\ub8cc\ub97c \uacf5\uaca9\ud558\uc9c0 \uc54a\ub294\uac8c \uc88b\uaca0\uc2b5\ub2c8\ub2e4.
pvp.kill.adjectives = ;;\uac15\ud55c;\uc8fd\uc74c\uc758;\ud6cc\ub96d\ud55c;\uc815\ud655\ud55c;\uc794\uc778\ud55c;\uac15\ub825\ud55c
pvp.kill.bomb = {0} \uc774/\uac00 {1} \uc744/\ub97c \ud130\ub728\ub838\uc2b5\ub2c8\ub2e4!
pvp.kill.format = {0} \uc758 {1} {2} {3} {4}
pvp.kill.self = {0} \uc774(\uac00) \uc790\uc0b4\ud588\uc2b5\ub2c8\ub2e4
pvp.kill.self = {0} \uc774/\uac00 \uc790\uc0b4\ud588\uc2b5\ub2c8\ub2e4
pvp.kill.verbs = \uc5d0 \uc8fd\uc740;\uc5d0 \uc8fd\uc740;\uc5d0 \uc8fd\uc740;\uc5d0 \uc8fd\uc740;\uc5d0 \uc8fd\uc740;\uc5d0 \uc8fd\uc740;\uc5d0 \uc8fd\uc740;\uc5d0 \uc8fd\uc740
pvp.kill.weapon.aim = \ubaa9\ud45c
pvp.kill.weapon.aim = \ubaa9\uc801
pvp.kill.weapon.bow = \ud65c
pvp.kill.weapon.hand = \uc190
pvp.outside.permission = \uc804\uc7c1\uad6c\uc5ed \ubc16\uc5d0 \uc788\ub294 \ud50c\ub808\uc774\uc5b4\ub97c \uacf5\uaca9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
pvp.self.notplaying = \uc804\uc7c1\uc911\uc5d0\ub9cc \uacf5\uaca9\uc774 \uac00\ub2a5\ud569\ub2c8\ub2e4.
pvp.self.respawn = \ub9ac\uc2a4\ud3f0 \ub3c4\uc911 \uacf5\uaca9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4!
pvp.self.spawn = \uc2a4\ud3f0\uad6c\uc5ed \uc548\uc5d0 \uc788\uc744 \ub54c \uacf5\uaca9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4!
pvp.self.notplaying = \uc804\uc7c1\uad6c\uc5ed \uc548\uc5d0\uc11c \uac8c\uc784 \uc911\uc5d0\ub9cc \uacf5\uaca9\uc774 \uac00\ub2a5\ud569\ub2c8\ub2e4.
pvp.self.respawn = \ub9ac\uc2a4\ud3f0 \uc911 \uacf5\uaca9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4!
pvp.self.spawn = \uc2a4\ud3f0\uad6c\uc5ed \uc548\uc5d0\uc11c \uacf5\uaca9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4!
pvp.target.notplaying = \uc804\uc7c1\uc5d0 \ucc38\uac00\ud558\uc9c0 \uc54a\uc740 \ud50c\ub808\uc774\uc5b4\ub97c \uacf5\uaca9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
pvp.target.otherzone = \ub2e4\ub978 \uc804\uc7c1\uac8c\uc784\uc5d0 \ucc38\uac00\ud55c \ud50c\ub808\uc774\uc5b4\ub97c \uacf5\uaca9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
pvp.target.respawn = \ub9ac\uc2a4\ud3f0\uc911\uc778 \ud50c\ub808\uc774\uc5b4\ub97c \uacf5\uaca9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4!
pvp.target.spawn = \uc2a4\ud3f0\uc9c0\uc5ed\uc5d0 \uc788\ub294 \ud50c\ub808\uc774\uc5b4\ub97c \uacf5\uaca9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4!
sign.lobby.autoassign = {0}\n\uc804\uc7c1\n\uac8c\uc774\ud2b8\ub97c\n\ud1b5\uacfc\ud558\uc2ed\uc2dc\uc624.
sign.lobby.pick = \uc804\uc7c1\uad6c\uc5ed\n{0} \n \n\ud300\uc744 \uc120\ud0dd\ud558\uc2ed\uc2dc\uc624.
sign.lobby.warhub = \n\uc804\uc7c1\ub85c\ube44\ub85c \uac00\uae30\n\n
sign.team.limited = {0} \ud300\n\uc778\uc6d0\uc218: {1}/{2}\n\ud3ec\uc778\ud2b8: {3}/{4}\n\ub0a8\uc740 \ubaa9\uc228: {5}
sign.team.unlimited = {0} \ud300\n\uc778\uc6d0\uc218: {1}/{2}\n\ud3ec\uc778\ud2b8: {3}/{4}\n\ubaa9\uc228 \ubb34\uc81c\ud55c
sign.warhub = \uc804\uc7c1\ub85c\ube44\n(/warhub)\n\uc6d0\ud558\ub294 \uc804\uc7c1\uc885\ub958\n\ub97c \uc120\ud0dd\ud558\uc2ed\uc2dc\uc624!
sign.warzone = \uc804\uc7c1\uad6c\uc5ed\n{0}\n\uc778\uc6d0\uc218: {1}/{2}\n\ud300: {3} \uac1c
sign.lobby.autoassign = \uc804\uc7c1\uad6c\uc5ed\n{0}\n\uac8c\uc784\ucc38\uc5ec \uac8c\uc774\ud2b8\ub97c\n\ud1b5\uacfc\ud558\uc2ed\uc2dc\uc624.
sign.lobby.pick = \uc804\uc7c1\uad6c\uc5ed\n{0} \n \n\ud300\uc744 \uc120\ud0dd\ud558\uc138\uc694.
sign.lobby.warhub = \n\uc804\uc7c1 \ub85c\ube44\ub85c \uac00\uae30\n
sign.team.limited = {0} \ud300\n\uc720\uc800: {1}/{2}\n\ud3ec\uc778\ud2b8: {3}/{4}\n\ub0a8\uc740 \ubaa9\uc228: {5}
sign.team.unlimited = {0} \ud300\n\uc720\uc800: {1}/{2}\n\ud3ec\uc778\ud2b8: {3}/{4}\n\ubaa9\uc228 \ubb34\uc81c\ud55c
sign.warhub = \uc804\uc7c1\ub85c\ube44\n(/warhub)\n\uc804\uc7c1 \uc885\ub958\ub97c\n\uc120\ud0dd\ud558\uc138\uc694!
sign.warzone = \uc804\uc7c1\uad6c\uc5ed\n{0}\n\uc720\uc800: {1}/{2}\n\ud300: {3}
team.chat.enable = \ud300\ub07c\ub9ac \ucc44\ud305\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub2f9\uc2e0\uc758 \uc77c\ubc18\ucc44\ud305 \uba54\uc2dc\uc9c0\uac00 \ub2f9\uc2e0\uc758 \ud300\uc5d0\uac8c\ub9cc \ubcf4\uc77c \uac83\uc785\ub2c8\ub2e4.
team.chat.disable = \ud300\ub07c\ub9ac \ucc44\ud305\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
team.chat.disable = \ud300\ub07c\ub9ac \ucc44\ud305\ud560 \uc218 \uc5c6\ub3c4\ub85d \uc124\uc815\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
use.anvil = \uc774 \uc804\uc7c1\uc5d0\uc11c \ubaa8\ub8e8\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4!
use.enchant = \uc774 \uc804\uc7c1\uc5d0\uc11c \ub3c4\uad6c\ub97c \uc778\ucc48\ud2b8\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4!
use.ender = \uc5d4\ub354\uc0c1\uc790\ub97c \uc804\uc7c1 \uc911 \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4!
@ -78,13 +82,13 @@ war.title = \uc804\uc7c1
warhub.none = \uc774 \uc11c\ubc84\uc5d0 \uc804\uc7c1\ub85c\ube44\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. /zones \ub97c \uc785\ub825\ud574 \ucc38\uc5ec\uac00\ub2a5\ud55c \uc804\uc7c1\uad6c\uc5ed\uc744 \uc54c\uc544\ubcf4\uc2ed\uc2dc\uc624.
warhub.permission = \uc804\uc7c1\ub85c\ube44\ub85c \ud154\ub808\ud3ec\ud2b8\ud560 \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.
warhub.teleport = \uc804\uc7c1\ub85c\ube44\uc5d0 \uc624\uc2e0\uac83\uc744 \ud658\uc601\ud569\ub2c8\ub2e4! \uc6d0\ud558\ub294 \uc804\uc7c1\uc744 \uc120\ud0dd\ud558\uc2ed\uc2dc\uc624.
zone.airstrike = {0} \uc774(\uac00) \uc5d0\uc5b4\uc2a4\ud2b8\ub77c\uc774\ucee4\uac00 \ub418\uc5c8\uc2b5\ub2c8\ub2e4.
zone.airstrike = {0} \uc774/\uac00 \uc5d0\uc5b4\uc2a4\ud2b8\ub77c\uc774\ucee4\uac00 \ub418\uc5c8\uc2b5\ub2c8\ub2e4.
zone.battle.end = \uc804\uc7c1\uc774 \uc885\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4. {1} \uba85\uc774 \uc8fd\uace0 \ubaa9\uc228\uc774 \ub354 \uc774\uc0c1 \uc5c6\uc5b4 {0} \ud300\uc774 \uc84c\uc2b5\ub2c8\ub2e4.
zone.battle.newscores = \uc2e0\uaddc \uc810\uc218 - {0}
zone.battle.next = {0} \uc804\uc7c1\uad6c\uc5ed\uc744 \uc7ac\uc2dc\uc791\ud558\uba74\uc11c \uc804\uc7c1\uc774 \uc911\ub2e8\ub418\uc5c8\uc2b5\ub2c8\ub2e4..
zone.battle.next = {0} \uc804\uc7c1\uad6c\uc5ed\uc744 \uc911\ub2e8\ud558\uace0 \uc7ac\uc2dc\uc791\ud569\ub2c8\ub2e4..
zone.battle.reset = \uace7 \uc0c8\ub85c\uc6b4 \uc804\uc7c1\uc774 \uc2dc\uc791\ub429\ub2c8\ub2e4. \uc804\uc7c1\uad6c\uc5ed\uc774 \uc7ac\uc2dc\uc791\uc911\uc785\ub2c8\ub2e4..
zone.battle.resetprogress = {0}% \uc7ac\uc2dc\uc791\uc911, {1}\ucd08..
zone.battle.resetcomplete = \uc804\uc7c1\uc774 \uc7ac\uc2dc\uc791\ub418\ub294\ub370 {0} \ucd08\uac00 \uac78\ub838\uc2b5\ub2c8\ub2e4. \uc0c8\ub85c\uc6b4 \uc804\uc7c1\uc774 \uc2dc\uc791\ub429\ub2c8\ub2e4.
zone.battle.resetcomplete = \uc804\uc7c1\uc774 {0} \ucd08 \uc548\uc5d0 \uc7ac\uc2dc\uc791\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uc0c8\ub85c\uc6b4 \uc804\uc7c1\uc774 \uc2dc\uc791\ub429\ub2c8\ub2e4.
zone.bomb.broadcast = {0} \ud300\uc774 {1} \ud300\uc758 \uc2a4\ud3f0\uc7a5\uc18c\ub97c \ud3ed\ubc1c\uc2dc\ucf30\uc2b5\ub2c8\ub2e4. {2} \ud300\uc774 1\uc810\uc744 \ud68d\ub4dd\ud588\uc2b5\ub2c8\ub2e4.
zone.cake.broadcast = {0} \ud300\uc774 {1} \ud300\uc758 \ucf00\uc774\ud06c\ub97c \uc7a1\uc558\uc2b5\ub2c8\ub2e4. {2} \ud300\uc774 1\uc810\uc744 \ud68d\ub4dd\ud558\uace0 \ubaa9\uc228\uc774 \ubaa8\ub450 \ucc44\uc6cc\uc9d1\ub2c8\ub2e4.
zone.flagcapture.broadcast = {0} \ud300\uc774 {1} \ud300\uc758 \uae43\ubc1c\uc744 \uc7a1\uc558\uc2b5\ub2c8\ub2e4. {2} \ud300\uc774 1\uc810\uc744 \ud68d\ub4dd\ud588\uc2b5\ub2c8\ub2e4.
@ -101,19 +105,19 @@ zone.monument.lose = {0} \ud300\uc774 {1} \uc911\uc559\ud0d1\uc744 \uc783\uc5c8\
zone.monument.voodoo = \uc911\uc559\ud0d1\uc744 \uc5bb\uc5b4 {0} \uac1c\uc758 \ubaa9\uc228\uc744 \uc5bb\uc5c8\uc2b5\ub2c8\ub2e4!
zone.noteamnotice = \uc804\uc7c1\uac8c\uc784\uc758 \ud300\uc5d0 \uc18c\uc18d\ub418\uc9c0 \uc54a\uc73c\uba74 \uc804\uc7c1\uad6c\uc5ed\uc5d0 \ub4e4\uc5b4\uac08 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
zone.score.board404 = \uc774 \uc804\uc7c1\uad6c\uc5ed\uc740 \uc2a4\ucf54\uc5b4\ubcf4\ub4dc\uac00 \uc0ac\uc6a9\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
zone.score.empty = \ub2f9\uc2e0\uc740 \uc801\ud300\uc5d0 \ucd5c\uc18c \ud55c\uba85\uc774\uc0c1\uc774 \ub4e4\uc5b4\uc624\uc9c0 \uc54a\ub294 \ud55c, \uc810\uc218\ub97c \ub0bc \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
zone.score.empty = \uc801\ud300\uc758 \uc778\uc6d0\uc218\uac00 \ucd5c\uc18c \ud55c\uba85\uc774\uc0c1\uc774\uc5ec\uc57c\ub9cc \uacf5\uaca9\ud574 \uc810\uc218\ub97c \uc5bb\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
zone.spawn.minplayers = \ucd5c\uc18c {1} \uac1c\uc758 \ud300\uc5d0\uc11c {0} \uba85\uc774\uc0c1\uc758 \ud50c\ub808\uc774\uc5b4\uac00 \uc788\uc5b4\uc57c\ub9cc \uc2a4\ud3f0\uc9c0\uc5ed\uc5d0\uc11c \ub098\uc62c \uc218 \uc788\uc2b5\ub2c8\ub2e4.
zone.spawn.timer = \ub9ac\uc2a4\ud3f0 \ud6c4 {0} \ucd08 \ub3d9\uc548 \uc2a4\ud3f0\uc9c0\uc5ed\uc5d0\uc11c \ub098\uc62c \uc218 \uc5c6\uc2b5\ub2c8\ub2e4!
zone.steal.bomb.broadcast = {0} \uc774(\uac00) {1} \ud3ed\ud0c4\uc744 \uac00\uc9c0\uace0 \uc788\uc2b5\ub2c8\ub2e4.
zone.steal.bomb.broadcast = {0} \uc774/\uac00 {1} \ud3ed\ud0c4\uc744 \uac00\uc9c0\uace0 \uc788\uc2b5\ub2c8\ub2e4.
zone.steal.bomb.notice = \ub2f9\uc2e0\uc740 {0} \ud3ed\ud0c4\uc744 \uac00\uc9c0\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uc801\ud300\uc758 \uc2a4\ud3f0\uc9c0\uc5ed\uae4c\uc9c0 \uac00\uba74 \uc810\uc218\ub97c \uc5bb\uc2b5\ub2c8\ub2e4. \ub9cc\uc57d \ub2e4\ub978\uc0ac\ub78c\uc774 \ub2f9\uc2e0\uc744 \ub54c\ub9ac\uba74 \ubaa8\ub450 \ud3ed\ubc1c\ud560\uac83\uc785\ub2c8\ub2e4!
zone.steal.bomb.prevent = {0} \ub85c\ubd80\ud130 \ub2f9\uc2e0\uc758 \uc2a4\ud3f0\uc9c0\uc5ed\uc5d0 \ud3ed\ud0c4\uc744 \uac00\uc838\uc624\ub294\uac83\uc744 \ub9c9\uc73c\uc2ed\uc2dc\uc624!
zone.steal.cake.broadcast = {0} \uc774(\uac00) {1} \ucf00\uc78c\uc744 \uac00\uc9c0\uace0 \uc788\uc2b5\ub2c8\ub2e4.
zone.steal.cake.notice = \ub2f9\uc2e0\uc740 {0} \ucf00\uc78c\uc744 \uac00\uc9c0\uace0 \uc788\uc2b5\ub2c8\ub2e4. \ucf00\uc78c\uc744 \ub4e4\uace0 \ub2f9\uc2e0\uc758 \ud300 \uc2a4\ud3f0\uc9c0\uc5ed\uc73c\ub85c \uac00\uba74 1\uc810\uc744 \uc5bb\uace0 \ub2f9\uc2e0\uc758 \ubaa9\uc228\uc744 \ucc44\uc6b8 \uc218 \uc788\uc2b5\ub2c8\ub2e4!
zone.steal.cake.prevent = {0} \ub85c\ubd80\ud130 \uadf8\ub4e4\uc758 \ud300 \uc2a4\ud3f0\uc9c0\uc5ed\uc5d0 \ucf00\uc78c\uc744 \uac00\uc838\uac00\ub294\uac83\uc744 \ub9c9\uc73c\uc2ed\uc2dc\uc624!
zone.steal.flag.broadcast = {0} \uc774(\uac00) {1} \ud300\uc758 \uae43\ubc1c\uc744 \ud6d4\ucce4\uc2b5\ub2c8\ub2e4!
zone.steal.cake.broadcast = {0} \uc774/\uac00 {1} \ucf00\uc774\ud06c\uc744 \uac00\uc9c0\uace0 \uc788\uc2b5\ub2c8\ub2e4.
zone.steal.cake.notice = {0} \ucf00\uc774\ud06c\ub97c \uac00\uc9c0\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uc774\uc81c \uc8fd\uc9c0 \uc54a\uace0 \ub2f9\uc2e0\uc758 \ud300 \uc2a4\ud3f0\uc5d0 \ub3c4\ub2ec\ud558\uba74 1\uc810\uc744 \uc5bb\uace0 \ub2f9\uc2e0\uc758 \ubaa9\uc228\uc744 \ucc44\uc6b8 \uc218 \uc788\uc2b5\ub2c8\ub2e4!
zone.steal.cake.prevent = {0} \uc774/\uac00 \uadf8\uc758 \ud300 \uc2a4\ud3f0\uc5d0 \ucf00\uc774\ud06c\ub97c \uac00\uc9c0\uace0 \uac00\ub294\uac83\uc744 \ub9c9\uc73c\uc2ed\uc2dc\uc624!
zone.steal.flag.broadcast = {0} \uc774/\uac00 {1} \ud300\uc758 \uae43\ubc1c\uc744 \ud6d4\ucce4\uc2b5\ub2c8\ub2e4.
zone.steal.flag.empty = \ub2f9\uc2e0\uc740 {0} \ud300\uc5d0 \ud50c\ub808\uc774\uc5b4\uac00 \uc5c6\uae30 \ub54c\ubb38\uc5d0 \uc774 \ud300\uc758 \uae43\ubc1c\uc744 \ud6d4\uce60 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
zone.steal.flag.notice = \ub2f9\uc2e0\uc740 {0} \ud300\uc758 \uae43\ubc1c\uc744 \uac00\uc9c0\uace0 \uc788\uc2b5\ub2c8\ub2e4. \ub2f9\uc2e0\uc758 \ud300 \uc2a4\ud3f0\uc9c0\uc5ed\uc73c\ub85c \uac00\uc838\uac00\uc2ed\uc2dc\uc624!
zone.steal.flag.prevent = {0} \ub85c\ubd80\ud130 \uae43\ubc1c\uc744 {1} \ud300\uc758 \uc2a4\ud3f0\uc9c0\uc5ed\uc73c\ub85c \uac00\uc838\uac00\ub294\uac83\uc744 \ub9c9\uc73c\uc2ed\uc2dc\uc624!
zone.steal.flag.prevent = {0} \uc774/\uac00 {1} \ud300\uc758 \uc2a4\ud3f0 \ub610\ub294 \uae43\ubc1c\uc5d0 \ub3c4\ub2ec\ud558\uc9c0 \ubabb\ud558\ub3c4\ub85d \ub9c9\uc73c\uc2ed\uc2dc\uc624.
zone.stealextra.bomb = \ud3ed\ud0c4\uc740 \ud55c\ubc88\uc5d0 \ud55c\uac1c\uc529\ub9cc \ud6d4\uce60 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
zone.stealextra.cake = \ucf00\uc774\ud06c\ub294 \ud55c\ubc88\uc5d0 \ud55c\uac1c\uc529\ub9cc \ud6d4\uce60 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
zone.stealextra.flag = \uae43\ubc1c\uc740 \ud55c\ubc88\uc5d0 \ud55c\uac1c\uc529\ub9cc \ud6d4\uce60 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
@ -121,9 +125,9 @@ zone.stealextra.other = \ud55c\ubc88\uc5d0 \ud55c \uc885\ub958(\ud3ed\ud0c4, \uc
zone.teaminfo.format = {0}: {1} \uc810, {2}/{3} \uac1c\uc758 \ubaa9\uc228, {4}
zone.teaminfo.none = \uc5c6\uc74c
zone.teaminfo.prefix = \ud300:
zone.teleport = {0} \uc804\uc7c1\uc5d0 \uc624\uc2e0\uac83\uc744 \ud658\uc601\ud569\ub2c8\ub2e4
zone.teleport = \uc804\uc7c1\uad6c\uc5ed {0} \uc5d0 \uc624\uc2e0\uac83\uc744 \ud658\uc601\ud569\ub2c8\ub2e4.
zone.warp.permission = \uc804\uc7c1\uac8c\uc784\uc73c\ub85c \ud154\ub808\ud3ec\ud2b8\ud560 \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.
zone.zone404 = \ub2f9\uc2e0\uc774 \uc785\ub825\ud55c \uc804\uc7c1\uad6c\uc5ed\uc744 \ucc3e\uc744 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
zone.zoneinfo.format = {0}: {1} \uac1c\uc758 \ud300, {2} \uba85\uc758 \ud50c\ub808\uc774\uc5b4
zone.zoneinfo.prefix = \uc804\uc7c1\uad6c\uc5ed:
zone.zoneinfo.teleport = \uc6d0\ud558\ub294 \uc804\uc7c1\uac8c\uc784\uc73c\ub85c \ud154\ub808\ud3ec\ud2b8\ud558\ub824\uba74 /zone <\uc804\uc7c1\uad6c\uc5ed-\uc774\ub984> \uc744 \uc785\ub825\ud558\uc2ed\uc2dc\uc624.
zone.zoneinfo.teleport = \ud2b9\uc815 \uc804\uc7c1\uad6c\uc5ed\uc73c\ub85c \ud154\ub808\ud3ec\ud2b8\ud558\ub824\uba74 /zone <\uad6c\uc5ed-\uc774\ub984> \uc744 \uc785\ub825\ud558\uc2ed\uc2dc\uc624.

View File

@ -0,0 +1,11 @@
build.denied.outside = J\u016bs varat celt tikai ar\u0113n\u0101.
build.denied.zone.break = Taj\u0101 ar\u0113n\u0101 nevar lauzt blokus!
build.denied.zone.multteam = Jums jau ir {0} bloks.
build.denied.zone.outside = J\u016bs nevarat lauzt blokus ar\u0113n\u0101, kam\u0113r neesat iek\u0161\u0101.
build.denied.zone.place = J\u016bs nevarat celt \u0161aj\u0101 ar\u0113n\u0101!
build.denied.zone.type = J\u016bs nevarat main\u012bt tadus blokus.
command.console = Komandu lieto\u0161ana ir at\u013cauta tikai sp\u0113l\u0113.
command.disabled = J\u016bs varat lietot tikai War komandas (piem. /leave), kam\u0113r sp\u0113lejat.
drop.bomb.broadcast = {0} pazaud\u0113ja bumbu "{1}"!
drop.bomb.disabled = J\u016bs nevarat izmest lietas, kam\u0113r nesat bumbu. Skrien uz pretejo b\u0101zi!
join.broadcast = {0} piesl\u0113dz\u0101s pie {1}.

View File

@ -0,0 +1,133 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Je kan hier niet bouwen.
build.denied.outside = Je kan alleen in warzones bouwen.
build.denied.teamblock = Je kan alleen je team blokken gebruiken om de monumenten te veroveren.
build.denied.zone.break = Deze blokken zijn onbreekbaar in de warzone!
build.denied.zone.multteam = Je hebt al een {0} blok.
build.denied.zone.outside = Je kan geen blokken slopen in de warzone waar je niet in het spelen bent.
build.denied.zone.place = Je kan geen blokken plaatsen in de warzone.
build.denied.zone.type = Je kan dit type blok niet veranderen.
command.console = Je kan dit niet doen als je niet in de game bent.
command.disabled = Je kan alleen war commands (bv. /leave) gebruiken tijdens het spel.
command.tp.init = Wacht {0} seconden voor teleporteren. Bewegen of beschadiging zal de timer annuleren.
command.tp.moved = Teleportatie geannuleerd door beweging.
command.tp.damaged = Teleportatie geannuleerd door beschadiging.
command.tp.success = Je bent geteleporteerd. Bedankt voor je geduld.
drop.bomb.broadcast = {0} heeft de {1} bom laten vallen!
drop.bomb.disabled = Je kan geen items droppen terwijl je de bom steelt. Wat doe je?! REN!
drop.cake.broadcast = {0} heeft de {1} cake laten vallen!
drop.cake.disabled = Je kan geen blokken droppen terwijl je de cake steelt! Wat doe je? REN!
drop.flag.broadcast = {0} Heeft de {1} vlag laten vallen!
drop.flag.disabled = Je kan geen blokken droppen terwijl je de vlag steelt. Wat doe je?! REN!
drop.item.border = Je kan geen items droppen bij de zone grens.
drop.item.disabled = Je kan geen items droppen in deze warzone.
drop.item.spawn = Je kan geen items droppen als je nog in spawn bent.
drop.team = Je kan geen {0} blokken droppen.
drop.wand = Je hebt de zone {0} wand gedropt.
join.aarequired = Dit oorlogsgebied vereist jou om automatisch toegewezen te worden aan een team. In plaats daarvan, betreed de auto assign poort.
join.broadcast = {0} Heeft team {1} toegetreden.
join.disabled = De warzone is uitgeschakeld.
join.full.all = Alle teams zijn vol.
join.full.single = Team {0} is vol.
join.inventorystored = Je inventory is opgeslagen totdat je de warzone verlaat met /war leave.
join.permission.all = Je hebt geen toestemming om de teams in deze warzone te joinen.
join.permission.single = Je hebt geen toestemming om het team {0} te joinen.
join.progress = Je kunt geen gevecht dat al bezig is betreden in deze zone.
join.selfteam = Je kunt niet je eigen team joinen.
join.team404 = Dit team is niet gevonden. Probeer /teams voor de lijst met teams.
leave.broadcast = {0} heeft de zone verlaten.
leave.inventoryrestore = Je inventory is herstelt.
pvp.death.drown = {0} is verdronken!
pvp.death.explosion = {0} is ontploft.
pvp.death.fall = {0} is dood gevallen.
pvp.death.fire = {0} is levend verbrand.
pvp.death.other = {0} is gestorven.
pvp.ff.disabled = Je aanval ging niet raak! Je doelwit is op je eigen team.
pvp.ff.enabled = Vriendenvuur is aan, doe je teamleden geen pijn!
pvp.kill.adjectives = ;;machtig;dodelijk;fijn;precies;brutaal;krachtig
pvp.kill.bomb = {0} heeft {1} laten exploderen!
pvp.kill.format = {0}''s {1} {2} {3} {4}
pvp.kill.self = {0} heeft zelfmoord gepleegt.
pvp.kill.verbs = vermoord;vermoord;vermoord;vermoord;vermoord;vermoord;vermoord;vermoord
pvp.kill.weapon.aim = richten
pvp.kill.weapon.bow = boog
pvp.kill.weapon.hand = hand
pvp.outside.permission = Je kunt geen spelers aanvallen buiten de warzones.
pvp.self.notplaying = Je moet in een warzone spelen wil je spelers aanvallen.
pvp.self.respawn = Je kunt niet aanvallen als je aan het respawnen bent!
pvp.self.spawn = Je kunt niet aanvallen als je nog in de spawn bent!
pvp.target.notplaying = Je doelwit is niet in deze warzone aan het spelen!
pvp.target.otherzone = Je doelwit is in een andere warzone aan het spelen!
pvp.target.respawn = Je doelwit is nog aan het respawnen!
pvp.target.spawn = Je doelwit is nog in spawn!
sign.lobby.autoassign = Oorlogsgebied\n{0}\nBetreed de auto-\nGeef aan als deur.
sign.lobby.pick = Warzone\n{0}\n\nKies jouw team.
sign.lobby.warhub = \nNaar War hub\n\n
sign.team.limited = Team {0}\n{1}/{2} spelers\n{3}/{4} ptn\n{5} levens over
sign.team.unlimited = Team {0}\n{1}/{2} spelers\n{3}/{4} ptn\noneindig levens
sign.warhub = War hun\n(/warhub)\nKies jouw\ngevecht!
sign.warzone = Oorlogsgebied\n{0}\n{1}/{2} spelers\n{3} teams
team.chat.enable = Team chat ingeschakeld. Jouw reguliere berichten worden alleen ontvangen door jouw teamgenoten.
team.chat.disable = Team chat uitgeschakeld.
use.anvil = Je kan geen aambeelden gebruiken in dit oorlogsgebied!
use.enchant = Je kan geen betovering tafels gebruiken in dit oorlogsgebied!
use.ender = Je kan geen ender kisten gebruiken tijdens het spelen in een oorlogsgebied!
use.item.spawn = Je kan geen items gebruiken wanneer je in de spawn bent.
use.xpkillmeter = Dit is vanwege de xpkillmeter optie die is uitgeschakeld.
wand.toofar = Het doelwit blok is te ver weg.
war.notadmin = Je kan dit niet doen als je geen War admin bent (permissie war.admin).
war.notzm = Je kan dit niet doen als je geen warzone maker bent (permissie war.zonemaker).
war.prefix = War>
war.title = War
warhub.none = Geen warhub op deze War server. Probeer /zones en /zone.
warhub.permission = Je hebt geen toegang om naar de War hub te teleporteren.
warhub.teleport = Welkom bij de War hub. Kies jouw gevecht.
zone.airstrike = {0} heeft een luchtaanval opgeroepen!
zone.battle.end = Het gevecht is over. Team {0} heeft verloren: {1} gingen dood en er waren geen levens over in hun levenspot.
zone.battle.newscores = Nieuwe scores - {0}
zone.battle.next = Het gevecht was onderbroken. Warzone {0} resetten...
zone.battle.reset = Een nieuw gevecht zal snel beginnen. Warzone resetten...
zone.battle.resetprogress = Reset vooruitgang: {0}%, {1} seconden...
zone.battle.resetcomplete = Reset oorlogsgebied in {0} seconden. Een nieuw gevecht begint.
zone.bomb.broadcast = {0} blies team {1}''s spawn op. Team {2} scoort \u00e9\u00e9n punt.
zone.cake.broadcast = {0} veroverde taart {1}. Team {2} scoort \u00e9\u00e9n punt en krijg een volle levenspot.
zone.flagcapture.broadcast = {0} veroverde team {1}''s vlag. Team {2} scoort \u00e9\u00e9n punt.
zone.flagreturn.deadlock = Je kan de tegenstander's flag niet veroveren totdat jouw team's vlag is teruggekeerd.
zone.flagreturn.flag = Je moet de tegenstander's vlag veroveren bij jouw team's vlag.
zone.flagreturn.spawn = Je moet de tegenstander's vlag veroveren bij jouw team's spawn.
zone.leavenotice = Gebruik /war leave om de zone te verlaten.
zone.lifepool.empty = Team {0}''s levenspot is leeg. Nog \u00e9\u00e9n keer dood gaan en ze verliezen het gevecht.
zone.loadout.equip = Voorzien van loadout {0} (sluipen om over te schakelen).
zone.loadout.reenter = Kan loadout niet omwisselen na het verlaten van de spawn.
zone.monument.badblock = Je moet een monument veroveren met een blok van jouw team's wol kleur. Haal een van jouw team spawn.
zone.monument.capture = Monument {0} is veroverd door team {1}.
zone.monument.lose = Team {0} verloor controle over monument {1}.
zone.monument.voodoo = Jouw dans bevalt het monument''s voodoo. Je krijgt {0} hart(en)!
zone.noteamnotice = Je kan niet in een oorlogsgebied zijn zonder een team.
zone.score.board404 = Dit oorlogsgebied heeft scorebord niet ingeschakeld.
zone.score.empty = Je kan niet scoren totdat tenminste \u00e9\u00e9n speler zich bij het andere team heeft aangesloten.
zone.spawn.minplayers = Je kan de spawn niet verlaten totdat er een minimum van {0} speler(s) op tenminste {1} team(s) zijn.
zone.spawn.timer = Je kan de spawn niet verlaten voor {0} seconde(n) na respawnen.
zone.steal.bomb.broadcast = {0} heeft bom {1}.
zone.steal.bomb.notice = Je hebt bom {0}. Bereik het andere team's spawn om te scoren. Wordt niet aangeraakt door anderen, anders blaas je op!
zone.steal.bomb.prevent = Voorkom {0} van het bereiken van jouw spawn met de bom.
zone.steal.cake.broadcast = {0} heeft taart {1}.
zone.steal.cake.notice = Je hebt taart {0}. Bereik jouw team's spawn om te scoren en je team's levenspot te hervullen.
zone.steal.cake.prevent = Voorkom {0} van het bereiken van hun spawn met de taart!
zone.steal.flag.broadcast = {0} stal team {1}''s vlag.
zone.steal.flag.empty = Je kan team {0}''s vlag niet stelen sinds er geen spelers zijn in dat team.
zone.steal.flag.notice = Je hebt team {0}''s flag. Bereik jouw team's spawn of flag om hem te veroveren.
zone.steal.flag.prevent = Voorkom {0} van het bereiken van team {1}''s spawn of flag.
zone.stealextra.bomb = Je kan maar \u00e9\u00e9n bom tegelijk stelen!
zone.stealextra.cake = Je kan maar \u00e9\u00e9n taart tegelijk stelen!
zone.stealextra.flag = Je kan maar \u00e9\u00e9n vlag tegelijk stelen!
zone.stealextra.other = Je kan maar \u00e9\u00e9n ding tegelijk stelen!
zone.teaminfo.format = {0}: {1} punten. {2}/{3} levens over. {4}
zone.teaminfo.none = geen
zone.teaminfo.prefix = Teams:
zone.teleport = Welkom bij oorlogsgebied {0}.
zone.warp.permission = Je hebt geen toegang om te teleporteren naar het oorlogsgebied.
zone.zone404 = Het oorlogsgebied kon niet gevonden worden.
zone.zoneinfo.format = {0}: {1} teams, {2} spelers.
zone.zoneinfo.prefix = Oorlogsgebieden:
zone.zoneinfo.teleport = Gebruik /zone <zone-name> om te teleporteren naar een oorlogsgebied.

View File

@ -6,17 +6,17 @@ build.denied.zone.break = Blokkene i denne krigssonen er uknuselige!
build.denied.zone.multteam = Du har allerede en {0}-blokk
build.denied.zone.outside = Du kan ikke \u00f8delegge en krigssone du ikke spiller i
build.denied.zone.place = Du kan ikke sette ut blokker i denne krigssonen
build.denied.zone.type = Du kan ikke endre slike blokker
build.denied.zone.type = Du kan ikke endre denne type blokker
command.console = Du m\u00e5 v\u00e6re i et spill for \u00e5 gj\u00f8re det
command.disabled = Du kan bare bruke War-kommandoer (som /leave) n\u00e5r du spiller
drop.bomb.broadcast = {0} mistet {1}-bomben!
drop.bomb.disabled = Du kan ikke droppe ting mens du stjeler bomber. Hva gj\u00f8r du?! L\u00f8p til fiendens spawn!
drop.bomb.disabled = Du kan ikke droppe ting mens du stjeler bomber. Hva gj\u00f8r du?! L\u00f8p til fiendens spaw!n
drop.cake.broadcast = {0} mistet {1}-kaken
drop.cake.disabled = Du kan ikke droppe ting mens du stjeler kaker. Hva gj\u00f8r du?! L\u00f8p til fiendens spawn!
drop.cake.disabled = Du kan ikke droppe ting mens du stjeler kaker. Hva gj\u00f8r du?! L\u00f8p!
drop.flag.broadcast = {0} mistet {1}-flagget
drop.flag.disabled = Du kan ikke droppe ting mens du stjeler flagget. Hva gj\u00f8r du?! L\u00f8p!!
drop.flag.disabled = Du kan ikke droppe ting mens du stjeler flagget. Hva gj\u00f8r du?! L\u00f8p!
drop.item.border = Du kan ikke droppe ting s\u00e5 n\u00e6r sone-grensen
drop.item.disabled = Du kan ikke droppe ting i denne sonen
drop.item.disabled = Du kan ikke droppe ting i denne krigssonen
drop.item.spawn = Du kan ikke droppe ting i spawn
drop.team = Du kan ikke droppe {0} blokker
drop.wand = Du droppet wand til sone {0}
@ -126,4 +126,4 @@ zone.warp.permission = Du har ikke lov til \u00e5 teleportere til sonen
zone.zone404 = Fant ikke krigssonen
zone.zoneinfo.format = {0}: {1} lag, {2} spillere
zone.zoneinfo.prefix = Krigssoner:
zone.zoneinfo.teleport = Bruk /zone <zone-name> for \u00e5 teleportere til en sone
zone.zoneinfo.teleport = Bruk /zone <zone-name> for \u00e5 teleportere til en sone

View File

@ -9,6 +9,10 @@ build.denied.zone.place = Nie mo\u017cesz k\u0142a\u015b\u0107 blok\u00f3w na te
build.denied.zone.type = Nie mo\u017cesz modyfikowa\u0107 tego typu blok\u00f3w.
command.console = Nie mo\u017cesz tego robi\u0107, je\u015bli nie jeste\u015b w grze.
command.disabled = Mo\u017cesz u\u017cy\u0107 tylko komend z War (np. /leave) podczas gry.
command.tp.init = Poczekaj {0} sekund na teleportacj\u0119. Ruch b\u0105d\u017a obra\u017cenia zatrzymaj\u0105 odliczanie.
command.tp.moved = Teleportacja zatrzymana z powodu ruchu.
command.tp.damaged = Teleportacja zatrzymana z powodu obra\u017ce\u0144.
command.tp.success = Zosta\u0142e\u015b teleportowany. Dzi\u0119kujemy za cierpliwo\u015b\u0107.
drop.bomb.broadcast = {0} pod\u0142o\u017cy\u0142 {1} bomb\u0119!
drop.bomb.disabled = Nie mo\u017cesz wyrzuca\u0107 przedmiot\u00f3w gdy ukrad\u0142e\u015b bomb\u0119. Co ty robisz?!Biegnij do wrogiej bazy!
drop.cake.broadcast = {0} Upu\u015bci\u0142 {1} ciasto!
@ -71,7 +75,7 @@ use.ender = Nie mo\u017cesz korzysta\u0107 ze skrzyni kresu podczas gry na areni
use.item.spawn = Nie mo\u017cesz korzysta\u0107 z przedmiot\u00f3w gdy jeste\u015b na spawn.
use.xpkillmeter = Jest to spowodowane w\u0142\u0105czon\u0105 opcj\u0105 "XPKillMeter".
wand.toofar = Blok na kt\u00f3ry celujesz jest za daleko.
war.notadmin = Nie mo\u017cesz tego robi\u0107 je\u015bli nie jeste\u015b War admin'em ( permission war.admin).
war.notadmin = Nie mo\u017cesz tego robi\u0107 je\u015bli nie jeste\u015b War admin''em ( permission war.admin).
war.notzm = Nie mo\u017cesz tego robi\u0107 je\u015bli nie jeste\u015b tw\u00f3rc\u0105 aren (permission war.zonemaker).
war.prefix = War>
war.title = War
@ -95,7 +99,7 @@ zone.leavenotice = Wpisz /war leave aby opu\u015bci\u0107 aren\u0119.
zone.lifepool.empty = Dru\u017cyna {0} nie posiada wi\u0119cej \u017cy\u0107.Jedna \u015bmier\u0107 wi\u0119cej i przegraj\u0105 oni bitw\u0119!
zone.loadout.equip = Wyposa\u017cenie {0} za\u0142adowane (kucnij aby zmieni\u0107)
zone.loadout.reenter = Nie mo\u017cesz zmieni\u0107 wyposa\u017cenia po opuszczeniu spawn.
zone.monument.badblock = Musisz przej\u0105\u0107 pomnik blokiem we\u0142ny koloru twojej dru\u017cyny.\nMo\u017cesz go zdoby\u0107 ze spawn'u swojej dru\u017cyny.
zone.monument.badblock = Musisz przej\u0105\u0107 pomnik blokiem we\u0142ny koloru twojej dru\u017cyny.\nMo\u017cesz go zdoby\u0107 ze spawn''u swojej dru\u017cyny.
zone.monument.capture = Pomnik {0} zosta\u0142 przej\u0119ty przez dru\u017cyn\u0119 {1}.
zone.monument.lose = Dru\u017cyna {0} straci\u0142a kontrol\u0119 nad pomnikiem {1}.
zone.monument.voodoo = Tw\u00f3j taniec zadowoli\u0142 pomnik boga voodoo. Zdobywasz {0} serduszko/a \u017cycia.
@ -126,4 +130,4 @@ zone.warp.permission = Nie masz uprawnie\u0144 do teleportacji do areny.
zone.zone404 = Nie mo\u017cna znale\u017a\u0107 areny.
zone.zoneinfo.format = {0}:{1} zespo\u0142\u00f3w, {2} graczy
zone.zoneinfo.prefix = Areny:
zone.zoneinfo.teleport = U\u017cyj /zone <zone-name> aby teleportowa\u0107 si\u0119 do areny.
zone.zoneinfo.teleport = U\u017cyj /zone <zone-name> aby teleportowa\u0107 si\u0119 do areny.

View File

@ -1,23 +1,40 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Voc\u00ea n\u00e3o pode construir aqui.
build.denied.outside = Voc\u00ea s\u00f3 pode construir nos campos de batalha.
build.denied.outside = Voc\u00ea s\u00f3 pode construir nas partidas.
build.denied.teamblock = Voc\u00ea s\u00f3 pode usar blocos do seu time para capturar monumentos.
build.denied.zone.break = Os blocos nessa \u00e1rea s\u00e3o indestrut\u00edveis.
build.denied.zone.multteam = Voc\u00ea j\u00e1 tem um {0}.
build.denied.zone.outside = Voc\u00ea n\u00e3o pode destruir numa partida que voc\u00ea n\u00e3o est\u00e1 jogando.
build.denied.zone.place = Voc\u00ea n\u00e3o pode construir aqui.
build.denied.zone.type = Voc\u00ea n\u00e3o pode modificar este tipo de bloco.
command.console = Voc\u00ea n\u00e3o pode fazer isto enquanto n\u00e3o estiver na partida.
command.disabled = Voc\u00ea s\u00f3 pode usar comandos espec\u00edficos (ex: /leave) enquanto joga.
command.tp.init = Por favor aguarde {0} segundos para teleportar. Qualquer movimento cancelar\u00e1 o teleporte.
command.tp.moved = Teleporte cancelado por movimento.
command.tp.damaged = Teleporte cancelado por receber dano.
command.tp.success = Voc\u00ea foi teleportado.
drop.bomb.broadcast = {0} derrubou a bomba {1}!
drop.bomb.disabled = Voc\u00ea n\u00e3o pode dropar itens enquanto tiver a bomba. O que voc\u00ea est\u00e1 fazendo? Corra para a base inimiga!
drop.cake.broadcast = {0} derrubou o bolo {1}!
drop.cake.disabled = Voc\u00ea n\u00e3o pode dropar itens enquanto tiver o bolo. O que voc\u00ea est\u00e1 fazendo? Corra!
drop.flag.broadcast = {0} derrubou a bandeira de {1}!
drop.item.disabled = Voc\u00ea n\u00e3o pode dropar itens nesta zona.
drop.flag.disabled = Voc\u00ea n\u00e3o pode dropar itens enquanto tiver a bandeira. O que voc\u00ea est\u00e1 fazendo? Corra!
drop.item.border = Voc\u00ea n\u00e3o pode dropar itens para fora da partida.
drop.item.disabled = Voc\u00ea n\u00e3o pode dropar itens nesta partida.
drop.item.spawn = Voc\u00ea n\u00e3o pode dropar itens enquanto estiver na base.
drop.team = Voc\u00ea n\u00e3o pode dropar {0}.
drop.wand = Voc\u00ea dropou a varinha da zona {0}.
join.aarequired = Esta partida requer que voc\u00ea seja automaticamente atribu\u00eddo a uma equipe. Por favor entre no portal.
join.broadcast = {0} entrou no time {1}.
join.disabled = Este campo de batalha est\u00e1 desativado.
join.disabled = Esta partida est\u00e1 desativada.
join.full.all = Todos os times est\u00e3o lotados.
join.full.single = Time {0} lotado.
join.permission.single = Voc\u00ea n\u00e3o tem permiss\u00f5es para se ingressar no time {0}.
join.inventorystored = Seu invent\u00e1rio ser\u00e1 guardado at\u00e9 que voc\u00ea saia com /war leave.
join.permission.all = Voc\u00ea n\u00e3o tem permiss\u00e3o para entrar em algum time dispon\u00edvel nesta partida.
join.permission.single = Voc\u00ea n\u00e3o tem permiss\u00f5es para ingressar no time {0}.
join.progress = Voc\u00ea n\u00e3o pode entrar em uma partida em progresso nesta zona.
join.selfteam = Voc\u00ea n\u00e3o pode entrar no seu pr\u00f3prio time.
join.team404 = Time n\u00e3o encontrado. Digite /team para ver a lista.
leave.broadcast = {0} saiu da partida.
leave.inventoryrestore = Invent\u00e1rio restaurado.
pvp.death.drown = {0} afogou-se.
@ -25,7 +42,11 @@ pvp.death.explosion = {0} explodiu.
pvp.death.fall = {0} caiu e morreu.
pvp.death.fire = {0} morreu queimado.
pvp.death.other = {0} morreu.
pvp.ff.disabled = Voc\u00ea errou o ataque por tentar atacar um aliado!
pvp.ff.enabled = Fogo amigo ativado! Por favor, n\u00e3o prejudique sua equipe.
pvp.kill.adjectives = ;;poderoso,mortal;excelente;preciso;brutal;poderoso
pvp.kill.bomb = {0} fez {1} explodir!
pvp.kill.format = {0} usou {1} para {2} {3} {4}
pvp.kill.self = {0} cometeu suic\u00eddio.
pvp.kill.verbs = matou;matou;matou;aniquilou;assassinou;eliminou;exterminou
pvp.kill.weapon.aim = mira
@ -34,9 +55,79 @@ pvp.kill.weapon.hand = m\u00e3o
pvp.outside.permission = Voc\u00ea n\u00e3o pode atacar jogadores que est\u00e3o fora da partida.
pvp.self.notplaying = Voc\u00ea precisa estar na partida para atacar.
pvp.self.respawn = Voc\u00ea n\u00e3o pode atacar enquanto renasce!
pvp.self.spawn = Voc\u00ea n\u00e3o pode atacar na base!
pvp.target.notplaying = Seu alvo n\u00e3o est\u00e1 na partida.
pvp.target.otherzone = Seu alvo est\u00e1 em outra partida.
pvp.target.respawn = Seu alvo est\u00e1 renascendo!
pvp.target.spawn = Seu alvo est\u00e1 na base!
sign.lobby.autoassign = Partida\n{0}\nEntre no\nportal.
sign.lobby.pick = Partida\n{0}\n\nEscolha seu time.
sign.team.limited = Time {0}\n{1}/{2} jogadores\n{3}/{4} pontos\n{5} mortes restantes
sign.team.unlimited = Time {0}\n{1}/{2} jogadores\n{3}/{4} pontos\nvidas ilimitadas
use.anvil = Voc\u00ea n\u00e3o pode usar bigornas nesta zona!
use.enchant = Voc\u00ea n\u00e3o pode usar mesas de encantamento nesta zona!
sign.lobby.warhub = \nPara o salao \nde portais.\n
sign.team.limited = Time {0}\n{1}/{2} jogadores\n{3}/{4} pontos\n{5} vidas
sign.team.unlimited = Time {0}\n{1}/{2} jogadores\n{3}/{4} pontos\nvidas infinitas
sign.warhub = Saguao\n(/warhub)\nEscolha sua\npartida!
sign.warzone = Partida\n{0}\n{1}/{2} jogadores\n{3} times
team.chat.enable = Chat do time ligado. Agora voc\u00ea s\u00f3 receber\u00e1 mensagens do seu time.
team.chat.disable = Chat do time desligado.
use.anvil = Voc\u00ea n\u00e3o pode usar bigornas nesta partida!
use.enchant = Voc\u00ea n\u00e3o pode usar mesas de encantamento nesta partida!
use.ender = Voc\u00ea n\u00e3o pode usar ba\u00fas do fim enquanto joga na partida!
use.item.spawn = Voc\u00ea nao pode usar itens na base.
use.xpkillmeter = Isto \u00e9 devido \u00e0 op\u00e7\u00e3o xpkillmeter sendo ativado.
wand.toofar = Seu destino \u00e9 muito longe!
war.notadmin = Voc\u00ea n\u00e3o \u00e9 um administrador para poder fazer isto.
war.notzm = Voc\u00ea n\u00e3o pode fazer isto se voc\u00ea n\u00e3o \u00e9 um criador de partidas.
war.prefix = War>
war.title = War
warhub.none = N\u00e3o h\u00e1 sagu\u00f5es neste servidor. Tente /zones e /zone.
warhub.permission = Voc\u00ea n\u00e3o tem permiss\u00f5es para ir ao sagu\u00e3o.
warhub.teleport = Bem-vindo ao sagu\u00e3o de batalhas. Escolha sua partida!
zone.airstrike = {0} iniciou um ataque a\u00e9reo!
zone.battle.end = A partida terminou. O time {0} perdeu: {1} morreu e n\u00e3o restaram mais vidas sobrando.
zone.battle.newscores = Nova pontua\u00e7\u00e3o - {0}
zone.battle.next = Partida interrompida. Reiniciando campo {0}...
zone.battle.reset = Uma nova batalha come\u00e7ar\u00e1 em breve. Reiniciando partida...
zone.battle.resetprogress = Progresso da reinicializa\u00e7\u00e3o: {0}%, {1} segundos...
zone.battle.resetcomplete = A partida reinicia em {0} segundos. Uma nova batalha come\u00e7ar\u00e1.
zone.bomb.broadcast = {0} explodiu a base de {1}. O time {2} ganhou um ponto.
zone.cake.broadcast = {0} capturou o bolo {1}. O time {2} ganhou um ponto e restauraram suas vidas por completo.
zone.flagcapture.broadcast = {0} capturou a bandeira {1}. O time {2} ganhou um ponto.
zone.flagreturn.deadlock = Voc\u00ea n\u00e3o pode capturar a bandeira inimiga enquanto a sua n\u00e3o estiver segura.
zone.flagreturn.flag = Voc\u00ea deve levar a bandeira inimiga at\u00e9 a sua bandeira.
zone.flagreturn.spawn = Voc\u00ea deve levar a bandeira inimiga at\u00e9 sua base.
zone.leavenotice = Use /war para sair da partida.
zone.lifepool.empty = O time {0} est\u00e1 sem vida. Mais uma morte e eles perdem!
zone.loadout.equip = Equipou {0} (shift para trocar).
zone.loadout.reenter = N\u00e3o pode trocar depois de sair da base.
zone.monument.badblock = Voc\u00ea deve capturar um monumento com um bloco de l\u00e3 da cor da sua equipe. Consiga uma na sua base.
zone.monument.capture = Monumento {0} capturado pelo time {1}.
zone.monument.lose = O time {0} perdeu o controle do monumento {1}.
zone.monument.voodoo = Sua dan\u00e7a agradou o monumento. Voc\u00ea restaurou {0} de vida!
zone.noteamnotice = Voc\u00ea n\u00e3o pode entrar no campo de batalha sem uma equipe.
zone.score.board404 = Esta partida n\u00e3o tem scoreboard.
zone.score.empty = Voc\u00ea n\u00e3o pode pontuar enquanto outro jogador entrar em outro time.
zone.spawn.minplayers = Voc\u00ea n\u00e3o pode sair da base enquanto n\u00e3o haja pelo menos um m\u00ednimo de {0} jogador(es) em pelo menos {1} time(s).
zone.spawn.timer = Voc\u00ea n\u00e3o pode sair da base por {0} segundos depois de renascer.
zone.steal.bomb.broadcast = {0} pegou a bomba {1}.
zone.steal.bomb.notice = Voc\u00ea pegou a bomba {0}. V\u00e1 para a base inimiga para pontuar. N\u00e3o toque em ningu\u00e9m ou voc\u00ea explodir\u00e1!
zone.steal.bomb.prevent = Impe\u00e7a {0} de explodir sua base!
zone.steal.cake.broadcast = {0} pegou o bolo {1}.
zone.steal.cake.notice = Voc\u00ea tem o bolo {0}. V\u00e1 para sua base para pontuar e restauras sua vida.
zone.steal.cake.prevent = Impe\u00e7a {0} de chegar na base com o bolo!
zone.steal.flag.broadcast = {0} roubou a bandeira do time {1}.
zone.steal.flag.empty = Voc\u00ea n\u00e3o pode roubar a bandeira do time {0} se n\u00e3o h\u00e1 ningu\u00e9m nele.
zone.steal.flag.notice = Voc\u00ea pegou a bandeira do time {0}. V\u00e1 para sua base ou para a bandeira e a capture!
zone.steal.flag.prevent = Impe\u00e7a {0} de capturar a bandeira do time {1}!
zone.stealextra.bomb = Voc\u00ea s\u00f3 pode roubar uma bomba de cada vez!
zone.stealextra.cake = Voc\u00ea s\u00f3 pode roubar um bolo de cada vez!
zone.stealextra.flag = Voc\u00ea s\u00f3 pode roubar uma bandeira de cada vez!
zone.stealextra.other = Voc\u00ea s\u00f3 pode roubar uma coisa de cada vez!
zone.teaminfo.format = {0}: {1} pontos, {2}/{3} vidas restantes. {4}
zone.teaminfo.none = nada
zone.teaminfo.prefix = Times:
zone.teleport = Bem-vindo \u00e0 partida {0}.
zone.warp.permission = Voc\u00ea n\u00e3o tem permiss\u00f5es para se teleportar para a partida.
zone.zone404 = Partida n\u00e3o encontrada.
zone.zoneinfo.format = {0}: {1} times, {2} jogadores.
zone.zoneinfo.prefix = Partidas:
zone.zoneinfo.teleport = Use /zone <nome-da-zona> para teleportar para uma partida.

View File

@ -7,8 +7,12 @@ build.denied.zone.multteam = \u0423 \u0412\u0430\u0441 \u0443\u0436\u0435 \u0435
build.denied.zone.outside = \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043b\u043e\u043c\u0430\u0442\u044c \u0430\u0440\u0435\u043d\u0443, \u0435\u0441\u043b\u0438 \u0412\u044b \u043d\u0435 \u0438\u0433\u0440\u0430\u0435\u0442\u0435 \u043d\u0430 \u043d\u0435\u0439.
build.denied.zone.place = \u041d\u0430 \u044d\u0442\u043e\u0439 \u0430\u0440\u0435\u043d\u0435 \u0431\u043b\u043e\u043a\u0438 \u043d\u0435\u0440\u0430\u0437\u0440\u0443\u0448\u0438\u043c\u044b - \u044d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0447\u0442\u043e \u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0442\u043e\u0436\u0435 \u043d\u0435\u043b\u044c\u0437\u044f!
build.denied.zone.type = \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c \u044d\u0442\u043e\u0442 \u0442\u0438\u043f \u0431\u043b\u043e\u043a\u0430
command.console = \u0412\u0432\u043e\u0434 \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u0441 \u0438\u0433\u0440\u044b.
command.disabled = \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e /leave, \u043a\u043e\u0433\u0434\u0430 \u0438\u0433\u0440\u0430\u0435\u0442\u0435.
command.console = \u0412\u0432\u043e\u0434 \u043a\u043e\u043c\u0430\u043d\u0434 \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u0432 \u0438\u0433\u0440\u0435.
command.disabled = \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043c\u0430\u043d\u0434\u044b War (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 /leave), \u043a\u043e\u0433\u0434\u0430 \u0438\u0433\u0440\u0430\u0435\u0442\u0435.
command.tp.init = \u041f\u043e\u0434\u043e\u0436\u0434\u0438\u0442\u0435 {0} \u0441\u0435\u043a. \u0434\u043b\u044f \u0442\u0435\u043b\u0435\u043f\u043e\u0440\u0442\u0430\u0446\u0438\u0438. \u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u043d\u0435 \u0434\u0432\u0438\u0433\u0430\u0439\u0442\u0435\u0441\u044c
command.tp.moved = \u0422\u0435\u043b\u0435\u043f\u043e\u0440\u0442\u0430\u0446\u0438\u044f \u043e\u0442\u043c\u0435\u043d\u0435\u043d\u0430: \u0412\u044b \u0441\u0434\u0432\u0438\u043d\u0443\u043b\u0438\u0441\u044c \u0441 \u043c\u0435\u0441\u0442\u0430
command.tp.damaged = \u0422\u0435\u043b\u0435\u043f\u043e\u0440\u0442\u0430\u0446\u0438\u044f \u043e\u0442\u043c\u0435\u043d\u0435\u043d\u0430: \u0412\u0430\u0441 \u0440\u0430\u043d\u0438\u043b\u0438
command.tp.success = \u0412\u044b \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0442\u0435\u043b\u0435\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043b\u0438\u0441\u044c
drop.bomb.broadcast = {0} \u043f\u043e\u0442\u0435\u0440\u044f\u043b \u0431\u043e\u043c\u0431\u0443 "{1}"!
drop.bomb.disabled = \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u044b\u043a\u0438\u0434\u044b\u0432\u0430\u0442\u044c \u0432\u0435\u0449\u0438, \u043f\u043e\u043a\u0430 \u043d\u0435\u0441\u0435\u0442\u0435 \u0431\u043e\u043c\u0431\u0443. \u0411\u0435\u0433\u0438\u0442\u0435 \u043a \u0432\u0440\u0430\u0436\u0435\u0441\u043a\u043e\u0439 \u0431\u0430\u0437\u0435!
drop.cake.broadcast = {0} \u043f\u043e\u0442\u0435\u0440\u044f\u043b \u0442\u043e\u0440\u0442 "{1}"!
@ -19,7 +23,7 @@ drop.item.border = \u0417\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u043e \u0432
drop.item.disabled = \u0417\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c \u0432\u0435\u0449\u0438 \u043d\u0430 \u0430\u0440\u0435\u043d\u0435.
drop.item.spawn = \u0417\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c \u0432\u0435\u0449\u0438 \u043d\u0430 \u0441\u043f\u0430\u0443\u043d\u0435.
drop.team = \u0417\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c {0} \u0431\u043b\u043e\u043a\u0438.
drop.wand = \u0412\u044b \u0432\u044b\u043a\u0438\u043d\u0443\u043b\u0438 \u0432\u044b\u0434\u0435\u043b\u044f\u043b\u043a\u0443 \u0430\u0440\u0435\u043d\u044b {0}.
drop.wand = \u0412\u044b \u0432\u044b\u043a\u0438\u043d\u0443\u043b\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0430\u0440\u0435\u043d\u044b {0}.
join.aarequired = \u042d\u0442\u0430 \u0430\u0440\u0435\u043d\u0430 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0432\u0445\u043e\u0434\u0430 \u0447\u0435\u0440\u0435\u0437 \u0430\u0432\u0442\u043e-\u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c!
join.broadcast = {0} \u0437\u0430\u0448\u0435\u043b \u0437\u0430 {1}.
join.disabled = \u042d\u0442\u0430 \u0430\u0440\u0435\u043d\u0430 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0430.
@ -30,7 +34,7 @@ join.permission.all = \u0423 \u0432\u0430\u0441 \u043d\u0435\u0442 \u043f\u0440\
join.permission.single = \u0423 \u0412\u0430\u0441 \u043d\u0435\u0442 \u043f\u0440\u0430\u0432 \u0437\u0430\u0439\u0442\u0438 \u0437\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 {0}.
join.progress = \u0411\u043e\u0439 \u0443\u0436\u0435 \u043d\u0430\u0447\u0430\u043b\u0441\u044f \u043d\u0430 \u044d\u0442\u043e\u0439 \u0430\u0440\u0435\u043d\u0435!\u0414\u043e\u0436\u0434\u0438\u0442\u0435\u0441\u044c \u0435\u0433\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f.
join.selfteam = \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u0439\u0442\u0438 \u0437\u0430 \u0441\u0432\u043e\u044e-\u0436\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0443.
join.team404 = \u0422\u0430\u043a\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u0430. \u0412\u0441\u0435 \u0434\u043e\u0443\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b - /teams
join.team404 = \u0422\u0430\u043a\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u0430. \u041d\u0430\u0431\u0435\u0440\u0438\u0442\u0435 /teams \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0441\u043f\u0438\u0441\u043a\u0430 \u043a\u043e\u043c\u0430\u043d\u0434.
leave.broadcast = {0} \u0432\u044b\u0448\u0435\u043b \u0441 \u0431\u043e\u044f.
leave.inventoryrestore = \u0412\u0430\u0448 \u0438\u043d\u0432\u0435\u043d\u0442\u0430\u0440\u044c \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d.
pvp.death.drown = {0} \u0443\u0442\u043e\u043d\u0443\u043b
@ -40,7 +44,7 @@ pvp.death.fire = {0} \u0441\u0433\u043e\u0440\u0435\u043b
pvp.death.other = {0} \u0443\u043c\u0435\u0440
pvp.ff.disabled = \u042d\u0442\u043e\u0442 \u0438\u0433\u0440\u043e\u043a \u0437\u0430 \u0412\u0430\u0441.
pvp.ff.enabled = \u041e\u0433\u043e\u043d\u044c \u043f\u043e \u0441\u0432\u043e\u0438\u043c \u0432\u043a\u043b\u044e\u0447\u0435\u043d. \u0411\u0443\u0434\u044c\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u044b!
pvp.kill.adjectives = ;;;;;;;
pvp.kill.adjectives = ;;\u043c\u043e\u0449\u043d\u043e;\u0441\u043c\u0435\u0440\u0442\u0435\u043b\u044c\u043d\u043e;\u0438\u0437\u044f\u0449\u043d\u043e;\u0442\u043e\u0447\u043d\u043e;\u0436\u0435\u0441\u0442\u043e\u043a\u043e;\u043c\u043e\u0433\u0443\u0447\u0435
pvp.kill.bomb = {0} \u043f\u043e\u0434\u043e\u0440\u0432\u0430\u043b {1}!
pvp.kill.format = {0} {1} {2} {3} {4}
pvp.kill.self = {0} \u0443\u0431\u0438\u043b \u0441\u0430\u043c \u0441\u0435\u0431\u044f
@ -50,7 +54,7 @@ pvp.kill.weapon.bow = \u043b\u0443\u043a\u043e\u043c
pvp.kill.weapon.hand = \u0440\u0443\u043a\u043e\u0439
pvp.outside.permission = \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0430\u0442\u0430\u043a\u043e\u0432\u0430\u0442\u044c \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u0437\u0430 \u0430\u0440\u0435\u043d\u043e\u0439.
pvp.self.notplaying = \u0412\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u0433\u0440\u0430\u0442\u044c \u043d\u0430 \u0430\u0440\u0435\u043d\u0435 \u0447\u0442\u043e\u0431\u044b \u0430\u0442\u0430\u043a\u043e\u0432\u0430\u0442\u044c!
pvp.self.respawn = \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0430\u0442\u0430\u043a\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0441\u043f\u0430\u0443\u043d\u044f\u0441\u044c!
pvp.self.respawn = \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0430\u0442\u0430\u043a\u043e\u0432\u0430\u0442\u044c \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0441\u043f\u0430\u0443\u043d\u0430!
pvp.self.spawn = \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0430\u0442\u0430\u043a\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u043e\u044f \u043d\u0430 \u0441\u043f\u0430\u0443\u043d\u0435!
pvp.target.notplaying = \u042d\u0442\u043e\u0442 \u0438\u0433\u0440\u043e\u043a \u043d\u0435 \u0438\u0433\u0440\u0430\u0435\u0442 \u043d\u0430 \u0430\u0440\u0435\u043d\u0435!
pvp.target.otherzone = \u042d\u0442\u043e\u0442 \u0438\u0433\u0440\u043e\u043a \u0438\u0433\u0440\u0430\u0435\u0442 \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u0430\u0440\u0435\u043d\u0435!
@ -58,7 +62,7 @@ pvp.target.respawn = \u042d\u0442\u043e\u0442 \u0438\u0433\u0440\u043e\u043a \u0
pvp.target.spawn = \u042d\u0442\u043e\u0442 \u0438\u0433\u0440\u043e\u043a \u0441\u0442\u043e\u0438\u0442 \u043d\u0430 \u0441\u043f\u0430\u0443\u043d\u0435!
sign.lobby.autoassign = \u0410\u0440\u0435\u043d\u0430\n{0}\n\u0412\u043e\u0439\u0434\u0438\u0442\u0435 \u0432 \u0430\u0432\u0442\u043e-\n\u043f\u043e\u0440\u0442\u0430\u043b.
sign.lobby.pick = \u0410\u0440\u0435\u043d\u0430\n{0}\n\n\u0412\u044b\u0431\u0435\u0440\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u0443.
sign.lobby.warhub = \n\u041d\u0430 \u0425\u0430\u0431\n\u0430\u0440\u0435\u043d\n
sign.lobby.warhub = \n\u041d\u0430 \u0425\u0430\u0431 \u0430\u0440\u0435\u043d\n\n
sign.team.limited = \u041a\u043e\u043c\u0430\u043d\u0434\u0430 {0}\n{1}/{2} \u0438\u0433\u0440\u043e\u043a\u043e\u0432\n{3}/{4} \u043e\u0447\u043a\u043e\u0432\n{5} \u0436\u0438\u0437\u043d\u0435\u0439
sign.team.unlimited = \u041a\u043e\u043c\u0430\u043d\u0434\u0430 {0}\n{1}/{2} \u0438\u0433\u0440\u043e\u043a\u043e\u0432\n{3}/{4} \u043e\u0447\u043a\u043e\u0432\n\u0431\u0435\u0441\u043a.\u0436\u0438\u0437\u043d\u0435\u0439
sign.warhub = \u0425\u0430\u0431 \u0430\u0440\u0435\u043d\n(/warhub)\n\u0412\u044b\u0431\u0435\u0440\u0438\n\u0430\u0440\u0435\u043d\u0443!
@ -77,13 +81,13 @@ war.prefix = War>
war.title = War
warhub.none = \u0425\u0430\u0431 \u043d\u0430 \u044d\u0442\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043d\u0435 \u0441\u043e\u0437\u0434\u0430\u043d. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 /zones \u0438 /zone.
warhub.permission = \u0423 \u0412\u0430\u0441 \u043d\u0435\u0442 \u043f\u0440\u0430\u0432 \u0434\u043b\u044f \u0442\u0435\u043b\u0435\u043f\u043e\u0440\u0442\u0430 \u043d\u0430 \u0425\u0430\u0431.
warhub.teleport = \u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u0425\u0430\u0431!\u0412\u044b\u0431\u0435\u0440\u0438 \u0430\u0440\u0435\u043d\u0443!
warhub.teleport = \u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u0425\u0430\u0431! \u0412\u044b\u0431\u0435\u0440\u0438 \u0430\u0440\u0435\u043d\u0443!
zone.airstrike = {0} called in an airstrike!
zone.battle.end = \u0411\u043e\u0439 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u0441\u044f. \u041a\u043e\u043c\u0430\u043d\u0434\u0430 {0} \u043f\u0440\u043e\u0438\u0433\u0440\u0430\u043b\u0430: {1} \u0443\u043c\u0435\u0440, \u043a\u043e\u0433\u0434\u0430 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u043f\u0430\u0441 \u0436\u0438\u0437\u043d\u0435\u0439 \u0438\u0441\u0441\u044f\u043a.
zone.battle.end = \u0411\u043e\u0439 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u0441\u044f. \u041a\u043e\u043c\u0430\u043d\u0434\u0430 {0} \u043f\u0440\u043e\u0438\u0433\u0440\u0430\u043b\u0430: {1} \u0443\u043c\u0435\u0440, \u0438 \u0438\u0445 \u0436\u0438\u0437\u043d\u0438 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u0438\u0441\u044c.
zone.battle.newscores = \u0421\u0447\u0435\u0442 - {0}
zone.battle.next = \u0411\u043e\u0439 \u0431\u044b\u043b \u043f\u0440\u0435\u0440\u0432\u0430\u043d. \u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0430\u0440\u0435\u043d\u044b {0}...
zone.battle.reset = \u041d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043d\u043e\u0432\u044b\u0439 \u0431\u043e\u0439. \u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0430\u0440\u0435\u043d\u044b...
zone.battle.resetprogress = \u0421\u0431\u0440\u043e\u0441 \u043f\u0440\u043e\u0433\u0440\u0435\u0441\u0441\u0430: {0}%, {1} \u0441\u0435\u043a.
zone.battle.resetprogress = \u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438: {0}%, {1} \u0441\u0435\u043a.
zone.battle.resetcomplete = \u0410\u0440\u0435\u043d\u0430 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 {0} \u0441\u0435\u043a. \u041d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043d\u043e\u0432\u044b\u0439 \u0431\u043e\u0439...
zone.bomb.broadcast = {0} \u043f\u043e\u0434\u043e\u0440\u0432\u0430\u043b \u0441\u043f\u0430\u0443\u043d {1}. \u041a\u043e\u043c\u0430\u043d\u0434\u0430 {2} \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 1 \u043e\u0447\u043a\u043e.
zone.cake.broadcast = {0} \u043f\u0440\u0438\u043d\u0435\u0441 \u0442\u043e\u0440\u0442 "{1}". \u041a\u043e\u043c\u0430\u043d\u0434\u0430 {2} \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 1 \u043e\u0447\u043a\u043e \u0438 \u043f\u043e\u043f\u043e\u043b\u043d\u044f\u044e\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0436\u0438\u0437\u043d\u0435\u0439.
@ -100,12 +104,12 @@ zone.monument.capture = \u041c\u043e\u043d\u0443\u043c\u0435\u043d\u0442 "{0}" \
zone.monument.lose = \u041a\u043e\u043c\u0430\u043d\u0434\u0430 {0} \u043f\u043e\u0442\u0435\u0440\u044f\u043b\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u043d\u0430\u0434 \u043c\u043e\u043d\u0443\u043c\u0435\u043d\u0442\u043e\u043c "{1}"
zone.monument.voodoo = \u0412\u0430\u0448 \u0442\u0430\u043d\u0435\u0446 \u043f\u043e\u043d\u0440\u0430\u0432\u0438\u043b\u0441\u044f \u043c\u043e\u043d\u0443\u043c\u0435\u043d\u0442\u0443. \u0412\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 {0} \u0441\u0435\u0440\u0434\u0435\u0447\u0435\u043a!
zone.noteamnotice = \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0431\u044b\u0442\u044c \u043d\u0430 \u0430\u0440\u0435\u043d\u0435 \u0431\u0435\u0437 \u0432\u044b\u0431\u043e\u0440\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u044b.
zone.score.board404 = \u042d\u0442\u0430 \u0430\u0440\u0435\u043d\u0430 \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u043b\u0430 \u0434\u043e\u0441\u043a\u0443 \u0441\u043e \u0441\u0447\u0435\u0442\u043e\u043c.
zone.score.empty = \u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u0447\u0435\u0442, \u043f\u043e\u043a\u0430 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0445\u043e\u0442\u044c \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0433\u0440\u043e\u043a\u0438 \u0432 \u0434\u0440\u0443\u0433\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435.
zone.spawn.minplayers = \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u043a\u0438\u0434\u0430\u0442\u044c \u0441\u043f\u0430\u0443\u043d \u043f\u043e\u043a\u0430 \u043d\u0435 \u043d\u0430\u0431\u0435\u0440\u0435\u0442\u0441\u044f \u043c\u0438\u043d\u0438\u043c\u0443\u043c {0} \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u0432 {1} \u043a\u043e\u043c\u0430\u043d\u0434\u0435.
zone.score.board404 = \u041d\u0430 \u044d\u0442\u043e\u0439 \u0430\u0440\u0435\u043d\u0435 \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d \u043f\u043e\u043a\u0430\u0437 \u043e\u0447\u043a\u043e\u0432.
zone.score.empty = \u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u0447\u0435\u0442, \u043f\u043e\u043a\u0430 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0445\u043e\u0442\u044c \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0433\u0440\u043e\u043a\u0430 \u0432 \u0434\u0440\u0443\u0433\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435.
zone.spawn.minplayers = \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u043a\u0438\u0434\u0430\u0442\u044c \u0441\u043f\u0430\u0443\u043d, \u043f\u043e\u043a\u0430 \u043d\u0435 \u043d\u0430\u0431\u0435\u0440\u0435\u0442\u0441\u044f \u043c\u0438\u043d\u0438\u043c\u0443\u043c {0} \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u0432 {1} \u043a\u043e\u043c\u0430\u043d\u0434\u0435.
zone.spawn.timer = \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u043a\u0430\u0438\u0434\u0430\u0442\u044c \u0441\u043f\u0430\u0443\u043d \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0438 {0} \u0441\u0435\u043a. \u043f\u043e\u0441\u043b\u0435 \u0440\u0435\u0441\u043f\u0430\u0432\u043d\u0430!
zone.steal.bomb.broadcast = {0} \u043d\u0430\u0448\u0435\u043b \u0431\u043e\u043c\u0431\u0443 "{1}".
zone.steal.bomb.notice = \u0412\u044b \u0438\u043c\u0435\u0435\u0442\u0435 \u0431\u043e\u043c\u0431\u0443 "{0}". \u041f\u0440\u0438\u043d\u0435\u0441\u0438\u0442\u0435 \u0435\u0435 \u043a \u0432\u0440\u0430\u0436\u0435\u0441\u043a\u043e\u0439 \u0431\u0430\u0437\u0435. \u041d\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0439\u0442\u0435 \u0443\u0440\u043e\u043d\u0435, \u0438\u043d\u0430\u0447\u0435 \u0412\u044b \u0432\u0437\u043e\u0440\u0432\u0435\u0442\u0435\u0441\u044c!
zone.steal.bomb.notice = \u0412\u044b \u043d\u0435\u0441\u0435\u0442\u0435 \u0431\u043e\u043c\u0431\u0443 "{0}". \u041f\u0440\u0438\u043d\u0435\u0441\u0438\u0442\u0435 \u0435\u0435 \u043a \u0432\u0440\u0430\u0436\u0435\u0441\u043a\u043e\u0439 \u0431\u0430\u0437\u0435. \u041d\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0439\u0442\u0435 \u0443\u0440\u043e\u043d, \u0438\u043d\u0430\u0447\u0435 \u0412\u044b \u0432\u0437\u043e\u0440\u0432\u0435\u0442\u0435\u0441\u044c!
zone.steal.bomb.prevent = \u041d\u0435 \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u0435 {0} \u043f\u0440\u0438\u043d\u0435\u0441\u0442\u0438 \u0431\u043e\u043c\u0431\u0443 \u043a \u0412\u0430\u0448\u0435\u043c\u0443 \u0441\u043f\u0430\u0443\u043d\u0443!
zone.steal.cake.broadcast = {0} \u043d\u0430\u0448\u0435\u043b \u0442\u043e\u0440\u0442 "{1}".
zone.steal.cake.notice = \u0412\u044b \u0438\u043c\u0435\u0435\u0442\u0435 \u0442\u043e\u0440\u0442 "{0}". \u041f\u0440\u0438\u043d\u0435\u0441\u0438\u0442\u0435 \u0435\u0433\u043e \u043a \u0441\u043f\u0430\u0443\u043d\u0443 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u043e\u0447\u043a\u043e \u0438 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 \u0432\u0441\u0435 \u0436\u0438\u0437\u043d\u0438!
@ -113,7 +117,7 @@ zone.steal.cake.prevent = \u041d\u0435 \u0434\u043e\u043f\u0443\u0441\u0442\u043
zone.steal.flag.broadcast = {0} \u0443\u043a\u0440\u0430\u043b \u0444\u043b\u0430\u0433 {1}.
zone.steal.flag.empty = \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u043a\u0440\u0430\u0441\u0442\u044c \u0444\u043b\u0430\u0433 \u043a\u043e\u043c\u0430\u043d\u0434\u044b {0}, \u043a\u043e\u0433\u0434\u0430 \u043d\u0435\u0442 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u0432 \u043d\u0435\u0439.
zone.steal.flag.notice = \u0412\u044b \u0438\u043c\u0435\u0435\u0442\u0435 \u0444\u043b\u0430\u0433 \u043a\u043e\u043c\u0430\u043d\u0434\u044b {0}. \u041f\u0440\u0438\u043d\u0435\u0441\u0438\u0442\u0435 \u0435\u0433\u043e \u043a \u0441\u0432\u043e\u0435\u043c\u0443 \u0444\u043b\u0430\u0433\u0443 \u0438\u043b\u0438 \u0431\u0430\u0437\u0435 \u0434\u043b\u044f \u0437\u0430\u0445\u0432\u0430\u0442\u0430!
zone.steal.flag.prevent = \u0412\u0435\u0440\u043d\u0443\u043b {0} from reaching team {1}''s spawn or flag.
zone.steal.flag.prevent = \u0412\u0435\u0440\u043d\u0443\u043b {0} from reaching team {1}''''s spawn or flag.
zone.stealextra.bomb = \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u043c\u0435\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e 1 \u0431\u043e\u043c\u0431\u0443!
zone.stealextra.cake = \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u043c\u0435\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e 1 \u0442\u043e\u0440\u0442!
zone.stealextra.flag = \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u043c\u0435\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e 1 \u0444\u043b\u0430\u0433!

View File

@ -0,0 +1,4 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Tu nemozes stavat
build.denied.outside = Mozes stavat iba v warzone
build.denied.zone.break = Kocky v warzone su neznicitelne

View File

@ -0,0 +1,83 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Du kan inte bygga h\u00e4r.
build.denied.outside = Du kan bara bygga innanf\u00f6r krigszoner.
build.denied.zone.break = Blocket i denna krigszon \u00e4r of\u00f6rst\u00f6rbar.
build.denied.zone.multteam = Du har redan ett {0} block.
build.denied.zone.outside = Du kan inte f\u00f6rst\u00f6ra en krigszon du spelar inte i den.
build.denied.zone.place = Du kan inte placera blocks i denna krigszon
build.denied.zone.type = Du kan inte \u00e4ndra denna typ av block.
command.console = Du kan inte g\u00f6ra detta om du inte \u00e4r i ett spel.
command.disabled = Du kan bara anv\u00e4nda krigs kommandon (t.ex /leave) medans du spelar.
drop.bomb.broadcast = {0} tappade den {1} bomben!
drop.cake.broadcast = {0} tappade den {1} kakan!
drop.cake.disabled = Du kan inte kasta ut saker medans du stj\u00e4ler kakan. Vad h\u00e5ller du p\u00e5 med?! Spring!
drop.flag.broadcast = {0} tappade den {1} flaggan!
drop.flag.disabled = Du kan inte kasta ut saker medans du har stj\u00e4lt flaggan. Vad h\u00e5ller du p\u00e5 med?! Spring!
drop.item.border = Du kan inte kasta saker n\u00e4r du \u00e4r n\u00e4ra zon kanten.
drop.item.disabled = Du kan inte kasta saker i denna krigs zon.
drop.item.spawn = Du kan inte kasta ut saker n\u00e4r du st\u00e5r still vid spawn.
drop.team = Du kan inte kasta ut {0} blocks.
join.broadcast = {0} gick med i lag {1}
join.disabled = Denna krigszon \u00e4r avst\u00e4ngd.
join.full.all = Alla lag \u00e4r fulla.
join.full.single = Lag {0} \u00e4r fullt.
join.inventorystored = Ditt inventory \u00e4r sparat tills du l\u00e4mnar med /war leave.
join.permission.all = Du har inte tillst\u00e5nd till n\u00e5gra av dessa lag i denna krigszonen.
join.permission.single = Du har inte tillst\u00e5nd att g\u00e5 med i lag {0}.
join.progress = Du kan inte g\u00e5 med i detta krig som redan p\u00e5g\u00e5r i denna zonen.
join.selfteam = Du kan inte g\u00e5 med i ditt egna lag.
join.team404 = Det d\u00e4r laget kunde inte hittas. Anv\u00e4nd /teams f\u00f6r att f\u00e5 upp en lista
leave.broadcast = {0} har l\u00e4mmnat zonen.
leave.inventoryrestore = Ditt inventory har blivit \u00e5terst\u00e4lld.
pvp.death.drown = {0} har drunknat
pvp.death.explosion = {0} har exploderat
pvp.death.fall = {0} f\u00f6ll till en f\u00f6r tidig d\u00f6d
pvp.death.fire = {0} br\u00e4ndes upp
pvp.death.other = {0} dog
pvp.ff.disabled = Din attack missade! Ditt m\u00e5l \u00e4r i ditt lag.
pvp.ff.enabled = Friendly fire \u00e4r p\u00e5! Sn\u00e4lla, skada inte dina lagkamrater.
pvp.kill.adjectives = ;;m\u00e4ktig;d\u00f6dlig;fin;precise;exakt;brutal;kraftfull
pvp.kill.bomb = {0} gjorde {1} spr\u00e4ngdes upp!
pvp.kill.format = {0} s {1} {2} {3} {4}
pvp.kill.self = {0} begick sj\u00e4lvmord
pvp.kill.weapon.aim = sikte
pvp.kill.weapon.bow = pilb\u00e5ge
pvp.kill.weapon.hand = hand
pvp.outside.permission = Du kan inte attackera spelare utanf\u00f6r krigszoner.
pvp.self.notplaying = Du beh\u00f6ver vara med i denna krigszon f\u00f6r att kunna sl\u00e5ss.
pvp.self.respawn = Du kan inte attackera medans du \u00e5terupplivas!
pvp.self.spawn = Du kan inte attackera medans du \u00e4r kvar i spawn.
pvp.target.notplaying = Ditt m\u00e5l spelar inte i krigszonen.
pvp.target.otherzone = Ditt m\u00e5l spelar i en annan krigszon.
pvp.target.respawn = Ditt m\u00e5l h\u00e5ller p\u00e5 att \u00e5terupplivas!
pvp.target.spawn = Ditt m\u00e5l \u00e4r fortfarande i spawnet!
sign.lobby.pick = Krigszon\n{0}\n\nV\u00e4lj ett lag.
sign.lobby.warhub = \nTill krigs hub\n
sign.team.limited = Lag {0}\n{1}/{2} spelare\n{3}/{4} Po\u00e4ng\n{5} Liv kvar
sign.team.unlimited = Lag {0}\n{1}/{2} spelare\n{3}/{4} po\u00e4ng\nobegr\u00e4nsat med liv
sign.warhub = Krigs hub\n(/warhub)\nV\u00e4lj din strid!
sign.warzone = Krigszon\n{0}\n{1}/{2} spelare\n{3} lag
use.anvil = Du kan inte anv\u00e4nda st\u00e4d i denna krigszon!
use.enchant = Du kan inte anv\u00e4nda f\u00f6rtrollnings bord i denna krigszon.
use.ender = Du kan inte anv\u00e4nda ender kistor medans du spelar i en krigszon.
use.item.spawn = Du kan inte anv\u00e4nda saker medans du \u00e4r fortfarande i spawn.
wand.toofar = Ditt m\u00e5lblock \u00e4r f\u00f6r l\u00e5ngt iv\u00e4g.
war.notadmin = Du kan inte g\u00f6ra detta om du inte \u00e4r Krigs admin (du beh\u00f6ver tillst\u00e5ndet war.admin)
war.prefix = Krig>
war.title = Krig
warhub.none = Ingen krigs hub p\u00e5 denna server. F\u00f6rs\u00f6k /zones eller /zone
warhub.permission = Du har inte tillst\u00e5nd till att teleportera till krig hub.
warhub.teleport = V\u00e4lkommen till krigsHuben. V\u00e4lj ditt krig!
zone.airstrike = {0} kallade in ett flyganfall!
zone.battle.newscores = Nya po\u00e4ng - {0}
zone.leavenotice = Anv\u00e4nd /war leave f\u00f6r att l\u00e4mna zonen.
zone.steal.flag.broadcast = {0} tog lag {1} flagga.
zone.stealextra.bomb = Du kan bara stj\u00e4la en bomb \u00e5t g\u00e5ngen.
zone.stealextra.cake = Du kan bara stj\u00e4la en kaka \u00e5t g\u00e5ngen.
zone.stealextra.flag = Du kan bara stj\u00e4la en flagga \u00e5t g\u00e5ngen.
zone.stealextra.other = Du kan bara stj\u00e4la en sak \u00e5t g\u00e5ngen.
zone.teaminfo.none = ingen
zone.teaminfo.prefix = Lag:
zone.zone404 = Den krigszonen kunde inte hittas.
zone.zoneinfo.prefix = Krigszoner:
zone.zoneinfo.teleport = Anv\u00e4nd /zone <zon-namn> f\u00f6r att teleportera till en krigszon.

View File

@ -0,0 +1,133 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = \u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e44\u0e14\u0e49\u0e15\u0e23\u0e07\u0e19\u0e35\u0e49
build.denied.outside = \u0e04\u0e38\u0e13\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e44\u0e14\u0e49\u0e40\u0e09\u0e1e\u0e32\u0e30\u0e43\u0e19\u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\u0e40\u0e17\u0e48\u0e32\u0e19\u0e31\u0e49\u0e19
build.denied.teamblock = \u0e04\u0e38\u0e13\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e0a\u0e49\u0e1a\u0e25\u0e47\u0e2d\u0e01\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e40\u0e01\u0e47\u0e1a\u0e41\u0e15\u0e49\u0e21\u0e40\u0e17\u0e48\u0e32\u0e19\u0e31\u0e49\u0e19
build.denied.zone.break = \u0e1a\u0e25\u0e47\u0e2d\u0e01\u0e43\u0e19\u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e17\u0e33\u0e25\u0e32\u0e22\u0e44\u0e14\u0e49
build.denied.zone.multteam = \u0e04\u0e38\u0e13\u0e21\u0e35\u0e1a\u0e25\u0e47\u0e2d\u0e01\u0e2d\u0e22\u0e39\u0e48\u0e41\u0e25\u0e49\u0e27 {0} \u0e1a\u0e25\u0e47\u0e2d\u0e01
build.denied.zone.outside = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e17\u0e33\u0e25\u0e32\u0e22\u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e40\u0e25\u0e48\u0e19\u0e2d\u0e22\u0e39\u0e48\u0e44\u0e14\u0e49
build.denied.zone.place = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e27\u0e32\u0e07\u0e1a\u0e25\u0e47\u0e2d\u0e01\u0e43\u0e19\u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\u0e44\u0e14\u0e49
build.denied.zone.type = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e1b\u0e23\u0e31\u0e1a\u0e41\u0e15\u0e48\u0e07\u0e1a\u0e25\u0e47\u0e2d\u0e01\u0e19\u0e35\u0e49\u0e44\u0e14\u0e49
command.console = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e17\u0e33\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e19\u0e35\u0e49\u0e44\u0e14\u0e49\u0e16\u0e49\u0e32\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e2d\u0e22\u0e39\u0e48\u0e43\u0e19\u0e40\u0e01\u0e21
command.disabled = \u0e04\u0e38\u0e13\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e43\u0e0a\u0e49\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e02\u0e2d\u0e07\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\u0e44\u0e14\u0e49\u0e40\u0e17\u0e48\u0e32\u0e19\u0e31\u0e49\u0e19 \u0e40\u0e0a\u0e48\u0e19 /leave \u0e02\u0e13\u0e30\u0e01\u0e33\u0e25\u0e31\u0e07\u0e40\u0e25\u0e48\u0e19\u0e01\u0e31\u0e19
command.tp.init = \u0e01\u0e23\u0e38\u0e13\u0e32\u0e23\u0e2d {0} \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35 \u0e01\u0e48\u0e2d\u0e19\u0e17\u0e33\u0e01\u0e32\u0e23\u0e40\u0e04\u0e25\u0e37\u0e48\u0e2d\u0e19\u0e22\u0e49\u0e32\u0e22 \u0e2b\u0e32\u0e01\u0e21\u0e35\u0e01\u0e32\u0e23\u0e02\u0e22\u0e31\u0e1a\u0e08\u0e30\u0e40\u0e1b\u0e47\u0e19\u0e01\u0e32\u0e23\u0e22\u0e01\u0e40\u0e25\u0e34\u0e01\u0e17\u0e31\u0e19\u0e17\u0e35
command.tp.moved = \u0e01\u0e32\u0e23\u0e40\u0e04\u0e25\u0e37\u0e48\u0e2d\u0e19\u0e22\u0e49\u0e32\u0e22\u0e16\u0e39\u0e01\u0e22\u0e01\u0e40\u0e25\u0e34\u0e01\u0e42\u0e14\u0e22\u0e01\u0e32\u0e23\u0e02\u0e22\u0e31\u0e1a\u0e15\u0e31\u0e27
command.tp.damaged = \u0e01\u0e32\u0e23\u0e40\u0e04\u0e25\u0e37\u0e48\u0e2d\u0e19\u0e22\u0e49\u0e32\u0e22\u0e16\u0e39\u0e01\u0e22\u0e01\u0e40\u0e25\u0e34\u0e01\u0e42\u0e14\u0e22\u0e01\u0e32\u0e23\u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a\u0e04\u0e27\u0e32\u0e21\u0e40\u0e2a\u0e35\u0e22\u0e2b\u0e32\u0e22
command.tp.success = \u0e04\u0e38\u0e13\u0e16\u0e39\u0e01\u0e40\u0e04\u0e25\u0e37\u0e48\u0e2d\u0e19\u0e22\u0e49\u0e32\u0e22\u0e41\u0e25\u0e49\u0e27 \u0e02\u0e2d\u0e43\u0e2b\u0e49\u0e42\u0e0a\u0e04\u0e14\u0e35
drop.bomb.broadcast = {0} \u0e27\u0e32\u0e07\u0e23\u0e30\u0e40\u0e1a\u0e34\u0e14 {1} \u0e25\u0e39\u0e01 \u0e41\u0e25\u0e49\u0e27\u0e19\u0e30\u0e08\u0e49\u0e30!
drop.bomb.disabled = \u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e17\u0e34\u0e49\u0e07\u0e02\u0e2d\u0e07\u0e44\u0e14\u0e49\u0e02\u0e13\u0e30\u0e16\u0e37\u0e2d\u0e23\u0e30\u0e40\u0e1a\u0e34\u0e14\u0e44\u0e14\u0e49 \u0e17\u0e33\u0e44\u0e07\u0e44\u0e14\u0e49\u0e25\u0e48\u0e30 \u0e40\u0e01\u0e35\u0e22\u0e23\u0e4c\u0e2b\u0e21\u0e32\u0e44\u0e1b\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14\u0e28\u0e31\u0e15\u0e23\u0e39\u0e2a\u0e34!
drop.cake.broadcast = {0} \u0e27\u0e32\u0e07\u0e40\u0e04\u0e49\u0e01 {1} \u0e01\u0e49\u0e2d\u0e19 \u0e41\u0e25\u0e49\u0e27\u0e19\u0e30\u0e08\u0e49\u0e30!
drop.cake.disabled = \u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e17\u0e34\u0e49\u0e07\u0e02\u0e2d\u0e07\u0e44\u0e14\u0e49\u0e02\u0e13\u0e30\u0e16\u0e37\u0e2d\u0e40\u0e04\u0e49\u0e01\u0e44\u0e14\u0e49 \u0e17\u0e33\u0e44\u0e07\u0e44\u0e14\u0e49\u0e25\u0e48\u0e30 \u0e40\u0e01\u0e35\u0e22\u0e23\u0e4c\u0e2b\u0e21\u0e32\u0e2a\u0e34!
drop.flag.broadcast = {0} \u0e1b\u0e31\u0e01\u0e18\u0e07 {1} \u0e2d\u0e31\u0e19 \u0e41\u0e25\u0e49\u0e27\u0e19\u0e30\u0e08\u0e49\u0e30!
drop.flag.disabled = \u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e17\u0e34\u0e49\u0e07\u0e02\u0e2d\u0e07\u0e44\u0e14\u0e49\u0e02\u0e13\u0e30\u0e16\u0e37\u0e2d\u0e18\u0e07\u0e44\u0e14\u0e49 \u0e17\u0e33\u0e44\u0e07\u0e44\u0e14\u0e49\u0e25\u0e48\u0e30 \u0e40\u0e01\u0e35\u0e22\u0e23\u0e4c\u0e2b\u0e21\u0e32\u0e2a\u0e34!
drop.item.border = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e17\u0e34\u0e49\u0e07\u0e02\u0e2d\u0e07\u0e15\u0e23\u0e07\u0e02\u0e2d\u0e1a\u0e02\u0e2d\u0e07\u0e42\u0e0b\u0e19\u0e44\u0e14\u0e49
drop.item.disabled = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e17\u0e34\u0e49\u0e07\u0e02\u0e2d\u0e07\u0e43\u0e19\u0e42\u0e0b\u0e19\u0e44\u0e14\u0e49
drop.item.spawn = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e23\u0e17\u0e34\u0e49\u0e07\u0e02\u0e2d\u0e07\u0e02\u0e13\u0e30\u0e2d\u0e22\u0e39\u0e48\u0e43\u0e19\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14
drop.team = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e27\u0e32\u0e07 {0} \u0e1a\u0e25\u0e47\u0e2d\u0e01
drop.wand = \u0e04\u0e38\u0e13\u0e17\u0e34\u0e49\u0e07\u0e2d\u0e38\u0e1b\u0e01\u0e23\u0e13\u0e4c\u0e17\u0e33\u0e42\u0e0b\u0e19\u0e41\u0e25\u0e49\u0e27 {0} \u0e2d\u0e31\u0e19
join.aarequired = \u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\u0e19\u0e35\u0e49\u0e15\u0e49\u0e2d\u0e07\u0e01\u0e32\u0e23\u0e43\u0e2b\u0e49\u0e40\u0e02\u0e49\u0e32\u0e17\u0e35\u0e21\u0e41\u0e1a\u0e1a\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34\n\u0e01\u0e23\u0e38\u0e13\u0e32\u0e40\u0e02\u0e49\u0e32\u0e1b\u0e23\u0e30\u0e15\u0e39\u0e40\u0e02\u0e49\u0e32\u0e17\u0e35\u0e21\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34\u0e41\u0e17\u0e19
join.broadcast = {0} \u0e44\u0e14\u0e49\u0e40\u0e02\u0e49\u0e32\u0e23\u0e48\u0e27\u0e21 \u0e17\u0e35\u0e21 {1}
join.disabled = \u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\u0e19\u0e35\u0e49\u0e1b\u0e34\u0e14\u0e2d\u0e22\u0e39\u0e48
join.full.all = \u0e17\u0e38\u0e01\u0e17\u0e35\u0e21\u0e40\u0e15\u0e47\u0e21\u0e41\u0e25\u0e49\u0e27
join.full.single = \u0e17\u0e35\u0e21 {0} \u0e40\u0e15\u0e47\u0e21\u0e41\u0e25\u0e49\u0e27
join.inventorystored = \u0e02\u0e2d\u0e07\u0e02\u0e2d\u0e07\u0e04\u0e38\u0e13\u0e08\u0e30\u0e16\u0e39\u0e01\u0e40\u0e01\u0e47\u0e1a\u0e44\u0e27\u0e49\u0e08\u0e19\u0e01\u0e27\u0e48\u0e32\u0e08\u0e30\u0e2d\u0e2d\u0e01 (/war leave)
join.permission.all = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e21\u0e35\u0e2a\u0e34\u0e17\u0e18\u0e34\u0e01\u0e31\u0e1a\u0e17\u0e35\u0e21\u0e43\u0e14\u0e46\u0e40\u0e25\u0e22\u0e43\u0e19\u0e42\u0e0b\u0e19\u0e19\u0e35\u0e49
join.permission.single = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e21\u0e35\u0e2a\u0e34\u0e17\u0e18\u0e34\u0e40\u0e02\u0e49\u0e32\u0e23\u0e48\u0e27\u0e21\u0e17\u0e35\u0e21 {0}
join.progress = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e40\u0e02\u0e49\u0e32\u0e23\u0e48\u0e27\u0e21\u0e42\u0e0b\u0e19\u0e17\u0e35\u0e48\u0e2d\u0e22\u0e39\u0e48\u0e43\u0e19\u0e2a\u0e16\u0e32\u0e19\u0e30 "\u0e01\u0e33\u0e25\u0e31\u0e07\u0e2a\u0e39\u0e49" \u0e44\u0e14\u0e49
join.selfteam = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e40\u0e02\u0e49\u0e32\u0e17\u0e35\u0e21\u0e02\u0e2d\u0e07\u0e04\u0e38\u0e13\u0e44\u0e14\u0e49
join.team404 = \u0e44\u0e21\u0e48\u0e1e\u0e1a\u0e17\u0e35\u0e21\u0e17\u0e35\u0e48\u0e23\u0e30\u0e1a\u0e38\u0e21\u0e32 \u0e01\u0e23\u0e38\u0e13\u0e32\u0e25\u0e2d\u0e07\u0e43\u0e0a\u0e49 /teams \u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e14\u0e39\u0e0a\u0e37\u0e48\u0e2d\u0e17\u0e35\u0e21
leave.broadcast = {0} \u0e1c\u0e39\u0e49\u0e40\u0e25\u0e48\u0e19\u0e2d\u0e2d\u0e01\u0e08\u0e32\u0e01\u0e42\u0e0b\u0e19
leave.inventoryrestore = \u0e02\u0e2d\u0e07\u0e02\u0e2d\u0e07\u0e04\u0e38\u0e13\u0e16\u0e39\u0e01\u0e04\u0e37\u0e19\u0e41\u0e25\u0e49\u0e27\u0e40\u0e23\u0e35\u0e22\u0e1a\u0e23\u0e49\u0e2d\u0e22
pvp.death.drown = {0} \u0e08\u0e21\u0e19\u0e49\u0e33
pvp.death.explosion = {0} \u0e16\u0e39\u0e01\u0e23\u0e30\u0e40\u0e1a\u0e34\u0e14
pvp.death.fall = {0} \u0e15\u0e01\u0e08\u0e32\u0e01\u0e2a\u0e19\u0e32\u0e21
pvp.death.fire = {0} \u0e44\u0e1f\u0e44\u0e2b\u0e21\u0e49\u0e15\u0e31\u0e27\u0e15\u0e32\u0e22
pvp.death.other = {0} \u0e15\u0e32\u0e22
pvp.ff.disabled = \u0e42\u0e08\u0e21\u0e15\u0e35\u0e1e\u0e25\u0e32\u0e14! \u0e40\u0e1b\u0e49\u0e32\u0e2b\u0e21\u0e32\u0e22\u0e19\u0e31\u0e49\u0e19\u0e41\u0e25\u0e49\u0e27\u0e41\u0e15\u0e48\u0e04\u0e38\u0e13
pvp.ff.enabled = \u0e2d\u0e22\u0e48\u0e32\u0e17\u0e33\u0e23\u0e49\u0e32\u0e22\u0e1e\u0e27\u0e01\u0e40\u0e14\u0e35\u0e22\u0e27\u0e01\u0e31\u0e19\u0e2a\u0e34
pvp.kill.adjectives = ;;\u0e2a\u0e38\u0e14\u0e22\u0e2d\u0e14;\u0e21\u0e24\u0e15\u0e22\u0e39;\u0e04\u0e21;\u0e17\u0e35\u0e48\u0e41\u0e21\u0e48\u0e19\u0e22\u0e33;\u0e2d\u0e31\u0e19\u0e42\u0e2b\u0e14\u0e23\u0e49\u0e32\u0e22;\u0e1e\u0e25\u0e31\u0e07\u0e21\u0e2b\u0e32\u0e28\u0e32\u0e25
pvp.kill.bomb = {0} \u0e23\u0e30\u0e40\u0e1a\u0e34\u0e14\u0e43\u0e2a\u0e48 {1}
pvp.kill.format = {0} \u0e44\u0e14\u0e49\u0e43\u0e0a\u0e49 {2}{1}{3}{4}
pvp.kill.self = {0} \u0e06\u0e48\u0e32\u0e15\u0e31\u0e27\u0e15\u0e32\u0e22
pvp.kill.verbs = \u0e16\u0e39\u0e01\u0e06\u0e48\u0e32;\u0e16\u0e39\u0e01\u0e06\u0e48\u0e32;\u0e16\u0e39\u0e01\u0e06\u0e48\u0e32;\u0e40\u0e23\u0e35\u0e22\u0e1a\u0e23\u0e49\u0e2d\u0e22;\u0e16\u0e39\u0e01\u0e17\u0e33\u0e25\u0e32\u0e22;\u0e16\u0e39\u0e01\u0e06\u0e32\u0e15\u0e01\u0e23\u0e23\u0e21;\u0e2b\u0e32\u0e22\u0e15\u0e31\u0e27\u0e44\u0e1b;\u0e16\u0e39\u0e01\u0e01\u0e33\u0e08\u0e31\u0e14
pvp.kill.weapon.aim = \u0e40\u0e25\u0e47\u0e07
pvp.kill.weapon.bow = \u0e25\u0e39\u0e01\u0e28\u0e23
pvp.kill.weapon.hand = \u0e21\u0e37\u0e2d
pvp.outside.permission = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e15\u0e35\u0e1c\u0e39\u0e49\u0e2d\u0e37\u0e48\u0e19\u0e17\u0e35\u0e48\u0e2d\u0e22\u0e39\u0e48\u0e19\u0e2d\u0e01\u0e42\u0e0b\u0e19\u0e44\u0e14\u0e49
pvp.self.notplaying = \u0e04\u0e38\u0e13\u0e15\u0e49\u0e2d\u0e07\u0e40\u0e02\u0e49\u0e32\u0e23\u0e48\u0e27\u0e21\u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\u0e19\u0e35\u0e49\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e42\u0e08\u0e21\u0e15\u0e35
pvp.self.respawn = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e42\u0e08\u0e21\u0e15\u0e35\u0e02\u0e13\u0e30\u0e01\u0e33\u0e25\u0e31\u0e07\u0e40\u0e01\u0e34\u0e14\u0e43\u0e2b\u0e21\u0e48
pvp.self.spawn = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e42\u0e08\u0e21\u0e15\u0e35\u0e02\u0e13\u0e30\u0e2d\u0e22\u0e39\u0e48\u0e43\u0e19\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14
pvp.target.notplaying = \u0e40\u0e1b\u0e49\u0e32\u0e2b\u0e21\u0e32\u0e22\u0e02\u0e2d\u0e07\u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2d\u0e22\u0e39\u0e48\u0e17\u0e35\u0e48\u0e19\u0e35\u0e49
pvp.target.otherzone = \u0e40\u0e1b\u0e49\u0e32\u0e2b\u0e21\u0e32\u0e22\u0e02\u0e2d\u0e07\u0e04\u0e38\u0e13\u0e2d\u0e22\u0e39\u0e48\u0e42\u0e0b\u0e19\u0e2d\u0e37\u0e48\u0e19
pvp.target.respawn = \u0e40\u0e1b\u0e49\u0e32\u0e2b\u0e21\u0e32\u0e22\u0e01\u0e33\u0e25\u0e31\u0e07\u0e40\u0e01\u0e34\u0e14\u0e43\u0e2b\u0e21\u0e48
pvp.target.spawn = \u0e40\u0e1b\u0e49\u0e32\u0e2b\u0e21\u0e32\u0e22\u0e22\u0e31\u0e07\u0e2d\u0e22\u0e39\u0e48\u0e43\u0e19\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14
sign.lobby.autoassign = \u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\n{0}\n\u0e40\u0e02\u0e49\u0e32\u0e2a\u0e39\u0e48\u0e1b\u0e23\u0e30\u0e15\u0e39\n\u0e40\u0e02\u0e49\u0e32\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34
sign.lobby.pick = \u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\n{0}\n\n\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e17\u0e35\u0e21\u0e2a\u0e34
sign.lobby.warhub = \n\u0e44\u0e1b\u0e08\u0e38\u0e14\u0e23\u0e27\u0e21\u0e42\u0e0b\u0e19\n
sign.team.limited = \u0e17\u0e35\u0e21 {0}\n\u0e1c\u0e39\u0e49\u0e40\u0e25\u0e48\u0e19 {1}/{2} \u0e04\u0e19\n{3}/{4} \u0e41\u0e15\u0e49\u0e21\n{5} \u0e0a\u0e35\u0e27\u0e34\u0e15\u0e17\u0e35\u0e48\u0e40\u0e2b\u0e25\u0e37\u0e2d
sign.team.unlimited = \u0e17\u0e35\u0e21 {0}\n\u0e1c\u0e39\u0e49\u0e40\u0e25\u0e48\u0e19 {1}/{2} \u0e04\u0e19\n{3}/{4} \u0e41\u0e15\u0e49\u0e21\n\u0e44\u0e21\u0e48\u0e08\u0e33\u0e01\u0e31\u0e14\u0e0a\u0e35\u0e27\u0e34\u0e15
sign.warhub = \u0e08\u0e38\u0e14\u0e23\u0e27\u0e21\u0e42\u0e0b\u0e19\n(/warhub)\n\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e44\u0e1b\n1 \u0e1b\u0e23\u0e30\u0e15\u0e39
sign.warzone = \u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\n{0}\n\u0e1c\u0e39\u0e49\u0e40\u0e25\u0e48\u0e19 {1}/{2} \u0e04\u0e19\n\u0e21\u0e35 {3} \u0e17\u0e35\u0e21
team.chat.enable = \u0e01\u0e32\u0e23\u0e2a\u0e19\u0e17\u0e19\u0e32\u0e43\u0e19\u0e17\u0e35\u0e21\u0e16\u0e39\u0e01\u0e40\u0e1b\u0e34\u0e14 \u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21\u0e02\u0e2d\u0e07\u0e04\u0e38\u0e13\u0e08\u0e30\u0e16\u0e39\u0e01\u0e2a\u0e48\u0e07\u0e43\u0e2b\u0e49\u0e40\u0e09\u0e1e\u0e32\u0e30\u0e04\u0e19\u0e43\u0e19\u0e17\u0e35\u0e21
team.chat.disable = \u0e01\u0e32\u0e23\u0e2a\u0e19\u0e17\u0e19\u0e32\u0e43\u0e19\u0e17\u0e35\u0e21\u0e16\u0e39\u0e01\u0e1b\u0e34\u0e14
use.anvil = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e43\u0e0a\u0e49\u0e17\u0e31\u0e48\u0e07\u0e40\u0e2b\u0e25\u0e47\u0e01\u0e43\u0e19\u0e19\u0e35\u0e49\u0e44\u0e14\u0e49
use.enchant = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e43\u0e0a\u0e49\u0e42\u0e15\u0e4a\u0e30\u0e40\u0e2a\u0e23\u0e34\u0e21\u0e1e\u0e25\u0e31\u0e07\u0e43\u0e19\u0e19\u0e35\u0e49\u0e44\u0e14\u0e49
use.ender = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e43\u0e0a\u0e49\u0e01\u0e25\u0e48\u0e2d\u0e07\u0e40\u0e2d\u0e19\u0e40\u0e14\u0e2d\u0e23\u0e4c\u0e43\u0e19\u0e19\u0e35\u0e49\u0e44\u0e14\u0e49
use.item.spawn = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e43\u0e0a\u0e49\u0e02\u0e2d\u0e07\u0e02\u0e13\u0e30\u0e2d\u0e22\u0e39\u0e48\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14\u0e44\u0e14\u0e49
use.xpkillmeter = \u0e23\u0e30\u0e1a\u0e1a xpkillmeter \u0e44\u0e14\u0e49\u0e40\u0e27\u0e25\u0e32\u0e40\u0e1b\u0e34\u0e14\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e41\u0e25\u0e49\u0e27
wand.toofar = \u0e40\u0e1b\u0e49\u0e32\u0e2b\u0e21\u0e32\u0e22\u0e2d\u0e22\u0e39\u0e48\u0e44\u0e01\u0e25\u0e40\u0e01\u0e34\u0e19
war.notadmin = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e17\u0e33\u0e44\u0e14\u0e49\u0e40\u0e1e\u0e23\u0e32\u0e30\u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e43\u0e0a\u0e49\u0e1c\u0e39\u0e49\u0e14\u0e39\u0e41\u0e25\u0e23\u0e30\u0e1a\u0e1a (war.admin)
war.notzm = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e17\u0e33\u0e44\u0e14\u0e49\u0e40\u0e1e\u0e23\u0e32\u0e30\u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e43\u0e0a\u0e49\u0e1c\u0e39\u0e49\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e42\u0e0b\u0e19 (war.zonemaker)
war.prefix = \u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21 >
war.title = \u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21
warhub.none = \u0e44\u0e21\u0e48\u0e1e\u0e1a\u0e08\u0e38\u0e14\u0e23\u0e27\u0e21\u0e42\u0e0b\u0e19\u0e1a\u0e19\u0e40\u0e0b\u0e34\u0e1f\u0e40\u0e27\u0e2d\u0e23\u0e4c \u0e25\u0e2d\u0e07\u0e43\u0e0a\u0e49 /zones \u0e2b\u0e23\u0e37\u0e2d /zone
warhub.permission = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e21\u0e35\u0e2a\u0e34\u0e17\u0e18\u0e34\u0e43\u0e0a\u0e49\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e44\u0e1b\u0e08\u0e38\u0e14\u0e23\u0e27\u0e21\u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21
warhub.teleport = \u0e22\u0e34\u0e19\u0e14\u0e35\u0e15\u0e49\u0e2d\u0e07\u0e23\u0e31\u0e1a\u0e2a\u0e39\u0e48\u0e08\u0e38\u0e14\u0e23\u0e27\u0e21\u0e42\u0e0b\u0e19 \u0e40\u0e25\u0e37\u0e2d\u0e01\u0e40\u0e02\u0e49\u0e32\u0e40\u0e25\u0e22!
zone.airstrike = {0} \u0e40\u0e23\u0e35\u0e22\u0e01\u0e01\u0e32\u0e23\u0e42\u0e08\u0e21\u0e15\u0e35\u0e08\u0e32\u0e01\u0e17\u0e32\u0e07\u0e2d\u0e32\u0e01\u0e32\u0e28
zone.battle.end = \u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\u0e08\u0e1a\u0e41\u0e25\u0e49\u0e27 \u0e17\u0e35\u0e21 {0} \u0e41\u0e1e\u0e49 \u0e15\u0e32\u0e22 {1} \u0e04\u0e19 \u0e41\u0e25\u0e30\u0e44\u0e21\u0e48\u0e40\u0e2b\u0e25\u0e37\u0e2d\u0e43\u0e04\u0e23\u0e2d\u0e35\u0e01\u0e40\u0e25\u0e22
zone.battle.newscores = \u0e41\u0e15\u0e49\u0e21\u0e43\u0e2b\u0e21\u0e48 - {0}
zone.battle.next = \u0e01\u0e32\u0e23\u0e2a\u0e39\u0e49\u0e23\u0e1a\u0e40\u0e01\u0e34\u0e14\u0e01\u0e32\u0e23\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14 \u0e01\u0e33\u0e25\u0e31\u0e07\u0e23\u0e35\u0e40\u0e0b\u0e47\u0e15\u0e42\u0e0b\u0e19 {0}
zone.battle.reset = \u0e01\u0e32\u0e23\u0e2a\u0e39\u0e49\u0e23\u0e1a\u0e01\u0e33\u0e25\u0e31\u0e07\u0e40\u0e23\u0e34\u0e48\u0e21\u0e43\u0e19\u0e2d\u0e35\u0e01\u0e44\u0e21\u0e48\u0e0a\u0e49\u0e32\u0e41\u0e25\u0e30\u0e01\u0e33\u0e25\u0e31\u0e07\u0e23\u0e35\u0e40\u0e0b\u0e47\u0e15\u0e42\u0e0b\u0e19
zone.battle.resetprogress = \u0e01\u0e33\u0e25\u0e31\u0e07\u0e23\u0e35\u0e40\u0e0b\u0e47\u0e15\u0e42\u0e0b\u0e19 {0}% \u0e1c\u0e48\u0e32\u0e19\u0e44\u0e1b {1} \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35
zone.battle.resetcomplete = \u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\u0e08\u0e30\u0e40\u0e23\u0e34\u0e48\u0e21\u0e43\u0e2b\u0e21\u0e48\u0e43\u0e19 {0} \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35
zone.bomb.broadcast = {0} \u0e23\u0e30\u0e40\u0e1a\u0e34\u0e14\u0e43\u0e2a\u0e48\u0e17\u0e35\u0e48\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21 {1} \u0e17\u0e35\u0e21 {2} \u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a 1 \u0e41\u0e15\u0e49\u0e21
zone.cake.broadcast = {0} \u0e40\u0e2d\u0e32\u0e40\u0e04\u0e49\u0e01 {1} \u0e44\u0e1b \u0e17\u0e35\u0e21 {2} \u0e23\u0e31\u0e1a\u0e41\u0e15\u0e49\u0e21 1 \u0e41\u0e15\u0e49\u0e21\u0e41\u0e25\u0e30\u0e40\u0e1e\u0e34\u0e48\u0e21\u0e1e\u0e25\u0e31\u0e07\u0e0a\u0e35\u0e27\u0e34\u0e15\u0e14\u0e49\u0e27\u0e22
zone.flagcapture.broadcast = {0} \u0e40\u0e2d\u0e32\u0e18\u0e07\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21 {1} \u0e44\u0e1b \u0e17\u0e35\u0e21 {2} \u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a\u0e41\u0e15\u0e49\u0e21 1 \u0e41\u0e15\u0e49\u0e21
zone.flagreturn.deadlock = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e40\u0e2d\u0e32\u0e18\u0e07\u0e02\u0e2d\u0e07\u0e1d\u0e48\u0e32\u0e22\u0e15\u0e23\u0e07\u0e02\u0e49\u0e32\u0e21\u0e44\u0e14\u0e49 \u0e08\u0e19\u0e27\u0e48\u0e32\u0e18\u0e07\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21\u0e04\u0e38\u0e13\u0e08\u0e30\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e40\u0e2d\u0e32\u0e44\u0e1b
zone.flagreturn.flag = \u0e04\u0e38\u0e13\u0e15\u0e49\u0e2d\u0e07\u0e40\u0e2d\u0e32\u0e18\u0e07\u0e02\u0e2d\u0e07\u0e1d\u0e48\u0e32\u0e22\u0e15\u0e23\u0e07\u0e02\u0e49\u0e32\u0e21\u0e21\u0e32\u0e17\u0e35\u0e48\u0e18\u0e07\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21\u0e04\u0e38\u0e13
zone.flagreturn.spawn = \u0e04\u0e38\u0e13\u0e15\u0e49\u0e2d\u0e07\u0e40\u0e2d\u0e32\u0e18\u0e07\u0e02\u0e2d\u0e07\u0e1d\u0e48\u0e32\u0e22\u0e15\u0e23\u0e07\u0e02\u0e49\u0e32\u0e21\u0e21\u0e32\u0e17\u0e35\u0e48\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14\u0e02\u0e2d\u0e07\u0e04\u0e38\u0e13
zone.leavenotice = \u0e43\u0e0a\u0e49 /war leave \u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e2d\u0e2d\u0e01\u0e08\u0e32\u0e01\u0e42\u0e0b\u0e19
zone.lifepool.empty = \u0e0a\u0e35\u0e27\u0e34\u0e15\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21 {0} \u0e2b\u0e21\u0e14\u0e41\u0e25\u0e49\u0e27 \u0e16\u0e49\u0e32\u0e15\u0e32\u0e22\u0e2d\u0e35\u0e01\u0e01\u0e47\u0e40\u0e1b\u0e47\u0e19\u0e2d\u0e31\u0e19\u0e08\u0e1a\u0e40\u0e01\u0e21\u0e41\u0e25\u0e30\u0e41\u0e1e\u0e49
zone.loadout.equip = \u0e43\u0e2a\u0e48 {0} \u0e42\u0e2b\u0e25\u0e14\u0e40\u0e2d\u0e4a\u0e32\u0e41\u0e25\u0e49\u0e27 (\u0e01\u0e14\u0e22\u0e48\u0e2d\u0e07\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e43\u0e0a\u0e49)
zone.loadout.reenter = \u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e40\u0e1b\u0e25\u0e35\u0e48\u0e22\u0e19\u0e41\u0e1b\u0e25\u0e07\u0e42\u0e2b\u0e25\u0e14\u0e40\u0e2d\u0e4a\u0e32\u0e2b\u0e25\u0e31\u0e07\u0e08\u0e32\u0e01\u0e2d\u0e2d\u0e01\u0e08\u0e32\u0e01\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14
zone.monument.badblock = \u0e04\u0e38\u0e13\u0e15\u0e49\u0e2d\u0e07\u0e40\u0e01\u0e47\u0e1a\u0e2b\u0e38\u0e48\u0e19\u0e01\u0e31\u0e1a\u0e1a\u0e25\u0e47\u0e2d\u0e01\u0e02\u0e19\u0e41\u0e01\u0e30\u0e2a\u0e35\u0e17\u0e35\u0e21\u0e02\u0e2d\u0e07\u0e04\u0e38\u0e13 \u0e40\u0e2d\u0e32\u0e44\u0e14\u0e49\u0e08\u0e32\u0e01\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21\u0e04\u0e38\u0e13
zone.monument.capture = \u0e2b\u0e38\u0e48\u0e19 {0} \u0e42\u0e14\u0e19\u0e40\u0e01\u0e47\u0e1a\u0e42\u0e14\u0e22\u0e17\u0e35\u0e21 {1}
zone.monument.lose = \u0e17\u0e35\u0e21 {0} \u0e40\u0e2a\u0e35\u0e22\u0e01\u0e32\u0e23\u0e04\u0e27\u0e1a\u0e04\u0e38\u0e21\u0e2b\u0e38\u0e48\u0e19 {1}
zone.monument.voodoo = \u0e01\u0e32\u0e23\u0e40\u0e15\u0e49\u0e19\u0e02\u0e2d\u0e07\u0e04\u0e38\u0e13\u0e17\u0e33\u0e43\u0e2b\u0e49\u0e2b\u0e38\u0e48\u0e19\u0e02\u0e2d\u0e07\u0e02\u0e36\u0e48\u0e19! \u0e04\u0e38\u0e13\u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a\u0e0a\u0e35\u0e27\u0e34\u0e15 {0} \u0e0a\u0e35\u0e27\u0e34\u0e15
zone.noteamnotice = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e40\u0e02\u0e49\u0e32\u0e44\u0e1b\u0e43\u0e19\u0e42\u0e0b\u0e19\u0e44\u0e14\u0e49\u0e42\u0e14\u0e22\u0e44\u0e21\u0e48\u0e21\u0e35\u0e17\u0e35\u0e21
zone.score.board404 = \u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21\u0e19\u0e35\u0e49 \u0e23\u0e30\u0e1a\u0e1a\u0e04\u0e30\u0e41\u0e19\u0e19\u0e16\u0e39\u0e01\u0e1b\u0e34\u0e14\u0e2d\u0e22\u0e39\u0e48
zone.score.empty = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e40\u0e2d\u0e32\u0e41\u0e15\u0e49\u0e21\u0e44\u0e14\u0e49\u0e08\u0e19\u0e01\u0e27\u0e48\u0e32\u0e08\u0e30\u0e21\u0e35\u0e1c\u0e39\u0e49\u0e40\u0e25\u0e48\u0e19\u0e2d\u0e35\u0e01\u0e04\u0e19\u0e40\u0e02\u0e49\u0e32\u0e21\u0e32\u0e43\u0e19\u0e17\u0e35\u0e21\u0e2d\u0e37\u0e48\u0e19
zone.spawn.minplayers = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e2d\u0e2d\u0e01\u0e08\u0e32\u0e01\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14\u0e44\u0e14\u0e49\u0e08\u0e19\u0e01\u0e27\u0e48\u0e32\u0e08\u0e30\u0e21\u0e35\u0e1c\u0e39\u0e49\u0e40\u0e25\u0e48\u0e19\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e19\u0e49\u0e2d\u0e22 {0} \u0e04\u0e19 \u0e15\u0e48\u0e2d {1} \u0e17\u0e35\u0e21
zone.spawn.timer = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e2d\u0e2d\u0e01\u0e08\u0e32\u0e01\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14\u0e40\u0e1b\u0e47\u0e19\u0e40\u0e27\u0e25\u0e32 {0} \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e01\u0e34\u0e14\u0e43\u0e2b\u0e21\u0e48
zone.steal.bomb.broadcast = {0} \u0e21\u0e35\u0e23\u0e30\u0e40\u0e1a\u0e34\u0e14 {1}
zone.steal.bomb.notice = \u0e04\u0e38\u0e13\u0e21\u0e35\u0e23\u0e30\u0e40\u0e1a\u0e34\u0e14 {0} \u0e44\u0e1b\u0e22\u0e31\u0e07\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21\u0e2d\u0e37\u0e48\u0e19\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e23\u0e30\u0e40\u0e1a\u0e34\u0e14 \u0e2d\u0e22\u0e48\u0e32\u0e44\u0e1b\u0e42\u0e14\u0e19\u0e43\u0e04\u0e23\u0e25\u0e30 \u0e40\u0e14\u0e35\u0e48\u0e22\u0e27\u0e21\u0e31\u0e19\u0e08\u0e30\u0e23\u0e30\u0e40\u0e1a\u0e34\u0e14\u0e43\u0e2a\u0e48\u0e2b\u0e19\u0e49\u0e32
zone.steal.bomb.prevent = \u0e1b\u0e49\u0e2d\u0e07\u0e01\u0e31\u0e19 {0} \u0e44\u0e21\u0e48\u0e43\u0e2b\u0e49\u0e44\u0e1b\u0e17\u0e35\u0e48\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14\u0e14\u0e49\u0e27\u0e22\u0e23\u0e30\u0e40\u0e1a\u0e34\u0e14
zone.steal.cake.broadcast = {0} \u0e21\u0e35\u0e40\u0e04\u0e49\u0e01 {1}
zone.steal.cake.notice = \u0e04\u0e38\u0e13\u0e21\u0e35\u0e40\u0e04\u0e49\u0e01 {0} \u0e44\u0e1b\u0e17\u0e35\u0e48\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21\u0e04\u0e38\u0e13\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e40\u0e1e\u0e34\u0e48\u0e21\u0e0a\u0e35\u0e27\u0e34\u0e15
zone.steal.cake.prevent = \u0e1b\u0e49\u0e2d\u0e07\u0e01\u0e31\u0e19 {0} \u0e44\u0e21\u0e48\u0e43\u0e2b\u0e49\u0e44\u0e1b\u0e17\u0e35\u0e48\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14\u0e14\u0e49\u0e27\u0e22\u0e40\u0e04\u0e49\u0e01
zone.steal.flag.broadcast = {0} \u0e02\u0e42\u0e21\u0e22\u0e18\u0e07\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21 {1} \u0e44\u0e1b!
zone.steal.flag.empty = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e02\u0e42\u0e21\u0e22\u0e18\u0e07\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21 {0} \u0e44\u0e14\u0e49\u0e40\u0e1e\u0e23\u0e32\u0e30\u0e44\u0e21\u0e48\u0e21\u0e35\u0e43\u0e04\u0e23\u0e2d\u0e22\u0e39\u0e48\u0e43\u0e19\u0e17\u0e35\u0e21
zone.steal.flag.notice = \u0e04\u0e38\u0e13\u0e21\u0e35\u0e18\u0e07\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21 {0} \u0e44\u0e1b\u0e17\u0e35\u0e48\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21\u0e04\u0e38\u0e13\u0e0b\u0e30\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e23\u0e31\u0e1a\u0e41\u0e15\u0e49\u0e21
zone.steal.flag.prevent = \u0e1b\u0e49\u0e2d\u0e07\u0e01\u0e31\u0e19 {0} \u0e08\u0e32\u0e01\u0e01\u0e32\u0e23\u0e40\u0e02\u0e49\u0e32\u0e16\u0e36\u0e07\u0e08\u0e38\u0e14\u0e40\u0e01\u0e34\u0e14\u0e2b\u0e23\u0e37\u0e2d\u0e18\u0e07\u0e02\u0e2d\u0e07\u0e17\u0e35\u0e21 {1}
zone.stealextra.bomb = \u0e04\u0e38\u0e13\u0e40\u0e2d\u0e32\u0e23\u0e30\u0e40\u0e1a\u0e34\u0e14\u0e44\u0e14\u0e49 1 \u0e2d\u0e31\u0e19\u0e15\u0e48\u0e2d\u0e04\u0e23\u0e31\u0e49\u0e07\u0e40\u0e17\u0e48\u0e32\u0e19\u0e31\u0e49\u0e19
zone.stealextra.cake = \u0e04\u0e38\u0e13\u0e40\u0e2d\u0e32\u0e40\u0e04\u0e49\u0e01\u0e44\u0e14\u0e49\u0e41\u0e04\u0e48 1 \u0e01\u0e49\u0e2d\u0e19\u0e15\u0e48\u0e2d\u0e04\u0e23\u0e31\u0e49\u0e07\u0e40\u0e17\u0e48\u0e32\u0e19\u0e31\u0e49\u0e19
zone.stealextra.flag = \u0e04\u0e38\u0e13\u0e40\u0e2d\u0e32\u0e18\u0e07\u0e44\u0e14\u0e49\u0e41\u0e04\u0e48 1 \u0e18\u0e07\u0e15\u0e48\u0e2d\u0e04\u0e23\u0e31\u0e49\u0e07\u0e40\u0e17\u0e48\u0e32\u0e19\u0e31\u0e49\u0e19
zone.stealextra.other = \u0e04\u0e38\u0e13\u0e40\u0e2d\u0e32\u0e02\u0e2d\u0e07\u0e44\u0e14\u0e49\u0e41\u0e04\u0e48 1 \u0e2d\u0e22\u0e48\u0e32\u0e07\u0e15\u0e48\u0e2d\u0e04\u0e23\u0e31\u0e49\u0e07\u0e40\u0e17\u0e48\u0e32\u0e19\u0e31\u0e49\u0e19
zone.teaminfo.format = \u0e17\u0e35\u0e21 {0} : \u0e21\u0e35 {1} \u0e41\u0e15\u0e49\u0e21 \u0e21\u0e35 {2}/{3} \u0e0a\u0e35\u0e27\u0e34\u0e15\u0e17\u0e35\u0e48\u0e40\u0e2b\u0e25\u0e37\u0e2d {4}
zone.teaminfo.none = \u0e44\u0e21\u0e48\u0e1e\u0e1a\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25
zone.teaminfo.prefix = \u0e17\u0e35\u0e21:
zone.teleport = \u0e22\u0e34\u0e19\u0e14\u0e35\u0e15\u0e49\u0e2d\u0e19\u0e23\u0e31\u0e1a\u0e2a\u0e39\u0e48\u0e42\u0e0b\u0e19 {0}
zone.warp.permission = \u0e04\u0e38\u0e13\u0e44\u0e21\u0e48\u0e21\u0e35\u0e2a\u0e34\u0e17\u0e18\u0e34\u0e17\u0e35\u0e48\u0e08\u0e30\u0e44\u0e1b\u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21
zone.zone404 = \u0e44\u0e21\u0e48\u0e1e\u0e1a\u0e42\u0e0b\u0e19\u0e14\u0e31\u0e07\u0e01\u0e25\u0e48\u0e32\u0e27
zone.zoneinfo.format = \u0e17\u0e35\u0e21 {0} : \u0e21\u0e35 {1} \u0e17\u0e35\u0e21 \u0e21\u0e35 {2} \u0e1c\u0e39\u0e49\u0e40\u0e25\u0e48\u0e19
zone.zoneinfo.prefix = \u0e42\u0e0b\u0e19\u0e2a\u0e07\u0e04\u0e23\u0e32\u0e21
zone.zoneinfo.teleport = \u0e43\u0e0a\u0e49 /zone <\u0e0a\u0e37\u0e48\u0e2d\u0e42\u0e0b\u0e19> \u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e44\u0e1b\u0e22\u0e31\u0e07\u0e42\u0e0b\u0e19\u0e19\u0e31\u0e49\u0e19

View File

@ -0,0 +1,6 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = Burada yap\u0131 yapamazs\u0131n\u0131z.
build.denied.outside = Sadece sava\u015f alan\u0131 i\u00e7inde yap\u0131 yapabilirsiniz
build.denied.zone.break = Bu sava\u015f alan\u0131ndaki bloklar k\u0131r\u0131lamaz.
build.denied.zone.multteam = Zaten {0} blo\u011funa sahipsiniz.
zone.teaminfo.prefix = Tak\u0131mlar:

View File

@ -0,0 +1,13 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = \u0412\u0438 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0431\u0443\u0434\u0443\u0432\u0430\u0442\u0438 \u0442\u0443\u0442
build.denied.outside = \u0412\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0431\u0443\u0434\u0443\u0432\u0430\u0442\u0438 \u0442\u0456\u043b\u044c\u043a\u0438 \u0432\u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0456 WAR-\u0437\u043e\u043d\u044b.
build.denied.teamblock = \u0412\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0432\u0430\u0442\u0438 \u0442\u0456\u043b\u044c\u043a\u0438 \u0431\u043b\u043e\u043a\u0438 \u0432\u0430\u0448\u043e\u0457 \u043a\u043e\u043c\u0430\u043d\u0434\u0438, \u0430\u0431\u0438 \u0437\u0430\u0445\u043e\u043f\u0438\u0442\u0438 \u043c\u043e\u043d\u0443\u043c\u0435\u043d\u0442\u0438.
build.denied.zone.break = \u0411\u043b\u043e\u043a\u0438 \u0432 \u0446\u0456\u0439 WAR-\u0437\u043e\u043d\u0456 \u043d\u0435\u043c\u043e\u0436\u043b\u0438\u0432\u043e \u0437\u0440\u0443\u0439\u043d\u0443\u0432\u0430\u0442\u0438!
build.denied.zone.multteam = \u0412\u0438 \u043c\u0430\u0454\u0442\u0435 {0} \u0431\u043b\u043e\u043a\u0456\u0432.
build.denied.zone.outside = \u0412\u0438 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0440\u0443\u0439\u043d\u0443\u0432\u0430\u0442\u0438 WAR-\u0437\u043e\u043d\u0443, \u0442\u043e\u043c\u0443 \u0449\u043e \u043d\u0435 \u0433\u0440\u0430\u0454\u0442\u0435 \u0432 \u043d\u0456\u0439.
build.denied.zone.place = \u0412\u0438 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0431\u043b\u043e\u043a\u0438 \u0432 \u0446\u0456\u0439 WAR-\u0437\u043e\u043d\u0456.
build.denied.zone.type = \u0412\u0438 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0446\u0435\u0439 \u0442\u0438\u043f \u0431\u043b\u043e\u043a\u0443.
command.console = \u0412\u0438 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0440\u043e\u0431\u0438\u0442\u0438 \u0446\u0435, \u044f\u043a\u0449\u043e \u043d\u0435 \u0437\u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0435\u0441\u044c \u0443 \u0433\u0440\u0456.
command.disabled = \u0412\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0432\u0430\u0442\u0438 \u0442\u0456\u043b\u044c\u043a\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u0438 WAR (\u043d\u0430\u043f\u0440\u0438\u043a\u043b\u0430\u0434, /leave), \u043a\u043e\u043b\u0438 \u0412\u0438 \u0443 \u0433\u0440\u0456.
drop.bomb.broadcast = {0} \u043a\u0438\u043d\u0443\u0432 {1} \u0431\u043e\u043c\u0431\u0443!
drop.bomb.disabled = \u0412\u0438 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043a\u0438\u0434\u0430\u0442\u0438 \u0440\u0435\u0447\u0456 \u0432 \u0442\u043e\u0439 \u0447\u0430\u0441, \u043a\u043e\u043b\u0438 \u0432\u0438\u043a\u0440\u0430\u0434\u0430\u0454\u0442\u044c\u0441\u044f \u0431\u043e\u043c\u0431\u0430. \u0429\u043e \u0412\u0438 \u0440\u043e\u0431\u0438\u0442\u0435?! \u0411\u0456\u0436\u0456\u0442\u044c \u0434\u043e \u0441\u043f\u0430\u0432\u043d\u0430 \u0432\u0430\u0448\u043e\u0433\u043e \u0432\u043e\u0440\u043e\u0433\u0430!

View File

@ -0,0 +1,3 @@
# Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
build.denied.location = \u4f60\u4e0d\u53ef\u4ee5\u5728\u9019\u88e1\u5efa\u7bc9\uff01
build.denied.outside = \u4f60\u53ea\u53ef\u4ee5\u5728\u6230\u5340\u5167\u5efa\u7bc9\u3002

View File

@ -1,10 +1,10 @@
name: War
version: 1.8.1 (Nimitz)
description: Minecraft PVP arenas (called warzones) for a fast-paced and structured PVP experience with TDM, CTF & more!
name: ${project.name}
version: ${project.version}
description: ${project.description}
author: tommytony
website: http://war.tommytony.com
website: ${project.url}
main: com.tommytony.war.War
softdepend: [Spout, TagAPI, WorldEdit]
softdepend: [Spout, TagAPI, WorldEdit, Vault]
permissions:
war.*:
description: Full War permissions. Create and destroy warzones. Change War configuration.

View File

@ -0,0 +1,71 @@
package com.tommytony.war.job;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.entity.Player;
import org.junit.Before;
import org.junit.Test;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
public class TeleportPlayerJobTest {
World world;
Player player;
TeleportPlayerJob job;
@Before
public void setUp() throws Exception {
player = mock(Player.class);
world = mock(World.class);
when(world.getName()).thenReturn("world");
when(player.getHealth()).thenReturn(20.0);
when(player.getLocation()).thenReturn(new Location(world, 0, 0, 0));
job = new TeleportPlayerJob(player, new Location(world, 0, 0, 0));
}
@Test
public void testPlayerMove_noMovement_false() {
when(player.getLocation()).thenReturn(new Location(world, 0, 0, 0));
assertFalse(job.hasPlayerMoved());
}
@Test
public void testPlayerMove_smallMovement_false() {
when(player.getLocation()).thenReturn(new Location(world, 0.5, 0.5, 0.5));
assertFalse(job.hasPlayerMoved());
}
@Test
public void testPlayerMove_largeMovement_true() {
when(player.getLocation()).thenReturn(new Location(world, 5, 1, 3));
assertTrue(job.hasPlayerMoved());
}
@Test
public void testPlayerDamage_noDamage_false() {
when(player.getHealth()).thenReturn(20.0);
assertFalse(job.hasPlayerTakenDamage());
}
@Test
public void testPlayerDamage_slightDamage_false() {
when(player.getHealth()).thenReturn(19.5);
assertFalse(job.hasPlayerTakenDamage());
}
@Test
public void testPlayerDamage_largeDamage_true() {
when(player.getHealth()).thenReturn(14.0);
assertTrue(job.hasPlayerTakenDamage());
}
}