moar translatify :3

Add some missing TL nodes
Remove Lang class
You can now into changing command descriptions
This commit is contained in:
korikisulda 2015-01-20 18:27:26 +00:00 committed by eueln
parent 3d52704c5d
commit 1cc544db64
13 changed files with 405 additions and 185 deletions

View File

@ -205,8 +205,6 @@ public class Conf {
public static boolean ownedAreaProtectMaterials = true; public static boolean ownedAreaProtectMaterials = true;
public static boolean ownedAreaDenyUseage = true; public static boolean ownedAreaDenyUseage = true;
public static String ownedLandMessage = "Owner(s): ";
public static String publicLandMessage = "Public faction land.";
public static boolean ownedMessageOnBorder = true; public static boolean ownedMessageOnBorder = true;
public static boolean ownedMessageInsideTerritory = true; public static boolean ownedMessageInsideTerritory = true;
public static boolean ownedMessageByChunk = false; public static boolean ownedMessageByChunk = false;

View File

@ -165,15 +165,15 @@ public class FactionsPlayerListener implements Listener {
if (changedFaction) { if (changedFaction) {
me.sendFactionHereMessage(); me.sendFactionHereMessage();
if (Conf.ownedAreasEnabled && Conf.ownedMessageOnBorder && myFaction == factionTo && !ownersTo.isEmpty()) { if (Conf.ownedAreasEnabled && Conf.ownedMessageOnBorder && myFaction == factionTo && !ownersTo.isEmpty()) {
me.sendMessage(Conf.ownedLandMessage + ownersTo); me.sendMessage(TL.GENERIC_OWNERS.format(ownersTo));
} }
} else if (Conf.ownedAreasEnabled && Conf.ownedMessageInsideTerritory && factionFrom == factionTo && myFaction == factionTo) { } else if (Conf.ownedAreasEnabled && Conf.ownedMessageInsideTerritory && factionFrom == factionTo && myFaction == factionTo) {
String ownersFrom = myFaction.getOwnerListString(from); String ownersFrom = myFaction.getOwnerListString(from);
if (Conf.ownedMessageByChunk || !ownersFrom.equals(ownersTo)) { if (Conf.ownedMessageByChunk || !ownersFrom.equals(ownersTo)) {
if (!ownersTo.isEmpty()) { if (!ownersTo.isEmpty()) {
me.sendMessage(Conf.ownedLandMessage + ownersTo); me.sendMessage(TL.GENERIC_OWNERS.format(ownersTo));
} else if (!Conf.publicLandMessage.isEmpty()) { } else if (!TL.GENERIC_PUBLICLAND.toString().isEmpty()) {
me.sendMessage(Conf.publicLandMessage); me.sendMessage(TL.GENERIC_PUBLICLAND.toString());
} }
} }
} }

View File

@ -4,6 +4,8 @@ import com.massivecraft.factions.FPlayer;
import com.massivecraft.factions.P; import com.massivecraft.factions.P;
import com.massivecraft.factions.integration.Econ; import com.massivecraft.factions.integration.Econ;
import com.massivecraft.factions.scoreboards.FSidebarProvider; import com.massivecraft.factions.scoreboards.FSidebarProvider;
import com.massivecraft.factions.zcore.util.TL;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
@ -29,7 +31,7 @@ public class FDefaultSidebar extends FSidebarProvider {
} }
private String replace(FPlayer fplayer, String s) { private String replace(FPlayer fplayer, String s) {
String faction = !fplayer.getFaction().isNone() ? fplayer.getFaction().getTag() : "factionless"; String faction = !fplayer.getFaction().isNone() ? fplayer.getFaction().getTag() : TL.GENERIC_FACTIONLESS.toString();
String powerBoost = String.valueOf((int) fplayer.getPowerBoost()); String powerBoost = String.valueOf((int) fplayer.getPowerBoost());
s = s.replace("{name}", fplayer.getName()).replace("{power}", String.valueOf(fplayer.getPowerRounded())).replace("{balance}", String.valueOf(Econ.getFriendlyBalance(fplayer.getPlayer().getUniqueId()))).replace("{faction}", faction).replace("{maxPower}", String.valueOf(fplayer.getPowerMaxRounded())).replace("{totalOnline}", String.valueOf(Bukkit.getServer().getOnlinePlayers().length)).replace("{powerBoost}", powerBoost); s = s.replace("{name}", fplayer.getName()).replace("{power}", String.valueOf(fplayer.getPowerRounded())).replace("{balance}", String.valueOf(Econ.getFriendlyBalance(fplayer.getPlayer().getUniqueId()))).replace("{faction}", faction).replace("{maxPower}", String.valueOf(fplayer.getPowerMaxRounded())).replace("{totalOnline}", String.valueOf(Bukkit.getServer().getOnlinePlayers().length)).replace("{powerBoost}", powerBoost);
return ChatColor.translateAlternateColorCodes('&', s); return ChatColor.translateAlternateColorCodes('&', s);

View File

@ -1,14 +1,16 @@
package com.massivecraft.factions.struct; package com.massivecraft.factions.struct;
import com.massivecraft.factions.zcore.util.TL;
public enum ChatMode { public enum ChatMode {
FACTION(2, "faction chat"), FACTION(2, TL.CHAT_FACTION),
ALLIANCE(1, "alliance chat"), ALLIANCE(1, TL.CHAT_ALLIANCE),
PUBLIC(0, "public chat"); PUBLIC(0, TL.CHAT_PUBLIC);
public final int value; public final int value;
public final String nicename; public final TL nicename;
private ChatMode(final int value, final String nicename) { private ChatMode(final int value, final TL nicename) {
this.value = value; this.value = value;
this.nicename = nicename; this.nicename = nicename;
} }
@ -23,7 +25,7 @@ public enum ChatMode {
@Override @Override
public String toString() { public String toString() {
return this.nicename; return this.nicename.toString();
} }
public ChatMode getNext() { public ChatMode getNext() {

View File

@ -2,11 +2,14 @@ package com.massivecraft.factions.util;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import com.massivecraft.factions.zcore.util.TL;
import java.util.ArrayList; import java.util.ArrayList;
public class AsciiCompass { public class AsciiCompass {
public enum Point { public enum Point {
N('N'), N('N'),
NE('/'), NE('/'),
E('E'), E('E'),
@ -27,8 +30,16 @@ public class AsciiCompass {
return String.valueOf(this.asciiChar); return String.valueOf(this.asciiChar);
} }
public String getTranslation(){
if(this==N) return TL.COMPASS_SHORT_NORTH.toString();
if(this==E) return TL.COMPASS_SHORT_EAST.toString();
if(this==S) return TL.COMPASS_SHORT_SOUTH.toString();
if(this==W) return TL.COMPASS_SHORT_WEST.toString();
return toString();
}
public String toString(boolean isActive, ChatColor colorActive, String colorDefault) { public String toString(boolean isActive, ChatColor colorActive, String colorDefault) {
return (isActive ? colorActive : colorDefault) + String.valueOf(this.asciiChar); return (isActive ? colorActive : colorDefault) + getTranslation();
} }
} }

View File

@ -3,6 +3,8 @@ package com.massivecraft.factions.util;
import com.massivecraft.factions.Conf; import com.massivecraft.factions.Conf;
import com.massivecraft.factions.FPlayer; import com.massivecraft.factions.FPlayer;
import com.massivecraft.factions.P; import com.massivecraft.factions.P;
import com.massivecraft.factions.zcore.util.TL;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import org.bukkit.entity.Creature; import org.bukkit.entity.Creature;
import org.bukkit.entity.Entity; import org.bukkit.entity.Entity;
@ -64,16 +66,16 @@ public class MiscUtil {
ArrayList<String> errors = new ArrayList<String>(); ArrayList<String> errors = new ArrayList<String>();
if (getComparisonString(str).length() < Conf.factionTagLengthMin) { if (getComparisonString(str).length() < Conf.factionTagLengthMin) {
errors.add(P.p.txt.parse("<i>The faction tag can't be shorter than <h>%s<i> chars.", Conf.factionTagLengthMin)); errors.add(P.p.txt.parse(TL.GENERIC_FACTIONTAG_TOOSHORT.toString(), Conf.factionTagLengthMin));
} }
if (str.length() > Conf.factionTagLengthMax) { if (str.length() > Conf.factionTagLengthMax) {
errors.add(P.p.txt.parse("<i>The faction tag can't be longer than <h>%s<i> chars.", Conf.factionTagLengthMax)); errors.add(P.p.txt.parse(TL.GENERIC_FACTIONTAG_TOOLONG.toString(), Conf.factionTagLengthMax));
} }
for (char c : str.toCharArray()) { for (char c : str.toCharArray()) {
if (!substanceChars.contains(String.valueOf(c))) { if (!substanceChars.contains(String.valueOf(c))) {
errors.add(P.p.txt.parse("<i>Faction tag must be alphanumeric. \"<h>%s<i>\" is not allowed.", c)); errors.add(P.p.txt.parse(TL.GENERIC_FACTIONTAG_ALPHANUMERIC.toString(), c));
} }
} }

View File

@ -1,10 +0,0 @@
package com.massivecraft.factions.zcore;
public class Lang {
public static final String permForbidden = "<b>You don't have permission to %s.";
public static final String permDoThat = "do that";
public static final String commandSenderMustBePlayer = "<b>This command can only be used by ingame players.";
public static final String commandToFewArgs = "<b>Too few arguments. <i>Use like this:";
public static final String commandToManyArgs = "<b>Strange argument \"<p>%s<b>\". <i>Use the command like this:";
}

View File

@ -52,9 +52,9 @@ public abstract class MCommand<T extends MPlugin> {
public String getHelpShort() { public String getHelpShort() {
if (this.helpShort == null) { if (this.helpShort == null) {
String pdesc = p.perm.getPermissionDescription(this.permission); TL pdesc = TL.valueOf(this.permission.toUpperCase().replace('.', '_'));
if (pdesc != null) { if (pdesc != null) {
return pdesc; return pdesc.toString();
} }
return "*info unavailable*"; return "*info unavailable*";
} }
@ -158,7 +158,7 @@ public abstract class MCommand<T extends MPlugin> {
public boolean validSenderType(CommandSender sender, boolean informSenderIfNot) { public boolean validSenderType(CommandSender sender, boolean informSenderIfNot) {
if (this.senderMustBePlayer && !(sender instanceof Player)) { if (this.senderMustBePlayer && !(sender instanceof Player)) {
if (informSenderIfNot) { if (informSenderIfNot) {
msg(Lang.commandSenderMustBePlayer); msg(TL.GENERIC_PLAYERONLY);
} }
return false; return false;
} }
@ -172,7 +172,7 @@ public abstract class MCommand<T extends MPlugin> {
public boolean validArgs(List<String> args, CommandSender sender) { public boolean validArgs(List<String> args, CommandSender sender) {
if (args.size() < this.requiredArgs.size()) { if (args.size() < this.requiredArgs.size()) {
if (sender != null) { if (sender != null) {
msg(Lang.commandToFewArgs); msg(TL.GENERIC_ARGS_TOOFEW);
sender.sendMessage(this.getUseageTemplate()); sender.sendMessage(this.getUseageTemplate());
} }
return false; return false;
@ -182,7 +182,7 @@ public abstract class MCommand<T extends MPlugin> {
if (sender != null) { if (sender != null) {
// Get the to many string slice // Get the to many string slice
List<String> theToMany = args.subList(this.requiredArgs.size() + this.optionalArgs.size(), args.size()); List<String> theToMany = args.subList(this.requiredArgs.size() + this.optionalArgs.size(), args.size());
msg(Lang.commandToManyArgs, TextUtil.implode(theToMany, " ")); msg(TL.GENERIC_ARGS_TOOMANY, TextUtil.implode(theToMany, " "));
sender.sendMessage(this.getUseageTemplate()); sender.sendMessage(this.getUseageTemplate());
} }
return false; return false;
@ -372,7 +372,7 @@ public abstract class MCommand<T extends MPlugin> {
} }
if (msg && ret == null) { if (msg && ret == null) {
this.msg("<b>No player \"<p>%s<b>\" could not be found.", name); this.msg(TL.GENERIC_NOPLAYERFOUND, name);
} }
return ret; return ret;
@ -402,7 +402,7 @@ public abstract class MCommand<T extends MPlugin> {
} }
if (msg && ret == null) { if (msg && ret == null) {
this.msg("<b>No player match found for \"<p>%s<b>\".", name); this.msg(TL.GENERIC_NOPLAYERMATCH, name);
} }
return ret; return ret;

View File

@ -584,17 +584,17 @@ public abstract class MemoryFPlayer implements FPlayer {
boolean perm = myFaction.isPermanent(); boolean perm = myFaction.isPermanent();
if (!perm && this.getRole() == Role.ADMIN && myFaction.getFPlayers().size() > 1) { if (!perm && this.getRole() == Role.ADMIN && myFaction.getFPlayers().size() > 1) {
msg("<b>You must give the admin role to someone else first."); msg(TL.LEAVE_PASSADMIN);
return; return;
} }
if (!Conf.canLeaveWithNegativePower && this.getPower() < 0) { if (!Conf.canLeaveWithNegativePower && this.getPower() < 0) {
msg("<b>You cannot leave until your power is positive."); msg(TL.LEAVE_NEGATIVEPOWER);
return; return;
} }
// if economy is enabled and they're not on the bypass list, make sure they can pay // if economy is enabled and they're not on the bypass list, make sure they can pay
if (makePay && !Econ.hasAtLeast(this, Conf.econCostLeave, "to leave your faction.")) { if (makePay && !Econ.hasAtLeast(this, Conf.econCostLeave, TL.LEAVE_TOLEAVE.toString())) {
return; return;
} }
@ -605,7 +605,7 @@ public abstract class MemoryFPlayer implements FPlayer {
} }
// then make 'em pay (if applicable) // then make 'em pay (if applicable)
if (makePay && !Econ.modifyMoney(this, -Conf.econCostLeave, "to leave your faction.", "for leaving your faction.")) { if (makePay && !Econ.modifyMoney(this, -Conf.econCostLeave, TL.LEAVE_TOLEAVE.toString(), TL.LEAVE_FORLEAVE.toString())) {
return; return;
} }
@ -619,11 +619,11 @@ public abstract class MemoryFPlayer implements FPlayer {
if (myFaction.isNormal()) { if (myFaction.isNormal()) {
for (FPlayer fplayer : myFaction.getFPlayersWhereOnline(true)) { for (FPlayer fplayer : myFaction.getFPlayersWhereOnline(true)) {
fplayer.msg("%s<i> left %s<i>.", this.describeTo(fplayer, true), myFaction.describeTo(fplayer)); fplayer.msg(TL.LEAVE_LEFT, this.describeTo(fplayer, true), myFaction.describeTo(fplayer));
} }
if (Conf.logFactionLeave) { if (Conf.logFactionLeave) {
P.p.log(this.getName() + " left the faction: " + myFaction.getTag()); P.p.log(TL.LEAVE_LEFT.format(this.getName(),myFaction.getTag()));
} }
} }
@ -633,12 +633,12 @@ public abstract class MemoryFPlayer implements FPlayer {
if (myFaction.isNormal() && !perm && myFaction.getFPlayers().isEmpty()) { if (myFaction.isNormal() && !perm && myFaction.getFPlayers().isEmpty()) {
// Remove this faction // Remove this faction
for (FPlayer fplayer : FPlayers.getInstance().getOnlinePlayers()) { for (FPlayer fplayer : FPlayers.getInstance().getOnlinePlayers()) {
fplayer.msg("<i>%s<i> was disbanded.", myFaction.describeTo(fplayer, true)); fplayer.msg(TL.LEAVE_DISBANDED, myFaction.describeTo(fplayer, true));
} }
Factions.getInstance().removeFaction(myFaction.getId()); Factions.getInstance().removeFaction(myFaction.getId());
if (Conf.logFactionDisband) { if (Conf.logFactionDisband) {
P.p.log("The faction " + myFaction.getTag() + " (" + myFaction.getId() + ") was disbanded due to the last player (" + this.getName() + ") leaving."); P.p.log(TL.LEAVE_DISBANDEDLOG.format(myFaction.getTag(),myFaction.getId(),this.getName()));
} }
} }
} }
@ -656,9 +656,9 @@ public abstract class MemoryFPlayer implements FPlayer {
if (Conf.worldGuardChecking && Worldguard.checkForRegionsInChunk(location)) { if (Conf.worldGuardChecking && Worldguard.checkForRegionsInChunk(location)) {
// Checks for WorldGuard regions in the chunk attempting to be claimed // Checks for WorldGuard regions in the chunk attempting to be claimed
error = P.p.txt.parse("<b>This land is protected"); error = P.p.txt.parse(TL.CLAIM_PROTECTED.toString());
} else if (Conf.worldsNoClaiming.contains(flocation.getWorldName())) { } else if (Conf.worldsNoClaiming.contains(flocation.getWorldName())) {
error = P.p.txt.parse("<b>Sorry, this world has land claiming disabled."); error = P.p.txt.parse(TL.CLAIM_DISABLED.toString());
} else if (this.isAdminBypassing()) { } else if (this.isAdminBypassing()) {
return true; return true;
} else if (forFaction.isSafeZone() && Permission.MANAGE_SAFE_ZONE.has(getPlayer())) { } else if (forFaction.isSafeZone() && Permission.MANAGE_SAFE_ZONE.has(getPlayer())) {
@ -666,39 +666,39 @@ public abstract class MemoryFPlayer implements FPlayer {
} else if (forFaction.isWarZone() && Permission.MANAGE_WAR_ZONE.has(getPlayer())) { } else if (forFaction.isWarZone() && Permission.MANAGE_WAR_ZONE.has(getPlayer())) {
return true; return true;
} else if (myFaction != forFaction) { } else if (myFaction != forFaction) {
error = P.p.txt.parse("<b>You can't claim land for <h>%s<b>.", forFaction.describeTo(this)); error = P.p.txt.parse(TL.CLAIM_CANTCLAIM.toString(), forFaction.describeTo(this));
} else if (forFaction == currentFaction) { } else if (forFaction == currentFaction) {
error = P.p.txt.parse("%s<i> already own this land.", forFaction.describeTo(this, true)); error = P.p.txt.parse(TL.CLAIM_ALREADYOWN.toString(), forFaction.describeTo(this, true));
} else if (this.getRole().value < Role.MODERATOR.value) { } else if (this.getRole().value < Role.MODERATOR.value) {
error = P.p.txt.parse("<b>You must be <h>%s<b> to claim land.", Role.MODERATOR.toString()); error = P.p.txt.parse(TL.CLAIM_MUSTBE.toString(), Role.MODERATOR.toString());
} else if (forFaction.getFPlayers().size() < Conf.claimsRequireMinFactionMembers) { } else if (forFaction.getFPlayers().size() < Conf.claimsRequireMinFactionMembers) {
error = P.p.txt.parse("Factions must have at least <h>%s<b> members to claim land.", Conf.claimsRequireMinFactionMembers); error = P.p.txt.parse(TL.CLAIM_MEMBERS.toString(), Conf.claimsRequireMinFactionMembers);
} else if (currentFaction.isSafeZone()) { } else if (currentFaction.isSafeZone()) {
error = P.p.txt.parse("<b>You can not claim a Safe Zone."); error = P.p.txt.parse(TL.CLAIM_SAFEZONE.toString());
} else if (currentFaction.isWarZone()) { } else if (currentFaction.isWarZone()) {
error = P.p.txt.parse("<b>You can not claim a War Zone."); error = P.p.txt.parse(TL.CLAIM_WARZONE.toString());
} else if (ownedLand >= forFaction.getPowerRounded()) { } else if (ownedLand >= forFaction.getPowerRounded()) {
error = P.p.txt.parse("<b>You can't claim more land! You need more power!"); error = P.p.txt.parse(TL.CLAIM_POWER.toString());
} else if (Conf.claimedLandsMax != 0 && ownedLand >= Conf.claimedLandsMax && forFaction.isNormal()) { } else if (Conf.claimedLandsMax != 0 && ownedLand >= Conf.claimedLandsMax && forFaction.isNormal()) {
error = P.p.txt.parse("<b>Limit reached. You can't claim more land!"); error = P.p.txt.parse(TL.CLAIM_LIMIT.toString());
} else if (currentFaction.getRelationTo(forFaction) == Relation.ALLY) { } else if (currentFaction.getRelationTo(forFaction) == Relation.ALLY) {
error = P.p.txt.parse("<b>You can't claim the land of your allies."); error = P.p.txt.parse(TL.CLAIM_ALLY.toString());
} else if (Conf.claimsMustBeConnected && !this.isAdminBypassing() && myFaction.getLandRoundedInWorld(flocation.getWorldName()) > 0 && !Board.getInstance().isConnectedLocation(flocation, myFaction) && (!Conf.claimsCanBeUnconnectedIfOwnedByOtherFaction || !currentFaction.isNormal())) { } else if (Conf.claimsMustBeConnected && !this.isAdminBypassing() && myFaction.getLandRoundedInWorld(flocation.getWorldName()) > 0 && !Board.getInstance().isConnectedLocation(flocation, myFaction) && (!Conf.claimsCanBeUnconnectedIfOwnedByOtherFaction || !currentFaction.isNormal())) {
if (Conf.claimsCanBeUnconnectedIfOwnedByOtherFaction) { if (Conf.claimsCanBeUnconnectedIfOwnedByOtherFaction) {
error = P.p.txt.parse("<b>You can only claim additional land which is connected to your first claim or controlled by another faction!"); error = P.p.txt.parse(TL.CLAIM_CONTIGIOUS.toString());
} else { } else {
error = P.p.txt.parse("<b>You can only claim additional land which is connected to your first claim!"); error = P.p.txt.parse(TL.CLAIM_FACTIONCONTIGUOUS.toString());
} }
} else if (currentFaction.isNormal()) { } else if (currentFaction.isNormal()) {
if (myFaction.isPeaceful()) { if (myFaction.isPeaceful()) {
error = P.p.txt.parse("%s<i> owns this land. Your faction is peaceful, so you cannot claim land from other factions.", currentFaction.getTag(this)); error = P.p.txt.parse(TL.CLAIM_PEACEFUL.toString(), currentFaction.getTag(this));
} else if (currentFaction.isPeaceful()) { } else if (currentFaction.isPeaceful()) {
error = P.p.txt.parse("%s<i> owns this land, and is a peaceful faction. You cannot claim land from them.", currentFaction.getTag(this)); error = P.p.txt.parse(TL.CLAIM_PEACEFULTARGET.toString(), currentFaction.getTag(this));
} else if (!currentFaction.hasLandInflation()) { } else if (!currentFaction.hasLandInflation()) {
// TODO more messages WARN current faction most importantly // TODO more messages WARN current faction most importantly
error = P.p.txt.parse("%s<i> owns this land and is strong enough to keep it.", currentFaction.getTag(this)); error = P.p.txt.parse(TL.CLAIM_THISISSPARTA.toString(), currentFaction.getTag(this));
} else if (!Board.getInstance().isBorderLocation(flocation)) { } else if (!Board.getInstance().isBorderLocation(flocation)) {
error = P.p.txt.parse("<b>You must start claiming land at the border of the territory."); error = P.p.txt.parse(TL.CLAIM_BORDER.toString());
} }
} }
// TODO: Add more else if statements. // TODO: Add more else if statements.
@ -739,7 +739,7 @@ public abstract class MemoryFPlayer implements FPlayer {
payee = this; payee = this;
} }
if (!Econ.hasAtLeast(payee, cost, "to claim this land")) { if (!Econ.hasAtLeast(payee, cost, TL.CLAIM_TOCLAIM.toString())) {
return false; return false;
} }
} }
@ -751,7 +751,7 @@ public abstract class MemoryFPlayer implements FPlayer {
} }
// then make 'em pay (if applicable) // then make 'em pay (if applicable)
if (mustPay && !Econ.modifyMoney(payee, -cost, "to claim this land", "for claiming this land")) { if (mustPay && !Econ.modifyMoney(payee, -cost, TL.CLAIM_TOCLAIM.toString(), TL.CLAIM_FORCLAIM.toString())) {
return false; return false;
} }
@ -760,13 +760,13 @@ public abstract class MemoryFPlayer implements FPlayer {
informTheseFPlayers.add(this); informTheseFPlayers.add(this);
informTheseFPlayers.addAll(forFaction.getFPlayersWhereOnline(true)); informTheseFPlayers.addAll(forFaction.getFPlayersWhereOnline(true));
for (FPlayer fp : informTheseFPlayers) { for (FPlayer fp : informTheseFPlayers) {
fp.msg("<h>%s<i> claimed land for <h>%s<i> from <h>%s<i>.", this.describeTo(fp, true), forFaction.describeTo(fp), currentFaction.describeTo(fp)); fp.msg(TL.CLAIM_CLAIMED, this.describeTo(fp, true), forFaction.describeTo(fp), currentFaction.describeTo(fp));
} }
Board.getInstance().setFactionAt(forFaction, flocation); Board.getInstance().setFactionAt(forFaction, flocation);
if (Conf.logLandClaims) { if (Conf.logLandClaims) {
P.p.log(this.getName() + " claimed land at (" + flocation.getCoordString() + ") for the faction: " + forFaction.getTag()); P.p.log(TL.CLAIM_CLAIMEDLOG.toString(),this.getName(),flocation.getCoordString(),forFaction.getTag());
} }
return true; return true;

View File

@ -1,6 +1,5 @@
package com.massivecraft.factions.zcore.util; package com.massivecraft.factions.zcore.util;
import com.massivecraft.factions.zcore.Lang;
import com.massivecraft.factions.zcore.MPlugin; import com.massivecraft.factions.zcore.MPlugin;
import org.bukkit.command.CommandSender; import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
@ -23,7 +22,7 @@ public class PermUtil {
} }
public String getForbiddenMessage(String perm) { public String getForbiddenMessage(String perm) {
return p.txt.parse(Lang.permForbidden, getPermissionDescription(perm)); return p.txt.parse(TL.GENERIC_NOPERMISSION.toString(), getPermissionDescription(perm));
} }
/** /**
@ -39,7 +38,7 @@ public class PermUtil {
public String getPermissionDescription(String perm) { public String getPermissionDescription(String perm) {
String desc = permissionDescriptions.get(perm); String desc = permissionDescriptions.get(perm);
if (desc == null) { if (desc == null) {
return Lang.permDoThat; return TL.GENERIC_DOTHAT.toString();
} }
return desc; return desc;
} }

View File

@ -419,19 +419,135 @@ public enum TL {
COMMAND_RELATIONS_PROPOSAL_2("<i>Type <c>/%1$s %2$s %3$s<i> to accept."), COMMAND_RELATIONS_PROPOSAL_2("<i>Type <c>/%1$s %2$s %3$s<i> to accept."),
COMMAND_RELATIONS_PROPOSAL_SENT("%1$s<i> were informed that you wish to be %2$s"), COMMAND_RELATIONS_PROPOSAL_SENT("%1$s<i> were informed that you wish to be %2$s"),
/** /**
* More generic translations, which will apply to more than one class. * Leaving
*/ */
LEAVE_PASSADMIN("<b>You must give the admin role to someone else first."),
LEAVE_NEGATIVEPOWER("<b>You cannot leave until your power is positive."),
LEAVE_TOLEAVE("to leave your faction."),
LEAVE_FORLEAVE("for leaving your faction."),
LEAVE_LEFT("%s<i> left faction %s<i>."),
LEAVE_DISBANDED("<i>%s<i> was disbanded."),
LEAVE_DISBANDEDLOG("The faction %s (%s) was disbanded due to the last player (%s) leaving."),
/**
* Claiming
*/
CLAIM_PROTECTED("<b>This land is protected"),
CLAIM_DISABLED("<b>Sorry, this world has land claiming disabled."),
CLAIM_CANTCLAIM("<b>You can't claim land for <h>%s<b>."),
CLAIM_ALREADYOWN("%s<i> already own this land."),
CLAIM_MUSTBE("<b>You must be <h>%s<b> to claim land."),
CLAIM_MEMBERS("Factions must have at least <h>%s<b> members to claim land."),
CLAIM_SAFEZONE("<b>You can not claim a Safe Zone."),
CLAIM_WARZONE("<b>You can not claim a War Zone."),
CLAIM_POWER("<b>You can't claim more land! You need more power!"),
CLAIM_LIMIT("<b>Limit reached. You can't claim more land!"),
CLAIM_ALLY("<b>You can't claim the land of your allies."),
CLAIM_CONTIGIOUS("<b>You can only claim additional land which is connected to your first claim or controlled by another faction!"),
CLAIM_FACTIONCONTIGUOUS("<b>You can only claim additional land which is connected to your first claim!"),
CLAIM_PEACEFUL("%s<i> owns this land. Your faction is peaceful, so you cannot claim land from other factions."),
CLAIM_PEACEFULTARGET("%s<i> owns this land, and is a peaceful faction. You cannot claim land from them."),
CLAIM_THISISSPARTA("%s<i> owns this land and is strong enough to keep it."),
CLAIM_BORDER("<b>You must start claiming land at the border of the territory."),
CLAIM_TOCLAIM("to claim this land"),
CLAIM_FORCLAIM("for claiming this land"),
CLAIM_CLAIMED("<h>%s<i> claimed land for <h>%s<i> from <h>%s<i>."),
CLAIM_CLAIMEDLOG("%s claimed land at (%s) for the faction: %s"),
/**
* Command descriptions
*/
FACTIONS_ADMIN("hand over your admin rights"),
FACTIONS_AUTOCLAIM("auto-claim land as you walk around"),
FACTIONS_BYPASS("enable admin bypass mode"),
FACTIONS_CHAT("change chat mode"),
FACTIONS_CHATSPY("enable admin chat spy mode"),
FACTIONS_CLAIM("claim land where you are standing"),
FACTIONS_CONFIG("change a conf.json setting"),
FACTIONS_CREATE("create a new faction"),
FACTIONS_DEINVITE("remove a pending invitation"),
FACTIONS_DISBAND("disband a faction"),
FACTIONS_HELP("display a help page"),
FACTIONS_HOME("teleport to the faction home"),
FACTIONS_INVITE("invite a player to your faction"),
FACTIONS_JOIN("join a faction"),
FACTIONS_KICK("kick a player from the faction"),
FACTIONS_LEAVE("leave your faction"),
FACTIONS_LIST("see a list of the factions"),
FACTIONS_LOCK("lock all write stuff"),
FACTIONS_MANAGESAFEZONE("claim land as a safe zone and build/destroy within safe zones"),
FACTIONS_MANAGEWARZONE("claim land as a war zone and build/destroy within war zones"),
FACTIONS_MAP("show the territory map, and set optional auto update"),
FACTIONS_MOD("give or revoke moderator rights"),
FACTIONS_MONEY_BALANCE ("show your factions current money balance"),
FACTIONS_MONEY_DEPOSIT ("deposit money into a faction bank"),
FACTIONS_MONEY_WITHDRAW ("withdraw money from your faction bank"),
FACTIONS_MONEY_F2F ("transfer money from faction to faction"),
FACTIONS_MONEY_F2P ("transfer money from faction to player"),
FACTIONS_MONEY_P2F ("transfer money from player to faction"),
FACTIONS_NOBOOM ("toggle explosions (peaceful factions only),"),
FACTIONS_OPEN ("switch if invitation is required to join"),
FACTIONS_OWNER ("set ownership of claimed land"),
FACTIONS_OWNERLIST ("list owner(s), of this claimed land"),
FACTIONS_SETPEACEFUL("designate a faction as peaceful"),
FACTIONS_SETPERMANENT("designate a faction as permanent"),
FACTIONS_SETPERMANENTPOWER("set permanent power for a faction"),
FACTIONS_POWER("show player power info"),
FACTIONS_POWERBOOST("apply permanent power bonus/penalty to specified player or faction"),
FACTIONS_RELATION("set relation wish to another faction"),
FACTIONS_RELOAD("reload data file(s), from disk"),
FACTIONS_SAVE("save all data to disk"),
FACTIONS_SETHOME("set the faction home"),
FACTIONS_SHOW("show faction information"),
FACTIONS_TAG("change the faction tag"),
FACTIONS_TITLE("set or remove a players title"),
FACTIONS_VERSION("see the version of the plugin"),
FACTIONS_UNCLAIM("unclaim the land where you are standing"),
FACTIONS_UNCLAIMALL("unclaim all of your factions land"),
FACTIONS_SCOREBOARD("ability to toggle scoreboards"),
FACTIONS_SHOWINVITES("show pending invites to your faction"),
FACTIONS_SEECHUNK("see the chunk you stand in"),
FACTIONS_SETWARP("set a warp for your faction"),
FACTIONS_WARP("access your faction warps"),
FACTIONS_MODIFYPOWER("modify other player's power"),
FACTIONS_MONITORLOGINS("monitor join and leaves of faction members"),
/**
* More generic, or less easily categorisable translations, which may apply to more than one class
*/
GENERIC_NOPERMISSION("<b>You don't have permission to %1$s."),
GENERIC_DOTHAT("do that"), //Ugh nuke this from high orbit
GENERIC_NOPLAYERMATCH("<b>No player match found for \"<p>%1$s<b>\"."),
GENERIC_NOPLAYERFOUND("<b>No player \"<p>%1$s<b>\" could not be found."),
GENERIC_ARGS_TOOFEW("<b>Too few arguments. <i>Use like this:"),
GENERIC_ARGS_TOOMANY("<b>Strange argument \"<p>%1$s<b>\". <i>Use the command like this:"),
GENERIC_OWNERS("Owner(s): %1$s"),
GENERIC_PUBLICLAND("Public faction land."),
GENERIC_FACTIONLESS("factionless"),
GENERIC_SERVERADMIN("A server admin"), GENERIC_SERVERADMIN("A server admin"),
GENERIC_DISABLED("disabled"), GENERIC_DISABLED("disabled"),
GENERIC_ENABLED("enabled"), GENERIC_ENABLED("enabled"),
GENERIC_CONSOLEONLY("This command cannot be run as a player."), GENERIC_CONSOLEONLY("This command cannot be run as a player."),
GENERIC_PLAYERONLY("<b>This command can only be used by ingame players."),
GENERIC_ASKYOURLEADER("<i> Ask your leader to:"), GENERIC_ASKYOURLEADER("<i> Ask your leader to:"),
GENERIC_YOUSHOULD("<i>You should:"), GENERIC_YOUSHOULD("<i>You should:"),
GENERIC_YOUMAYWANT("<i>You may want to: "), GENERIC_YOUMAYWANT("<i>You may want to: "),
GENERIC_TRANSLATION_VERSION("Translation: %1$s(%2$s,%3$s) State: %4$s"), GENERIC_TRANSLATION_VERSION("Translation: %1$s(%2$s,%3$s) State: %4$s"),
GENERIC_TRANSLATION_CONTRIBUTORS("Translation contributors: %1$s"), GENERIC_TRANSLATION_CONTRIBUTORS("Translation contributors: %1$s"),
GENERIC_TRANSLATION_RESPONSIBLE("Responsible for translation: %1$s"), GENERIC_TRANSLATION_RESPONSIBLE("Responsible for translation: %1$s"),
GENERIC_FACTIONTAG_TOOSHORT("<i>The faction tag can't be shorter than <h>%1$s<i> chars."),
GENERIC_FACTIONTAG_TOOLONG("<i>The faction tag can't be longer than <h>%s<i> chars."),
GENERIC_FACTIONTAG_ALPHANUMERIC("<i>Faction tag must be alphanumeric. \"<h>%s<i>\" is not allowed."),
/**
* ASCII compass (for chat map)
*/
COMPASS_SHORT_NORTH("N"),
COMPASS_SHORT_EAST("E"),
COMPASS_SHORT_SOUTH("S"),
COMPASS_SHORT_WEST("W"),
/**
* Chat modes
*/
CHAT_FACTION("faction chat"),
CHAT_ALLIANCE("alliance chat"),
CHAT_PUBLIC("public chat"),
/** /**
* Relations * Relations
*/ */
@ -461,7 +577,7 @@ public enum TL {
/** /**
* Warmups * Warmups
*/ */
WARMUPS_NOTIFY_TELEPORT("&eYou will teleport to &d%1$s &ein &d%2$d &eseconds."), WARMUPS_NOTIFY_TELEPORT("&eYou will teleport to &d%1$s &ein &d%2$d &eseconds.")
; ;
private String path; private String path;

View File

@ -0,0 +1,31 @@
# Lang file for FactionsUUID by drtshock
# Use & for color codes.
# Made with love <3
#Slightly different localised variant for UK-style english (Color→Colour, etc)
#It's cut down to the sections that were actually changed. Ie basically nothing. What ho, dear chap!
root:
AUTHOR: misc
RESPONSIBLE: Korikisulda
LANGUAGE: English
ENCODING: UTF-8
LOCALE: en_GB
EXTENDS: en_US
REQUIRESUNICODE: 'false'
DEFAULT: 'false'
STATE: complete
LOCAL:
AUTHOR: misc
RESPONSIBLE: Korikisulda
LANGUAGE: English
REGION: UK
STATE: complete
COMMAND:
CONFIG:
COLOURSET: '" colour option set to "'
INVALID:
COLOUR: 'Cannot set "%1$s": "%2$s" is not a valid colour.'
COLLECTION: '"%1$s" is not a data collection type which can be modified with this
command.'

View File

@ -2,6 +2,8 @@
# Use & for color codes. # Use & for color codes.
# Made with love <3 # Made with love <3
root: root:
AUTHOR: misc AUTHOR: misc
RESPONSIBLE: misc RESPONSIBLE: misc
@ -19,25 +21,25 @@ root:
STATE: complete STATE: complete
COMMAND: COMMAND:
ADMIN: ADMIN:
NOTMEMBER: '%s<i> is not a member in your faction.' NOTMEMBER: '%1$s<i> is not a member in your faction.'
NOTADMIN: <b>You are not the faction admin. NOTADMIN: <b>You are not the faction admin.
TARGETSELF: <b>The target player musn't be yourself. TARGETSELF: <b>The target player musn't be yourself.
DEMOTES: <i>You have demoted %s<i> from the position of faction admin. DEMOTES: <i>You have demoted %1$s<i> from the position of faction admin.
DEMOTED: <i>You have been demoted from the position of faction admin by %s<i>. DEMOTED: <i>You have been demoted from the position of faction admin by %1$s<i>.
PROMOTES: <i>You have promoted %s<i> to the position of faction admin. PROMOTES: <i>You have promoted %1$s<i> to the position of faction admin.
PROMOTED: '%s<i> gave %s<i> the leadership of %s<i>.' PROMOTED: '%1$s<i> gave %2$s<i> the leadership of %3$s<i>.'
AUTOCLAIM: AUTOCLAIM:
ENABLED: <i>Now auto-claiming land for <h>%s<i>. ENABLED: <i>Now auto-claiming land for <h>%1$s<i>.
DISABLED: <i>Auto-claiming of land disabled. DISABLED: <i>Auto-claiming of land disabled.
REQUIREDRANK: <b>You must be <h>%s<b> to claim land. REQUIREDRANK: <b>You must be <h>%1$s<b> to claim land.
OTHERFACTION: <b>You can't claim land for <h>%s<b>. OTHERFACTION: <b>You can't claim land for <h>%1$s<b>.
AUTOHELP: AUTOHELP:
HELPFOR: Help for command " HELPFOR: Help for command "
BOOM: BOOM:
PEACEFULONLY: <b>This command is only usable by factions which are specifically designated as peaceful. PEACEFULONLY: <b>This command is only usable by factions which are specifically designated as peaceful.
TOTOGGLE: to toggle explosions TOTOGGLE: to toggle explosions
FORTOGGLE: for toggling explosions FORTOGGLE: for toggling explosions
ENABLED: '%s<i> has %s explosions in your faction''s territory.' ENABLED: '%1$s<i> has %2$s explosions in your faction''s territory.'
BYPASS: BYPASS:
ENABLE: <i>You have enabled admin bypass mode. You will be able to build or destroy anywhere. ENABLE: <i>You have enabled admin bypass mode. You will be able to build or destroy anywhere.
ENABLELOG: ' has ENABLED admin bypass mode.' ENABLELOG: ' has ENABLED admin bypass mode.'
@ -59,70 +61,70 @@ COMMAND:
INVALIDRADIUS: <b>If you specify a radius, it must be at least 1. INVALIDRADIUS: <b>If you specify a radius, it must be at least 1.
DENIED: <b>You do not have permission to claim in a radius. DENIED: <b>You do not have permission to claim in a radius.
CONFIG: CONFIG:
NOEXIST: <b>No configuration setting "<h>%s<b>" exists. NOEXIST: <b>No configuration setting "<h>%1$s<b>" exists.
SET: SET:
'TRUE': '" option set to true (enabled).' 'TRUE': '" option set to true (enabled).'
'FALSE': '" option set to false (disabled).' 'FALSE': '" option set to false (disabled).'
ADDED: '"%s" set: "%s" added.' ADDED: '"%1$s" set: "%2$s" added.'
REMOVED: '"%s" set: "%s" removed.' REMOVED: '"%1$s" set: "%2$s" removed.'
OPTIONSET: '" option set to ' OPTIONSET: '" option set to '
COLOURSET: '" color option set to "' COLOURSET: '" color option set to "'
INTREQUIRED: 'Cannot set "%s": An integer (whole number) value required.' INTREQUIRED: 'Cannot set "%1$s": An integer (whole number) value required.'
LONGREQUIRED: 'Cannot set "%s": A long integer (whole number) value required.' LONGREQUIRED: 'Cannot set "%1$s": A long integer (whole number) value required.'
DOUBLEREQUIRED: 'Cannot set "%s": A double (numeric) value required.' DOUBLEREQUIRED: 'Cannot set "%1$s": A double (numeric) value required.'
FLOATREQUIRED: 'Cannot set "%s": A float (numeric) value required.' FLOATREQUIRED: 'Cannot set "%1$s": A float (numeric) value required.'
INVALID: INVALID:
COLOUR: 'Cannot set "%s": "%s" is not a valid color.' COLOUR: 'Cannot set "%1$s": "%2$s" is not a valid color.'
COLLECTION: '"%s" is not a data collection type which can be modified with this COLLECTION: '"%1$s" is not a data collection type which can be modified with
command.' this command.'
MATERIAL: 'Cannot change "%s" set: "%s" is not a valid material.' MATERIAL: 'Cannot change "%1$s" set: "%2$s" is not a valid material.'
TYPESET: '"%s" is not a data type set which can be modified with this command.' TYPESET: '"%1$s" is not a data type set which can be modified with this command.'
MATERIAL: MATERIAL:
ADDED: '"%s" set: Material "%s" added.' ADDED: '"%1$s" set: Material "%2$s" added.'
REMOVED: '"%s" set: Material "%s" removed.' REMOVED: '"%1$s" set: Material "%2$s" removed.'
LOG: ' (Command was run by %s.)' LOG: ' (Command was run by %1$s.)'
ERROR: ERROR:
SETTING: Error setting configuration setting "%s" to "%s". SETTING: Error setting configuration setting "%1$s" to "%2$s".
MATCHING: Configuration setting "%s" couldn't be matched, though it should be... please report this error. MATCHING: Configuration setting "%1$s" couldn't be matched, though it should be... please report this error.
TYPE: '''%s'' is of type ''%s'', which cannot be modified with this command.' TYPE: '''%1$s'' is of type ''%2$s'', which cannot be modified with this command.'
CREATE: CREATE:
MUSTLEAVE: <b>You must leave your current faction first. MUSTLEAVE: <b>You must leave your current faction first.
INUSE: <b>That tag is already in use. INUSE: <b>That tag is already in use.
TOCREATE: to create a new faction TOCREATE: to create a new faction
FORCREATE: for creating a new faction FORCREATE: for creating a new faction
ERROR: <b>There was an internal error while trying to create your faction. Please try again. ERROR: <b>There was an internal error while trying to create your faction. Please try again.
CREATED: %s<i> created a new faction %s CREATED: '%1$s<i> created a new faction %2$s'
YOUSHOULD: '<i>You should now: %1$s'
CREATEDLOG: ' created a new faction: ' CREATEDLOG: ' created a new faction: '
YOUSHOULD: '<i>You should now: %s'
DEINVITE: DEINVITE:
CANDEINVITE: 'Players you can deinvite: ' CANDEINVITE: 'Players you can deinvite: '
CLICKTODEINVITE: Click to revoke invite for %s CLICKTODEINVITE: Click to revoke invite for %1$s
ALREADYMEMBER: '%s<i> is already a member of %s' ALREADYMEMBER: '%1$s<i> is already a member of %2$s'
MIGHTWANT: '<i>You might want to: %s' MIGHTWANT: '<i>You might want to: %1$s'
REVOKED: '%s<i> revoked your invitation to <h>%s<i>.' REVOKED: '%1$s<i> revoked your invitation to <h>%2$s<i>.'
REVOKES: '%s<i> revoked %s''s<i> invitation.' REVOKES: '%1$s<i> revoked %2$s''s<i> invitation.'
DELFWARP: DELFWARP:
DELETED: <i>Deleted warp <a>%s DELETED: <i>Deleted warp <a>%1$s
INVALID: <i>Couldn't find warp <a>%s INVALID: <i>Couldn't find warp <a>%1$s
TODELETE: to delete warp TODELETE: to delete warp
FORDELETE: for deleting warp FORDELETE: for deleting warp
DESCRIPTION: DESCRIPTION:
CHANGES: 'You have changed the description for <h>%s<i> to:' CHANGES: 'You have changed the description for <h>%1$s<i> to:'
CHANGED: '<i>The faction %s<i> changed their description to:' CHANGED: '<i>The faction %1$s<i> changed their description to:'
TOCHANGE: to change faction description TOCHANGE: to change faction description
FORCHANGE: for changing faction description FORCHANGE: for changing faction description
DISBAND: DISBAND:
IMMUTABLE: <i>You cannot disband the Wilderness, SafeZone, or WarZone. IMMUTABLE: <i>You cannot disband the Wilderness, SafeZone, or WarZone.
MARKEDPERMANENT: <i>This faction is designated as permanent, so you cannot disband it. MARKEDPERMANENT: <i>This faction is designated as permanent, so you cannot disband it.
BROADCAST: BROADCAST:
YOURS: <h>%s<i> disbanded your faction. YOURS: <h>%1$s<i> disbanded your faction.
NOTYOURS: <h>%s<i> disbanded the faction %s. NOTYOURS: <h>%1$s<i> disbanded the faction %2$s.
HOLDINGS: <i>You have been given the disbanded faction's bank, totaling %s. HOLDINGS: <i>You have been given the disbanded faction's bank, totaling %1$s.
FWARP: FWARP:
CLICKTOWARP: Click to warp! CLICKTOWARP: Click to warp!
COMMANDFORMAT: <i>/f warp <warpname> COMMANDFORMAT: <i>/f warp <warpname>
WARPED: <i>Warped to <a>%s WARPED: <i>Warped to <a>%1$s
INVALID: <i>Couldn't find warp <a>%s INVALID: <i>Couldn't find warp <a>%1$s
TOWARP: to warp TOWARP: to warp
FORWARPING: for warping FORWARPING: for warping
WARPS: 'Warps: ' WARPS: 'Warps: '
@ -185,38 +187,38 @@ COMMAND:
FORINVITE: for inviting someone FORINVITE: for inviting someone
CLICKTOJOIN: Click to join! CLICKTOJOIN: Click to join!
INVITEDYOU: ' has invited you to join ' INVITEDYOU: ' has invited you to join '
INVITED: '%s<i> invited %s<i> to your faction.' INVITED: '%1$s<i> invited %2$s<i> to your faction.'
ALREADYMEMBER: '%s<i> is already a member of %s' ALREADYMEMBER: '%1$s<i> is already a member of %2$s'
JOIN: JOIN:
CANNOTFORCE: <b>You do not have permission to move other players into a faction. CANNOTFORCE: <b>You do not have permission to move other players into a faction.
SYSTEMFACTION: <b>Players may only join normal factions. This is a system faction. SYSTEMFACTION: <b>Players may only join normal factions. This is a system faction.
ALREADYMEMBER: <b>%s %s already a member of %s ALREADYMEMBER: <b>%1$s %2$s already a member of %3$s
ATLIMIT: ' <b>!<white> The faction %s is at the limit of %d members, so %s cannot ATLIMIT: ' <b>!<white> The faction %1$s is at the limit of %2$d members, so %3$s
currently join.' cannot currently join.'
INOTHERFACTION: <b>%s must leave %s current faction first. INOTHERFACTION: <b>%1$s must leave %2$s current faction first.
NEGATIVEPOWER: <b>%s cannot join a faction with a negative power level. NEGATIVEPOWER: <b>%1$s cannot join a faction with a negative power level.
REQUIRESINVITATION: <i>This faction requires invitation. REQUIRESINVITATION: <i>This faction requires invitation.
ATTEMPTEDJOIN: '%s<i> tried to join your faction.' ATTEMPTEDJOIN: '%1$s<i> tried to join your faction.'
TOJOIN: to join a faction TOJOIN: to join a faction
FORJOIN: for joining a faction FORJOIN: for joining a faction
SUCCESS: <i>%s successfully joined %s. SUCCESS: <i>%1$s successfully joined %2$s.
MOVED: <i>%s moved you into the faction %s. MOVED: <i>%1$s moved you into the faction %2$s.
JOINED: <i>%s joined your faction. JOINED: <i>%1$s joined your faction.
JOINEDLOG: '%s joined the faction %s.' JOINEDLOG: '%1$s joined the faction %2$s.'
MOVEDLOG: '%s moved the player %s into the faction %s.' MOVEDLOG: '%1$s moved the player %2$s into the faction %3$s.'
KICK: KICK:
CANDIDATES: 'Players you can kick: ' CANDIDATES: 'Players you can kick: '
CLICKTOKICK: 'Click to kick ' CLICKTOKICK: 'Click to kick '
SELF: <b>You cannot kick yourself. SELF: <b>You cannot kick yourself.
NONE: That player is not in a faction. NONE: That player is not in a faction.
NOTMEMBER: '%s<b> is not a member of %s' NOTMEMBER: '%1$s<b> is not a member of %2$s'
INSUFFICIENTRANK: <b>Your rank is too low to kick this player. INSUFFICIENTRANK: <b>Your rank is too low to kick this player.
NEGATIVEPOWER: <b>You cannot kick that member until their power is positive. NEGATIVEPOWER: <b>You cannot kick that member until their power is positive.
TOKICK: to kick someone from the faction TOKICK: to kick someone from the faction
FORKICK: for kicking someone from the faction FORKICK: for kicking someone from the faction
FACTION: '%s<i> kicked %s<i> from the faction! :O' FACTION: '%1$s<i> kicked %2$s<i> from the faction! :O'
KICKS: <i>You kicked %s<i> from the faction %s<i>! KICKS: <i>You kicked %1$s<i> from the faction %2$s<i>!
KICKED: '%s<i> kicked you from %s<i>! :O' KICKED: '%1$s<i> kicked you from %2$s<i>! :O'
LIST: LIST:
FACTIONLIST: 'Faction List ' FACTIONLIST: 'Faction List '
TOLIST: to list the factions TOLIST: to list the factions
@ -225,6 +227,8 @@ COMMAND:
LOCK: LOCK:
LOCKED: <i>Factions is now locked LOCKED: <i>Factions is now locked
UNLOCKED: <i>Factions in now unlocked UNLOCKED: <i>Factions in now unlocked
LOGINS:
TOGGLE: '<i>Set login / logout notifications for Faction members to: <a>%s'
MAP: MAP:
TOSHOW: to show the map TOSHOW: to show the map
FORSHOW: for showing the map FORSHOW: for showing the map
@ -234,16 +238,16 @@ COMMAND:
MOD: MOD:
CANDIDATES: 'Players you can promote: ' CANDIDATES: 'Players you can promote: '
CLICKTOPROMOTE: 'Click to promote ' CLICKTOPROMOTE: 'Click to promote '
NOTMEMBER: '%s<b> is not a member in your faction.' NOTMEMBER: '%1$s<b> is not a member in your faction.'
NOTADMIN: <b>You are not the faction admin. NOTADMIN: <b>You are not the faction admin.
SELF: <b>The target player musn't be yourself. SELF: <b>The target player musn't be yourself.
TARGETISADMIN: <b>The target player is a faction admin. Demote them first. TARGETISADMIN: <b>The target player is a faction admin. Demote them first.
REVOKES: <i>You have removed moderator status from %s<i>. REVOKES: <i>You have removed moderator status from %1$s<i>.
REVOKED: '%s<i> is no longer moderator in your faction.' REVOKED: '%1$s<i> is no longer moderator in your faction.'
PROMOTES: '%s<i> was promoted to moderator in your faction.' PROMOTES: '%1$s<i> was promoted to moderator in your faction.'
PROMOTED: <i>You have promoted %s<i> to moderator. PROMOTED: <i>You have promoted %1$s<i> to moderator.
MODIFYPOWER: MODIFYPOWER:
ADDED: '<i>Added <a>%f <i>power to <a>%s. <i>New total rounded power: <a>%d' ADDED: '<i>Added <a>%1$f <i>power to <a>%2$s. <i>New total rounded power: <a>%3$d'
MONEY: MONEY:
SHORT: faction money commands SHORT: faction money commands
LONG: <i>The faction money commands. LONG: <i>The faction money commands.
@ -251,47 +255,47 @@ COMMAND:
SHORT: show faction balance SHORT: show faction balance
MONEYDEPOSIT: MONEYDEPOSIT:
SHORT: deposit money SHORT: deposit money
DEPOSITED: '%s deposited %s in the faction bank: %s' DEPOSITED: '%1$s deposited %2$s in the faction bank: %3$s'
MONEYTRANSFERFF: MONEYTRANSFERFF:
SHORT: transfer f -> f SHORT: transfer f -> f
TRANSFER: '%s transferred %s from the faction "%s" to the faction "%s"' TRANSFER: '%1$s transferred %2$s from the faction "%3$s" to the faction "%4$s"'
MONEYTRANSFERFP: MONEYTRANSFERFP:
SHORT: transfer f -> p SHORT: transfer f -> p
TRANSFER: '%s transferred %s from the faction "%s" to the player "%s"' TRANSFER: '%1$s transferred %2$s from the faction "%3$s" to the player "%4$s"'
MONEYTRANSFERPF: MONEYTRANSFERPF:
SHORT: transfer p -> f SHORT: transfer p -> f
TRANSFER: '%s transferred %s from the player "%s" to the faction "%s"' TRANSFER: '%1$s transferred %2$s from the player "%3$s" to the faction "%4$s"'
MONEYWITHDRAW: MONEYWITHDRAW:
SHORT: withdraw money SHORT: withdraw money
WITHDRAW: '%s withdrew %s from the faction bank: %s' WITHDRAW: '%1$s withdrew %2$s from the faction bank: %3$s'
OPEN: OPEN:
TOOPEN: to open or close the faction TOOPEN: to open or close the faction
FOROPEN: for opening or closing the faction FOROPEN: for opening or closing the faction
OPEN: open OPEN: open
CLOSED: closed CLOSED: closed
CHANGES: '%s<i> changed the faction to <h>%s<i>.' CHANGES: '%1$s<i> changed the faction to <h>%2$s<i>.'
CHANGED: <i>The faction %s<i> is now %s CHANGED: <i>The faction %1$s<i> is now %2$s
OWNER: OWNER:
DISABLED: <b>Sorry, but owned areas are disabled on this server. DISABLED: <b>Sorry, but owned areas are disabled on this server.
LIMIT: <b>Sorry, but you have reached the server's <h>limit of %d <b>owned areas per faction. LIMIT: <b>Sorry, but you have reached the server's <h>limit of %1$d <b>owned areas per faction.
WRONGFACTION: <b>This land is not claimed by your faction, so you can't set ownership of it. WRONGFACTION: <b>This land is not claimed by your faction, so you can't set ownership of it.
NOTCLAIMED: <b>This land is not claimed by a faction. Ownership is not possible. NOTCLAIMED: <b>This land is not claimed by a faction. Ownership is not possible.
NOTMEMBER: '%s<i> is not a member of this faction.' NOTMEMBER: '%1$s<i> is not a member of this faction.'
CLEARED: <i>You have cleared ownership for this claimed area. CLEARED: <i>You have cleared ownership for this claimed area.
REMOVED: <i>You have removed ownership of this claimed land from %s<i>. REMOVED: <i>You have removed ownership of this claimed land from %1$s<i>.
TOSET: to set ownership of claimed land TOSET: to set ownership of claimed land
FORSET: for setting ownership of claimed land FORSET: for setting ownership of claimed land
ADDED: <i>You have added %s<i> to the owner list for this claimed land. ADDED: <i>You have added %1$s<i> to the owner list for this claimed land.
OWNERLIST: OWNERLIST:
DISABLED: <b>Sorry, but owned areas are disabled on this server. DISABLED: <b>Sorry, but owned areas are disabled on this server.
WRONGFACTION: <b>This land is not claimed by your faction. WRONGFACTION: <b>This land is not claimed by your faction.
NOTCLAIMED: <i>This land is not claimed by any faction, thus no owners. NOTCLAIMED: <i>This land is not claimed by any faction, thus no owners.
NONE: <i>No owners are set here; everyone in the faction has access. NONE: <i>No owners are set here; everyone in the faction has access.
OWNERS: '<i>Current owner(s) of this land: %s' OWNERS: '<i>Current owner(s) of this land: %1$s'
POWER: POWER:
TOSHOW: to show player power info TOSHOW: to show player power info
FORSHOW: for showing player power info FORSHOW: for showing player power info
POWER: '%s<a> - Power / Maxpower: <i>%d / %d %s' POWER: '%1$s<a> - Power / Maxpower: <i>%2$d / %3$d %4$s'
BONUS: ' (bonus: ' BONUS: ' (bonus: '
PENALTY: ' (penalty: ' PENALTY: ' (penalty: '
POWERBOOST: POWERBOOST:
@ -299,21 +303,21 @@ COMMAND:
'1': <b>You must specify "p" or "player" to target a player or "f" or "faction" to target a faction. '1': <b>You must specify "p" or "player" to target a player or "f" or "faction" to target a faction.
'2': <b>ex. /f powerboost p SomePlayer 0.5 -or- /f powerboost f SomeFaction -5 '2': <b>ex. /f powerboost p SomePlayer 0.5 -or- /f powerboost f SomeFaction -5
INVALIDNUM: <b>You must specify a valid numeric value for the power bonus/penalty amount. INVALIDNUM: <b>You must specify a valid numeric value for the power bonus/penalty amount.
PLAYER: Player "%s" PLAYER: Player "%1$s"
FACTION: Faction "%s" FACTION: Faction "%1$s"
BOOST: <i>%s now has a power bonus/penalty of %d to min and max power levels. BOOST: <i>%1$s now has a power bonus/penalty of %2$d to min and max power levels.
BOOSTLOG: '%s has set the power bonus/penalty for %s to %d.' BOOSTLOG: '%1$s has set the power bonus/penalty for %2$s to %3$d.'
RELOAD: RELOAD:
TIME: <i>Reloaded <h>conf.json <i>from disk, took <h>%dms<i>. TIME: <i>Reloaded <h>conf.json <i>from disk, took <h>%1$d ms<i>.
SAFEUNCLAIMALL: SAFEUNCLAIMALL:
SHORT: Unclaim all safezone land SHORT: Unclaim all safezone land
UNCLAIMED: <i>You unclaimed ALL safe zone land. UNCLAIMED: <i>You unclaimed ALL safe zone land.
UNCLAIMEDLOG: '%s unclaimed all safe zones.' UNCLAIMEDLOG: '%1$s unclaimed all safe zones.'
SAVEALL: <i>Factions saved to disk! SAVEALL: <i>Factions saved to disk!
SETFWARP: SETFWARP:
NOTCLAIMED: <i>You can only set warps in your faction territory. NOTCLAIMED: <i>You can only set warps in your faction territory.
LIMIT: <i>Your Faction already has the max amount of warps set <a>(%d). LIMIT: <i>Your Faction already has the max amount of warps set <a>(%1$d).
SET: <i>Set warp <a>%s <i>to your location. SET: <i>Set warp <a>%1$s <i>to your location.
TOSET: to set warp TOSET: to set warp
FORSET: for setting warp FORSET: for setting warp
SETHOME: SETHOME:
@ -321,44 +325,47 @@ COMMAND:
NOTCLAIMED: <b>Sorry, your faction home can only be set inside your own claimed territory. NOTCLAIMED: <b>Sorry, your faction home can only be set inside your own claimed territory.
TOSET: to set the faction home TOSET: to set the faction home
FORSET: for setting the faction home FORSET: for setting the faction home
SET: '%s<i> set the home for your faction. You can now use:' SET: '%1$s<i> set the home for your faction. You can now use:'
SETOTHER: <b>You have set the home for the %s<i> faction. SETOTHER: <b>You have set the home for the %1$s<i> faction.
SHOW: SHOW:
NOFACTION:
SELF: You are not in a faction
OTHER: That's not a faction
TOSHOW: to show faction information TOSHOW: to show faction information
FORSHOW: for showing faction information FORSHOW: for showing faction information
DESCRIPTION: '<a>Description: <i>%s' DESCRIPTION: '<a>Description: <i>%1$s'
PEACEFUL: This faction is Peaceful PEACEFUL: This faction is Peaceful
PERMANENT: <a>This faction is permanent, remaining even with no members. PERMANENT: <a>This faction is permanent, remaining even with no members.
JOINING: '<a>Joining: <i>%s ' JOINING: '<a>Joining: <i>%1$s '
INVITATION: invitation is required INVITATION: invitation is required
UNINVITED: no invitation is needed UNINVITED: no invitation is needed
POWER: '<a>Land / Power / Maxpower: <i> %d/%d/%d %s' POWER: '<a>Land / Power / Maxpower: <i> %1$d/%2$d/%3$d %4$s'
BONUS: ' (bonus: ' BONUS: ' (bonus: '
PENALTY: ' (penalty: ' PENALTY: ' (penalty: '
DEPRECIATED: (%s depreciated) DEPRECIATED: (%1$s depreciated)
LANDVALUE: '<a>Total land value: <i>%s%s' LANDVALUE: '<a>Total land value: <i>%1$s %2$s'
BANKCONTAINS: '<a>Bank contains: <i>%s' BANKCONTAINS: '<a>Bank contains: <i>%1$s'
ALLIES: 'Allies: ' ALLIES: 'Allies: '
ENEMIES: 'Enemies: ' ENEMIES: 'Enemies: '
MEMBERSONLINE: 'Members online: ' MEMBERSONLINE: 'Members online: '
MEMBERSOFFLINE: 'Members offline: ' MEMBERSOFFLINE: 'Members offline: '
SHOWINVITES: SHOWINVITES:
PENDING: 'Players with pending invites: ' PENDING: 'Players with pending invites: '
CLICKTOREVOKE: Click to revoke invite for %s CLICKTOREVOKE: Click to revoke invite for %1$s
STATUS: STATUS:
FORMAT: '%s Power: %s Last Seen: %s' FORMAT: '%1$s Power: %2$s Last Seen: %3$s'
ONLINE: Online ONLINE: Online
AGOSUFFIX: ' ago.' AGOSUFFIX: ' ago.'
TAG: TAG:
TAKEN: <b>That tag is already taken TAKEN: <b>That tag is already taken
TOCHANGE: to change the faction tag TOCHANGE: to change the faction tag
FORCHANGE: for changing the faction tag FORCHANGE: for changing the faction tag
FACTION: '%s<i> changed your faction tag to %s' FACTION: '%1$s<i> changed your faction tag to %2$s'
CHANGED: <i>The faction %s<i> changed their name to %s. CHANGED: <i>The faction %1$s<i> changed their name to %2$s.
TITLE: TITLE:
TOCHANGE: to change a players title TOCHANGE: to change a players title
FORCHANGE: for changing a players title FORCHANGE: for changing a players title
CHANGED: '%s<i> changed a title: %s' CHANGED: '%1$s<i> changed a title: %2$s'
UNCLAIM: UNCLAIM:
SAFEZONE: SAFEZONE:
SUCCESS: <i>Safe zone was unclaimed. SUCCESS: <i>Safe zone was unclaimed.
@ -366,37 +373,37 @@ COMMAND:
WARZONE: WARZONE:
SUCCESS: <i>War zone was unclaimed. SUCCESS: <i>War zone was unclaimed.
NOPERM: <b>This is a war zone. You lack permissions to unclaim. NOPERM: <b>This is a war zone. You lack permissions to unclaim.
UNCLAIMED: '%s<i> unclaimed some of your land.' UNCLAIMED: '%1$s<i> unclaimed some of your land.'
UNCLAIMS: <i>You unclaimed this land. UNCLAIMS: <i>You unclaimed this land.
LOG: '%s unclaimed land at (%s) from the faction: %s' LOG: '%1$s unclaimed land at (%2$s) from the faction: %3$s'
WRONGFACTION: <b>You don't own this land. WRONGFACTION: <b>You don't own this land.
TOUNCLAIM: to unclaim this land TOUNCLAIM: to unclaim this land
FORUNCLAIM: for unclaiming this land FORUNCLAIM: for unclaiming this land
FACTIONUNCLAIMED: '%s<i> unclaimed some land.' FACTIONUNCLAIMED: '%1$s<i> unclaimed some land.'
UNCLAIMALL: UNCLAIMALL:
TOUNCLAIM: to unclaim all faction land TOUNCLAIM: to unclaim all faction land
FORUNCLAIM: for unclaiming all faction land FORUNCLAIM: for unclaiming all faction land
UNCLAIMED: '%s<i> unclaimed ALL of your faction''s land.' UNCLAIMED: '%1$s<i> unclaimed ALL of your faction''s land.'
LOG: '%s unclaimed everything for the faction: %s' LOG: '%1$s unclaimed everything for the faction: %2$s'
VERSION: VERSION:
VERSION: <i>You are running %s VERSION: <i>You are running %1$s
WARUNCLAIMALL: WARUNCLAIMALL:
SHORT: unclaim all warzone land SHORT: unclaim all warzone land
SUCCESS: <i>You unclaimed ALL war zone land. SUCCESS: <i>You unclaimed ALL war zone land.
LOG: '%s unclaimed all war zones.' LOG: '%1$s unclaimed all war zones.'
RELATIONS: RELATIONS:
ALLTHENOPE: <b>Nope! You can't. ALLTHENOPE: <b>Nope! You can't.
MORENOPE: <b>Nope! You can't declare a relation to yourself :) MORENOPE: <b>Nope! You can't declare a relation to yourself :)
ALREADYINRELATIONSHIP: <b>You already have that relation wish set with %s. ALREADYINRELATIONSHIP: <b>You already have that relation wish set with %1$s.
TOMARRY: to change a relation wish TOMARRY: to change a relation wish
FORMARRY: for changing a relation wish FORMARRY: for changing a relation wish
MUTUAL: <i>Your faction is now %s<i> to %s MUTUAL: <i>Your faction is now %1$s<i> to %2$s
PEACEFUL: <i>This will have no effect while your faction is peaceful. PEACEFUL: <i>This will have no effect while your faction is peaceful.
PEACEFULOTHER: <i>This will have no effect while their faction is peaceful. PEACEFULOTHER: <i>This will have no effect while their faction is peaceful.
PROPOSAL: PROPOSAL:
'1': '%s<i> wishes to be your %s' '1': '%1$s<i> wishes to be your %2$s'
'2': <i>Type <c>/%s %s %s<i> to accept. '2': <i>Type <c>/%1$s %2$s %3$s<i> to accept.
SENT: '%s<i> were informed that you wish to be %s' SENT: '%1$s<i> were informed that you wish to be %2$s'
command: command:
convert: convert:
backend: backend:
@ -404,25 +411,82 @@ command:
invalid: Invalid backend invalid: Invalid backend
help: help:
invitations: '<i>You might want to close it and use invitations:' invitations: '<i>You might want to close it and use invitations:'
LEAVE:
PASSADMIN: <b>You must give the admin role to someone else first.
NEGATIVEPOWER: <b>You cannot leave until your power is positive.
TOLEAVE: to leave your faction.
FORLEAVE: for leaving your faction.
LEFT: '%s<i> left faction %s<i>.'
DISBANDED: <i>%s<i> was disbanded.
DISBANDEDLOG: The faction %s (%s) was disbanded due to the last player (%s) leaving.
CLAIM:
PROTECTED: <b>This land is protected
DISABLED: <b>Sorry, this world has land claiming disabled.
CANTCLAIM: <b>You can't claim land for <h>%s<b>.
ALREADYOWN: '%s<i> already own this land.'
MUSTBE: <b>You must be <h>%s<b> to claim land.
MEMBERS: Factions must have at least <h>%s<b> members to claim land.
SAFEZONE: <b>You can not claim a Safe Zone.
WARZONE: <b>You can not claim a War Zone.
POWER: <b>You can't claim more land! You need more power!
LIMIT: <b>Limit reached. You can't claim more land!
ALLY: <b>You can't claim the land of your allies.
CONTIGIOUS: <b>You can only claim additional land which is connected to your first claim or controlled by another faction!
FACTIONCONTIGUOUS: <b>You can only claim additional land which is connected to your first claim!
PEACEFUL: '%s<i> owns this land. Your faction is peaceful, so you cannot claim land
from other factions.'
PEACEFULTARGET: '%s<i> owns this land, and is a peaceful faction. You cannot claim
land from them.'
THISISSPARTA: '%s<i> owns this land and is strong enough to keep it.'
BORDER: <b>You must start claiming land at the border of the territory.
TOCLAIM: to claim this land
FORCLAIM: for claiming this land
CLAIMED: <h>%s<i> claimed land for <h>%s<i> from <h>%s<i>.
CLAIMEDLOG: '%s claimed land at (%s) for the faction: %s'
GENERIC: GENERIC:
NOPERMISSION: <b>You don't have permission to %1$s.
DOTHAT: do that
NOPLAYERMATCH: <b>No player match found for "<p>%1$s<b>".
NOPLAYERFOUND: <b>No player "<p>%1$s<b>" could not be found.
ARGS:
TOOFEW: '<b>Too few arguments. <i>Use like this:'
TOOMANY: '<b>Strange argument "<p>%1$s<b>". <i>Use the command like this:'
OWNERS: 'Owner(s): %1$s'
PUBLICLAND: Public faction land.
FACTIONLESS: factionless
SERVERADMIN: A server admin SERVERADMIN: A server admin
DISABLED: disabled DISABLED: disabled
ENABLED: enabled ENABLED: enabled
CONSOLEONLY: This command cannot be run as a player. CONSOLEONLY: This command cannot be run as a player.
PLAYERONLY: <b>This command can only be used by ingame players.
ASKYOURLEADER: '<i> Ask your leader to:' ASKYOURLEADER: '<i> Ask your leader to:'
YOUSHOULD: '<i>You should:' YOUSHOULD: '<i>You should:'
YOUMAYWANT: '<i>You may want to: ' YOUMAYWANT: '<i>You may want to: '
TRANSLATION: TRANSLATION:
VERSION: 'Translation: %s(%s,%s) State: %s' VERSION: 'Translation: %1$s(%2$s,%3$s) State: %4$s'
CONTRIBUTORS: 'Translation contributors: %s' CONTRIBUTORS: 'Translation contributors: %1$s'
RESPONSIBLE: 'Responsible for translation: %s' RESPONSIBLE: 'Responsible for translation: %1$s'
FACTIONTAG:
TOOSHORT: <i>The faction tag can't be shorter than <h>%1$s<i> chars.
TOOLONG: <i>The faction tag can't be longer than <h>%s<i> chars.
ALPHANUMERIC: <i>Faction tag must be alphanumeric. "<h>%s<i>" is not allowed.
COMPASS:
SHORT:
NORTH: N
EAST: E
SOUTH: S
WEST: W
CHAT:
FACTION: faction chat
ALLIANCE: alliance chat
PUBLIC: public chat
RELATION: RELATION:
MEMBER: member MEMBER: member
ALLY: ally ALLY: ally
NEUTRAL: neutral NEUTRAL: neutral
ENEMY: enemy ENEMY: enemy
NOPAGES: <i>Sorry. No Pages available. NOPAGES: <i>Sorry. No Pages available.
INVALIDPAGE: <i>Invalid page. Must be between 1 and %d INVALIDPAGE: <i>Invalid page. Must be between 1 and %1$d
title: '&bFactions &0|&r' title: '&bFactions &0|&r'
wilderness: '&2Wilderness' wilderness: '&2Wilderness'
wilderness-description: '' wilderness-description: ''
@ -432,3 +496,8 @@ safezone: '&6Safezone'
safezone-description: Free from pvp and monsters. safezone-description: Free from pvp and monsters.
toggle-sb: You now have scoreboards set to {value} toggle-sb: You now have scoreboards set to {value}
default-prefix: '{relationcolor}[{faction}] &r' default-prefix: '{relationcolor}[{faction}] &r'
faction-login: '&e%1$s &9logged in.'
faction-logout: '&e%1$s &9logged out..'
WARMUPS:
NOTIFY:
TELEPORT: '&eYou will teleport to &d%1$s &ein &d%2$d &eseconds.'