Skip to content

Commit

Permalink
Fix api
Browse files Browse the repository at this point in the history
  • Loading branch information
BoomEaro committed Aug 27, 2024
1 parent ed79b63 commit bdeaee8
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ public abstract class DefaultTranslateManager implements TranslateManager {
/**
* Загружает языки из файла в менеджере, учитывая включенные языки.
*/
public void loadLanguages() {
private void loadLanguages() {
Map<LangType, TranslatedMessages> types = new HashMap<>();
try {
InputStream stream = getFileInputStream();
Expand All @@ -65,6 +65,9 @@ public void loadLanguages() {
file.getParentFile().mkdirs();
}

Set<LangType> languages = new HashSet<>(this.configManager.getEnabledLanguages());
languages.addAll(this.registeredLanguages);

if (file.isDirectory()) {
File ver = new File(file, getVersion());
if (ver.isDirectory()) {
Expand All @@ -89,7 +92,7 @@ public void loadLanguages() {
continue;
}

if (!this.configManager.getEnabledLanguages().contains(lt)) {
if (!languages.contains(lt)) {
continue;
}

Expand Down Expand Up @@ -120,8 +123,7 @@ public Set<LangType> getAllTranslateLang() {
* Метод проверяет и скачивает с серверов mojang нужный язык для нужной версии.
* Сам бы я не узнал как именно скачивать языки. Спасибо автору который реализовал утилиту: https://gist.github.com/Mystiflow/c2b8838688e3215bb5492041046e458e
**/
@Override
public void checkAndDownloadLanguages() {
private void checkAndDownloadLanguages() {
File currentTranFolder = new File(this.plugin.getDataFolder(), "languages" + File.separator + this.version + File.separator);

Set<LangType> languages = new HashSet<>(this.configManager.getEnabledLanguages());
Expand Down Expand Up @@ -157,6 +159,12 @@ public void checkAndDownloadLanguages() {
}
}

@Override
public void reloadLanguages() {
checkAndDownloadLanguages();
loadLanguages();
}

@Override
public void registerLanguageType(LangType langType) {
this.registeredLanguages.add(langType);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -143,11 +143,12 @@ public interface TranslateManager {
*/
String getBiomeName(Biome biome, LangType langType);


/**
* Скачивает недостающие языки.
* Скачивает и загружает недостающие языки.
* Полезно если вы зарегистрировали языки, которые не были указаны в конфиге.
*/
void checkAndDownloadLanguages();
void reloadLanguages();

/**
* Зарегистрировать язык
Expand Down
4 changes: 1 addition & 3 deletions plugin/src/main/java/ru/boomearo/langhelper/LangHelper.java
Original file line number Diff line number Diff line change
Expand Up @@ -54,9 +54,7 @@ public void onEnable() {
try {
this.translateManager = matchVersion(this, this.configManager);

this.translateManager.checkAndDownloadLanguages();

this.translateManager.loadLanguages();
this.translateManager.reloadLanguages();

for (TranslatedMessages tra : this.translateManager.getAllTranslate()) {
String languageName = tra.getTranslate("language.name");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,7 @@ public void onExecute(CommandSender sender, String[] args) {
}

this.configManager.load();
this.defaultTranslateManager.checkAndDownloadLanguages();
this.defaultTranslateManager.loadLanguages();
this.defaultTranslateManager.reloadLanguages();

sender.sendMessage("Configuration successfully reloaded!");
}
Expand Down

0 comments on commit bdeaee8

Please sign in to comment.