diff options
author | Tyler Murphy <tylermurphy534@gmail.com> | 2021-10-20 20:14:01 -0400 |
---|---|---|
committer | Tyler Murphy <tylermurphy534@gmail.com> | 2021-10-20 20:14:01 -0400 |
commit | fc87556d8c0cc92b856ad682e4b3cbc964514eee (patch) | |
tree | 5596f89ec062d560a161722c8b87bec44aa288fd /src/main/java/net/tylermurphy/hideAndSeek/Config.java | |
parent | glow fix, on join code change (diff) | |
download | kenshinshideandseek-fc87556d8c0cc92b856ad682e4b3cbc964514eee.tar.gz kenshinshideandseek-fc87556d8c0cc92b856ad682e4b3cbc964514eee.tar.bz2 kenshinshideandseek-fc87556d8c0cc92b856ad682e4b3cbc964514eee.zip |
teams reference rewrite
Diffstat (limited to 'src/main/java/net/tylermurphy/hideAndSeek/Config.java')
-rw-r--r-- | src/main/java/net/tylermurphy/hideAndSeek/Config.java | 155 |
1 files changed, 155 insertions, 0 deletions
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/Config.java b/src/main/java/net/tylermurphy/hideAndSeek/Config.java new file mode 100644 index 0000000..fe83dd1 --- /dev/null +++ b/src/main/java/net/tylermurphy/hideAndSeek/Config.java @@ -0,0 +1,155 @@ +package net.tylermurphy.hideAndSeek; + +import java.util.Map; +import java.util.Map.Entry; + +import org.bukkit.configuration.ConfigurationSection; +import org.bukkit.configuration.file.FileConfiguration; +import org.bukkit.util.Vector; + +public class Config { + + public static String + messagePrefix, + errorPrefix, + tauntPrefix, + worldborderPrefix, + abortPrefix, + gameoverPrefix, + warningPrefix, + spawnWorld, + exitWorld, + lobbyWorld; + + public static Vector + spawnPosition, + lobbyPosition, + exitPosition, + worldborderPosition; + + public static boolean + nametagsVisible, + permissionsRequired, + announceMessagesToNonPlayers, + worldborderEnabled; + + public static int + minPlayers, + worldborderSize, + worldborderDelay, + currentWorldborderSize, + gameLength; + + public static FileConfiguration getConfig() { + return Main.plugin.getConfig(); + } + + public static void saveConfig() { + Main.plugin.saveConfig(); + } + + public static void loadConfig() { + + Main.plugin.reloadConfig(); + + //Default + getConfig().addDefault("worldBorder.x", 0); + getConfig().addDefault("worldBorder.z", 0); + getConfig().addDefault("worldBorder.delay", 10); + getConfig().addDefault("worldBorder.size", 500); + getConfig().addDefault("worldBorder.enabled", false); + getConfig().addDefault("prefix.default", "&9Hide and Seek > &f"); + getConfig().addDefault("prefix.error", "&cError > &f"); + getConfig().addDefault("prefix.taunt", "&eTaunt > &f"); + getConfig().addDefault("prefix.border", "&cWorld Border > &f"); + getConfig().addDefault("prefix.abort", "&cAbort > &f"); + getConfig().addDefault("prefix.gameover", "&aGame Over > &f"); + getConfig().addDefault("prefix.warning", "&cWarning > &f"); + getConfig().addDefault("nametagsVisible", false); + getConfig().addDefault("permissionsRequired", true); + getConfig().addDefault("announceMessagesToNonPlayers", false); + getConfig().addDefault("spawns.lobby.x", 0); + getConfig().addDefault("spawns.lobby.y", 0); + getConfig().addDefault("spawns.lobby.z", 0); + getConfig().addDefault("spawns.lobby.world", "world"); + getConfig().addDefault("spawns.exit.x", 0); + getConfig().addDefault("spawns.exit.y", 0); + getConfig().addDefault("spawns.exit.z", 0); + getConfig().addDefault("spawns.exit.world", "world"); + getConfig().addDefault("spawns.game.x", 0); + getConfig().addDefault("spawns.game.y", 0); + getConfig().addDefault("spawns.game.z", 0); + getConfig().addDefault("spawns.game.world", "world"); + getConfig().addDefault("minPlayers", 2); + getConfig().addDefault("gameLength", 600); + + //Spawn + spawnPosition = new Vector( + getConfig().getDouble("spawns.game.x"), + Math.max(0,Math.min(255,getConfig().getDouble("spawns.game.y"))), + getConfig().getDouble("spawns.game.z") + ); + spawnWorld = getConfig().getString("spawns.game.world"); + + ///Lobby + lobbyPosition = new Vector( + getConfig().getDouble("spawns.lobby.x"), + Math.max(0,Math.min(255,getConfig().getDouble("spawns.lobby.y"))), + getConfig().getDouble("spawns.lobby.z") + ); + lobbyWorld = getConfig().getString("spawns.lobby.world"); + + announceMessagesToNonPlayers = getConfig().getBoolean("announceMessagesToNonPlayers"); + + exitPosition = new Vector( + getConfig().getDouble("spawns.exit.x"), + Math.max(0,Math.min(255,getConfig().getDouble("spawns.exit.y"))), + getConfig().getDouble("spawns.exit.z") + ); + exitWorld = getConfig().getString("spawns.exit.world"); + + //World border + worldborderPosition = new Vector( + getConfig().getInt("worldBorder.x"), + 0, + getConfig().getInt("worldBorder.z") + ); + worldborderSize = Math.max(100,getConfig().getInt("worldBorder.size")); + worldborderDelay = Math.max(1,getConfig().getInt("worldBorder.delay")); + worldborderEnabled = getConfig().getBoolean("worldBorder.enabled"); + + //Prefix + char SYMBOLE = '\u00A7'; + String SYMBOLE_STRING = new String(new char[] {SYMBOLE}); + + messagePrefix = getConfig().getString("prefix.default").replace("&", SYMBOLE_STRING); + errorPrefix = getConfig().getString("prefix.error").replace("&", SYMBOLE_STRING); + tauntPrefix = getConfig().getString("prefix.taunt").replace("&", SYMBOLE_STRING); + worldborderPrefix = getConfig().getString("prefix.border").replace("&", SYMBOLE_STRING); + abortPrefix = getConfig().getString("prefix.abort").replace("&", SYMBOLE_STRING); + gameoverPrefix = getConfig().getString("prefix.gameover").replace("&", SYMBOLE_STRING); + warningPrefix = getConfig().getString("prefix.warning").replace("&", SYMBOLE_STRING); + + //Other + nametagsVisible = getConfig().getBoolean("nametagsVisible"); + permissionsRequired = getConfig().getBoolean("permissionsRequired"); + minPlayers = Math.max(2,getConfig().getInt("minPlayers")); + gameLength = getConfig().getInt("gameLength"); + + getConfig().options().copyDefaults(true); + saveConfig(); + + } + + public static void addToSection(String sectionName, Map<String,Object> values) { + ConfigurationSection section = getConfig().getConfigurationSection(sectionName); + if(section == null) section = getConfig().createSection(sectionName); + Map<String,Object> sectionValues = section.getValues(true); + for(Entry<String, Object> entry : values.entrySet()) { + sectionValues.put(entry.getKey(), entry.getValue()); + } + getConfig().createSection(sectionName, sectionValues); + saveConfig(); + } + +}
\ No newline at end of file |