Fixes some problems with color formatting and allows specifying the format of the permission list
This commit is contained in:
parent
967b533e55
commit
ea77c36564
@ -13,7 +13,6 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import static net.knarcraft.permissionsigns.formatting.StringFormatter.replacePlaceholder;
|
||||
import static net.knarcraft.permissionsigns.formatting.StringFormatter.translateAllColorCodes;
|
||||
|
||||
/**
|
||||
* This class represents a placed and active permission sign
|
||||
@ -132,9 +131,9 @@ public class PermissionSign {
|
||||
*/
|
||||
public String[] getSignLines() {
|
||||
String[] lines = new String[4];
|
||||
lines[0] = translateAllColorCodes(Translator.getTranslatedMessage(TranslatableMessage.SIGN_PREFIX));
|
||||
lines[1] = translateAllColorCodes(replacePlaceholder(Translator.getTranslatedMessage(
|
||||
TranslatableMessage.SIGN_NAME_FORMAT), "{name}", getName()));
|
||||
lines[0] = Translator.getTranslatedMessage(TranslatableMessage.SIGN_PREFIX);
|
||||
lines[1] = replacePlaceholder(Translator.getTranslatedMessage(
|
||||
TranslatableMessage.SIGN_NAME_FORMAT), "{name}", getName());
|
||||
lines[2] = getDurationString();
|
||||
lines[3] = getCostString();
|
||||
return lines;
|
||||
|
@ -84,8 +84,8 @@ public class StringFormatter {
|
||||
* @return <p>The formatted message</p>
|
||||
*/
|
||||
private static String formatMessage(String message) {
|
||||
return translateAllColorCodes(Translator.getTranslatedMessage(TranslatableMessage.PREFIX)) + " " +
|
||||
ChatColor.RESET + translateAllColorCodes(message);
|
||||
return Translator.getTranslatedMessage(TranslatableMessage.PREFIX) + " " +
|
||||
ChatColor.RESET + message;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -173,6 +173,11 @@ public enum TranslatableMessage {
|
||||
/**
|
||||
* The text describing all properties of a permission sign
|
||||
*/
|
||||
SIGN_INFO
|
||||
SIGN_INFO,
|
||||
|
||||
/**
|
||||
* The format used for each permission displayed in a list when displaying permission sign info
|
||||
*/
|
||||
SIGN_INFO_PERMISSION_FORMAT
|
||||
|
||||
}
|
||||
|
@ -42,13 +42,15 @@ public final class Translator {
|
||||
if (translatedMessages == null) {
|
||||
return "Translated strings not loaded";
|
||||
}
|
||||
String translatedMessage;
|
||||
if (translatedMessages.containsKey(translatableMessage)) {
|
||||
return translatedMessages.get(translatableMessage);
|
||||
translatedMessage = translatedMessages.get(translatableMessage);
|
||||
} else if (backupTranslatedMessages.containsKey(translatableMessage)) {
|
||||
return backupTranslatedMessages.get(translatableMessage);
|
||||
translatedMessage = backupTranslatedMessages.get(translatableMessage);
|
||||
} else {
|
||||
return translatableMessage.toString();
|
||||
translatedMessage = translatableMessage.toString();
|
||||
}
|
||||
return StringFormatter.translateAllColorCodes(translatedMessage);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -101,15 +101,14 @@ public class SignListener implements Listener {
|
||||
permissionString = new StringBuilder(permissionNodes.get(0));
|
||||
} else {
|
||||
for (String permissionNode : permissionNodes) {
|
||||
permissionString.append("\n" + "&f| &7- ").append(permissionNode);
|
||||
String format = Translator.getTranslatedMessage(TranslatableMessage.SIGN_INFO_PERMISSION_FORMAT);
|
||||
permissionString.append(StringFormatter.replacePlaceholder(format, "{permission}", permissionNode));
|
||||
}
|
||||
permissionString.append("\n");
|
||||
}
|
||||
|
||||
String replacedString = StringFormatter.replacePlaceholders(rawSignInfo, new String[]{"{Name}", "{Permissions}",
|
||||
return StringFormatter.replacePlaceholders(rawSignInfo, new String[]{"{Name}", "{Permissions}",
|
||||
"{Cost}", "{Duration}"}, new String[]{sign.getName(), permissionString.toString(), sign.getCostString(),
|
||||
sign.getDurationString()});
|
||||
return StringFormatter.translateAllColorCodes(replacedString);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -14,7 +14,7 @@ en:
|
||||
SIGN_DURATION_FORMAT: "{duration} {unit}"
|
||||
SIGN_PERMANENT: "Permanent"
|
||||
SIGN_COST_FREE: "Free"
|
||||
SIGN_COST_FORMAT: "{cost}#66ff00{currency}"
|
||||
SIGN_COST_FORMAT: "{cost}{currency}"
|
||||
COST_INVALID_NUMBER: "&7The given cost is not a valid number"
|
||||
DURATION_INVALID_NUMBER: "&7The given duration is not a valid number"
|
||||
COMMAND_PLAYER_ONLY: "&7This command is only available to players"
|
||||
@ -33,6 +33,7 @@ en:
|
||||
CREATION_REQUEST_CANCELLED: "&7Your last permission sign creation request has been cancelled"
|
||||
RELOAD_SUCCESSFUL: "&7The plugin has been successfully reloaded"
|
||||
SIGN_INFO: "&f---- &4Permission Sign&f ----\n&f| &bName: &7{Name}\n&f| &bPermission(s): &7{Permissions}\n&f| &bCost: &7{Cost}\n&f| &bDuration: &7{Duration}\n&f| &7Right-click the sign while sneaking to buy the permission(s)\n&f-------------------------"
|
||||
SIGN_INFO_PERMISSION_FORMAT: "\n&f| &7- {permission}"
|
||||
nb-no:
|
||||
PREFIX: "[Tilgangsrettighetsskilt]"
|
||||
SIGN_PREFIX: "&4[PermSign]"
|
||||
@ -49,7 +50,7 @@ nb-no:
|
||||
SIGN_DURATION_FORMAT: "{duration} {unit}"
|
||||
SIGN_PERMANENT: "Permanent"
|
||||
SIGN_COST_FREE: "Gratis"
|
||||
SIGN_COST_FORMAT: "{cost}#66ff00{currency}"
|
||||
SIGN_COST_FORMAT: "{cost}{currency}"
|
||||
COST_INVALID_NUMBER: "&7Den gitte kostnaden er ikke et gyldig nummer"
|
||||
DURATION_INVALID_NUMBER: "&7Den gitte varigheten er ikke et gyldig nummer"
|
||||
COMMAND_PLAYER_ONLY: "&7Denne kommandoen kan bare brukes av spillere"
|
||||
@ -68,3 +69,4 @@ nb-no:
|
||||
CREATION_REQUEST_CANCELLED: "&7Din siste tilgangsrettighetsskiltsforespørsel har blitt kansellert"
|
||||
RELOAD_SUCCESSFUL: "&7Plugin-modulen har blitt lastet inn på nytt"
|
||||
SIGN_INFO: "&f---- &4Tilgangsrettighetsskilt&f ----\n&f| &bNavn: &7{Name}\n&f| &bTilgangsrettighet(er): &7{Permissions}\n&f| &bKostnad: &7{Cost}\n&f| &bVarighet: &7{Duration}\n&f| &7Høyreklikk skiltet mens du sniker for å kjøpe tilgangsrettighet(en/ene)\n&f-------------------------"
|
||||
SIGN_INFO_PERMISSION_FORMAT: "\n&f| &7- {permission}"
|
Loading…
Reference in New Issue
Block a user