From 27dc2bbf908f10c103759a82c37560d63683ebce Mon Sep 17 00:00:00 2001 From: Tyler Murphy Date: Wed, 27 Oct 2021 19:57:44 -0400 Subject: 1.3.1 build 1 --- .../hideAndSeek/configuration/Localization.java | 30 +++++++++++++++++++--- 1 file changed, 26 insertions(+), 4 deletions(-) (limited to 'src/main/java/net/tylermurphy/hideAndSeek/configuration/Localization.java') diff --git a/src/main/java/net/tylermurphy/hideAndSeek/configuration/Localization.java b/src/main/java/net/tylermurphy/hideAndSeek/configuration/Localization.java index 177b5bf..ee34d4a 100644 --- a/src/main/java/net/tylermurphy/hideAndSeek/configuration/Localization.java +++ b/src/main/java/net/tylermurphy/hideAndSeek/configuration/Localization.java @@ -1,6 +1,9 @@ package net.tylermurphy.hideAndSeek.configuration; import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; import java.util.HashMap; import java.util.Map; @@ -13,12 +16,20 @@ public class Localization { public static final Map LOCAL = new HashMap(); - static YamlConfiguration config; + static YamlConfiguration config, defaultConfig; + static File location; public static boolean init() { + Main.plugin.saveResource("localization.yml", false); String path = Main.data.getAbsolutePath()+File.separator + "localization.yml"; - config = YamlConfiguration.loadConfiguration(new File(path)); + location = new File(path); + config = YamlConfiguration.loadConfiguration(location); + + InputStream is = Main.plugin.getResource("localization.yml"); + InputStreamReader isr = new InputStreamReader(is); + defaultConfig = YamlConfiguration.loadConfiguration(isr); + for(String key : config.getConfigurationSection("Localization").getKeys(false)) { LOCAL.put( key, @@ -30,8 +41,19 @@ public class Localization { public static LocalizationString message(String key) { LocalizationString temp = LOCAL.get(key); - if(temp == null) - return new LocalizationString(key+" missing from localization.yml"); + if(temp == null) { + config.set("Localization."+key, defaultConfig.getString("Localization."+key)); + try { + config.save(location); + } catch (IOException e) { + Main.plugin.getLogger().severe(e.getMessage()); + } + LOCAL.put(key, + new LocalizationString( ChatColor.translateAlternateColorCodes('&', defaultConfig.getString("Localization."+key) ) ) + ); + return new LocalizationString(LOCAL.get(key).toString()); + } return new LocalizationString(temp.toString()); + } } -- cgit v1.2.3-freya