diff options
author | Tyler Murphy <tylermurphy534@gmail.com> | 2021-12-21 11:31:00 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-12-21 11:31:00 -0500 |
commit | a5a7af37fb45a75fece1093d3efc26131366ce3f (patch) | |
tree | 16ec865e9e1530b9b846f70dbc8a122ef3a1e533 /src/main/java/net/tylermurphy | |
parent | make beta branch use every branch besides master (diff) | |
parent | finalize docs (diff) | |
download | kenshinshideandseek-a5a7af37fb45a75fece1093d3efc26131366ce3f.tar.gz kenshinshideandseek-a5a7af37fb45a75fece1093d3efc26131366ce3f.tar.bz2 kenshinshideandseek-a5a7af37fb45a75fece1093d3efc26131366ce3f.zip |
Merge pull request #15 from tylermurphy534/1.3.1
1.3.1
Diffstat (limited to '')
5 files changed, 26 insertions, 12 deletions
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/command/SetExitLocation.java b/src/main/java/net/tylermurphy/hideAndSeek/command/SetExitLocation.java index e0b8a5d..aeaa89b 100644 --- a/src/main/java/net/tylermurphy/hideAndSeek/command/SetExitLocation.java +++ b/src/main/java/net/tylermurphy/hideAndSeek/command/SetExitLocation.java @@ -28,6 +28,7 @@ public class SetExitLocation implements ICommand { newExitPosition.setX(player.getLocation().getBlockX()); newExitPosition.setY(player.getLocation().getBlockY()); newExitPosition.setZ(player.getLocation().getBlockZ()); + exitWorld = player.getLocation().getWorld().getName(); exitPosition = newExitPosition; sender.sendMessage(messagePrefix + message("EXIT_SPAWN")); addToConfig("spawns.exit.x", exitPosition.getX()); diff --git a/src/main/java/net/tylermurphy/hideAndSeek/command/SetLobbyLocation.java b/src/main/java/net/tylermurphy/hideAndSeek/command/SetLobbyLocation.java index 53ae721..2e96a9d 100644 --- a/src/main/java/net/tylermurphy/hideAndSeek/command/SetLobbyLocation.java +++ b/src/main/java/net/tylermurphy/hideAndSeek/command/SetLobbyLocation.java @@ -28,6 +28,7 @@ public class SetLobbyLocation implements ICommand { newLobbyPosition.setX(player.getLocation().getBlockX()); newLobbyPosition.setY(player.getLocation().getBlockY()); newLobbyPosition.setZ(player.getLocation().getBlockZ()); + lobbyWorld = player.getLocation().getWorld().getName(); lobbyPosition = newLobbyPosition; sender.sendMessage(messagePrefix + message("LOBBY_SPAWN")); addToConfig("spawns.lobby.x", lobbyPosition.getX()); diff --git a/src/main/java/net/tylermurphy/hideAndSeek/command/SetSpawnLocation.java b/src/main/java/net/tylermurphy/hideAndSeek/command/SetSpawnLocation.java index 5324ecf..bb3de6d 100644 --- a/src/main/java/net/tylermurphy/hideAndSeek/command/SetSpawnLocation.java +++ b/src/main/java/net/tylermurphy/hideAndSeek/command/SetSpawnLocation.java @@ -34,6 +34,7 @@ public class SetSpawnLocation implements ICommand { sender.sendMessage(errorPrefix + message("WORLDBORDER_POSITION")); return; } + spawnWorld = player.getLocation().getWorld().getName(); spawnPosition = newSpawnPosition; sender.sendMessage(messagePrefix + message("GAME_SPAWN")); addToConfig("spawns.game.x", spawnPosition.getX()); diff --git a/src/main/java/net/tylermurphy/hideAndSeek/configuration/ConfigManager.java b/src/main/java/net/tylermurphy/hideAndSeek/configuration/ConfigManager.java index d16f3d8..dee1643 100644 --- a/src/main/java/net/tylermurphy/hideAndSeek/configuration/ConfigManager.java +++ b/src/main/java/net/tylermurphy/hideAndSeek/configuration/ConfigManager.java @@ -13,9 +13,11 @@ public class ConfigManager { private File file; private YamlConfiguration config,defaultConfig; + private String defaultFilename; public ConfigManager(String filename){ this.file = new File(Main.plugin.getDataFolder(), filename); + this.defaultFilename = file.getName(); if(!file.exists()){ saveDefaultConfiguration(); @@ -33,6 +35,8 @@ public class ConfigManager { } public ConfigManager(String filename, String defaultFilename){ + + this.defaultFilename = defaultFilename; this.file = new File(Main.plugin.getDataFolder(), filename); if(!file.exists()){ @@ -99,9 +103,14 @@ public class ConfigManager { config.set(path, defaultConfig.get(path)); } - public void resetConfig(){ - config = defaultConfig; - saveConfig(); + public void resetFile(String newDefaultFilename){ + this.defaultFilename = newDefaultFilename; + + InputStream input = Main.plugin.getResource(defaultFilename); + InputStreamReader reader = new InputStreamReader(input); + this.config = YamlConfiguration.loadConfiguration(reader); + this.defaultConfig = YamlConfiguration.loadConfiguration(reader); + } public boolean getBoolean(String path){ @@ -128,7 +137,7 @@ public class ConfigManager { public void saveConfig(){ try { - InputStream is = Main.plugin.getResource(file.getName()); + InputStream is = Main.plugin.getResource(defaultFilename); StringBuilder textBuilder = new StringBuilder(); Reader reader = new BufferedReader(new InputStreamReader(is, Charset.forName(StandardCharsets.UTF_8.name()))); int c = 0; @@ -144,15 +153,15 @@ public class ConfigManager { int i = 0; for(String part : parts) { if(i == 0) { - index = yamlString.indexOf(part, index); + index = yamlString.indexOf(part+":", index); } else { - index = yamlString.indexOf(" " + part, index); + index = yamlString.indexOf(" " + part+":", index); index++; } i++; if(index == -1) break; } - if(index == -1) continue;; + if(index < 10) continue;; int start = yamlString.indexOf(' ', index); int end = yamlString.indexOf('\n', index); if(end == -1) end = yamlString.length(); @@ -160,8 +169,9 @@ public class ConfigManager { if(entry.getValue() instanceof String){ replace = "\"" + replace + "\""; } + System.out.println(entry.getKey() + " " + index + " " + start + " " + end); StringBuilder builder = new StringBuilder(yamlString); - builder.replace(start+1, end == -1 ? yamlString.length() : end, replace); + builder.replace(start+1, end, replace); yamlString = builder.toString(); } } diff --git a/src/main/java/net/tylermurphy/hideAndSeek/configuration/Localization.java b/src/main/java/net/tylermurphy/hideAndSeek/configuration/Localization.java index c404aa3..61dc5a4 100644 --- a/src/main/java/net/tylermurphy/hideAndSeek/configuration/Localization.java +++ b/src/main/java/net/tylermurphy/hideAndSeek/configuration/Localization.java @@ -28,12 +28,13 @@ public class Localization { manager.reset("version"); } - String SELECTED_LOCAL = manager.getString("local"); - if(!SELECTED_LOCAL.equals(Config.local)){ - manager.resetConfig(); + String SELECTED_LOCAL = manager.getString("type"); + if(SELECTED_LOCAL == null){ + manager.reset("type"); + } else if(!SELECTED_LOCAL.equals(Config.local)){ + manager.resetFile("lang"+File.separator+"localization_"+Config.local+".yml"); } - manager.saveConfig(); for(String key : manager.getConfigurationSection("Localization").getKeys(false)) { |