fix: defaultLanguage is public. Now is private
This commit is contained in:
29
.idea/workspace.xml
generated
29
.idea/workspace.xml
generated
@@ -5,37 +5,8 @@
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="46146984-f46a-4efa-a29f-c0632c66dbea" name="Changes" comment="">
|
||||
<change afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/items/special/AntiGravity.java" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/items/special/Chorus.java" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/items/special/DeathBelt.java" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/items/special/Decoy.java" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/managers/CommandManager.java" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/managers/PartyManager.java" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/objects/Party.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/.gradle/buildOutputCleanup/buildOutputCleanup.lock" beforeDir="false" afterPath="$PROJECT_DIR$/.gradle/buildOutputCleanup/buildOutputCleanup.lock" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/BlockAndSeek.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/BlockAndSeek.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/BlocksGenerator.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/BlocksGenerator.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/Config.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/Config.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/Utils.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/Utils.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/eventListeners/ForceControlEventListener.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/eventListeners/ForceControlEventListener.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/eventListeners/RequiredEventListener.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/eventListeners/RequiredEventListener.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/items/DashItem.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/items/DashItem.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/items/Grenade.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/items/Grenade.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/items/MorphItem.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/items/special/MorphItem.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/items/Pistol.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/items/Pistol.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/managers/GamesManager.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/managers/GamesManager.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/managers/ItemManager.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/managers/ItemManager.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/managers/PropManager.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/managers/PropManager.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/managers/TranslationManager.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/managers/TranslationManager.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/menus/GamesMenu.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/menus/GamesMenu.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/menus/MapsMenu.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/menus/MapsMenu.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/objects/BlockAndSeekGame.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/objects/BlockAndSeekGame.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/objects/BlockAndSeekItem.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/objects/BlockAndSeekItem.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/objects/BlockAndSeekMap.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/objects/BlockAndSeekMap.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/objects/Items.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/objects/Items.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/objects/LazyLocation.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/objects/LazyLocation.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/objects/TranslationKey.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/hdvtdev/blockandseek/objects/TranslationKey.java" afterDir="false" />
|
||||
</list>
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
|
||||
@@ -1,62 +1,58 @@
|
||||
package hdvtdev.blockandseek.managers;
|
||||
|
||||
|
||||
import eu.okaeri.configs.ConfigManager;
|
||||
import eu.okaeri.configs.OkaeriConfig;
|
||||
import eu.okaeri.configs.annotation.Exclude;
|
||||
import eu.okaeri.configs.serdes.commons.SerdesCommons;
|
||||
import eu.okaeri.configs.yaml.bukkit.YamlBukkitConfigurer;
|
||||
|
||||
import hdvtdev.blockandseek.BlockAndSeek;
|
||||
import hdvtdev.blockandseek.objects.Translation;
|
||||
import hdvtdev.blockandseek.objects.TranslationKey;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import net.kyori.adventure.text.Component;
|
||||
import net.kyori.adventure.text.minimessage.MiniMessage;
|
||||
|
||||
import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer;
|
||||
import org.bukkit.Bukkit;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.meta.ItemMeta;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.atomic.AtomicReference;
|
||||
|
||||
public final class TranslationManager {
|
||||
|
||||
private TranslationManager() {
|
||||
}
|
||||
|
||||
public static final String defaultLanguage = "en_US";
|
||||
private static final String defaultLanguage = "en_US";
|
||||
public static final MiniMessage mm = MiniMessage.miniMessage();
|
||||
public static final PlainTextComponentSerializer plaintText = PlainTextComponentSerializer.plainText();
|
||||
|
||||
public static final String prefix = "<gradient:#FFAA00:#FFD700><bold>BlockAndSeek</bold></gradient> <dark_gray>»</dark_gray>";
|
||||
public static final String bracedPrefix = "<gradient:#FFAA00:#FFD700><bold>[BlockAndSeek]</bold></gradient>";
|
||||
public static final Component prefix = mm.deserialize("<gradient:#FFAA00:#FFD700><bold>BlockAndSeek</bold></gradient> <dark_gray>»</dark_gray>");
|
||||
public static final Component bracedPrefix = mm.deserialize("<gradient:#FFAA00:#FFD700><bold>[BlockAndSeek]</bold></gradient>");
|
||||
|
||||
private static final Map<String, EnumMap<TranslationKey, String>> translations = new HashMap<>();
|
||||
|
||||
public static Component get(Player player, TranslationKey key, String... placeholders) {
|
||||
@SafeVarargs
|
||||
public static Component get(Player player, TranslationKey key, @NotNull Map.Entry<String, String>... placeholders) {
|
||||
return get(player.locale().toString(), key, placeholders);
|
||||
}
|
||||
|
||||
public static Component get(String lang, TranslationKey key, String... placeholders) {
|
||||
String raw = translations.getOrDefault(lang, translations.get(defaultLanguage)).getOrDefault(key, "?" + key.toString() + "?");
|
||||
if (placeholders.length % 2 == 0) {
|
||||
for (int i = 0; i < placeholders.length; i++) {
|
||||
raw = raw.replace(placeholders[i], placeholders[++i]);
|
||||
}
|
||||
} else BlockAndSeek.getPluginLogger().warning("Wrong amount of placeholders for key: " + key);
|
||||
return mm.deserialize(raw);
|
||||
@SafeVarargs
|
||||
public static Component get(TranslationKey key, @NotNull Map.Entry<String, String>... placeholders) {
|
||||
return get(defaultLanguage, key, placeholders);
|
||||
}
|
||||
|
||||
public static ItemStack translateItem(Player player, ItemStack itemStack, TranslationKey key, String... placeholders) {
|
||||
ItemMeta itemMeta = itemStack.getItemMeta();
|
||||
itemMeta.displayName(get(player, key, placeholders));
|
||||
itemStack.setItemMeta(itemMeta);
|
||||
@SafeVarargs
|
||||
public static Component get(String lang, TranslationKey key, @NotNull Map.Entry<String, String>... placeholders) {
|
||||
String raw = translations.getOrDefault(lang, translations.get(defaultLanguage)).getOrDefault(key, "?" + key.toString() + "?");
|
||||
return mm.deserialize(processPlaceholders(raw, placeholders));
|
||||
}
|
||||
|
||||
@SafeVarargs
|
||||
public static ItemStack translateItem(Player player, ItemStack itemStack, TranslationKey key, @NotNull Map.Entry<String, String>... placeholders) {
|
||||
itemStack.editMeta(meta -> meta.displayName(get(player, key, placeholders)));
|
||||
return itemStack;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user