First work on converting the old global config file to the new one.
For #23
This commit is contained in:
		
							
								
								
									
										46
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										46
									
								
								README.md
									
									
									
									
									
								
							| @@ -9,37 +9,47 @@ Beta 2 Changes | |||||||
| *Changes since Beta 1* | *Changes since Beta 1* | ||||||
| * Fix the default Jail Stick not being loaded correctly, [#21](https://github.com/graywolf336/Jail/issues/21) | * Fix the default Jail Stick not being loaded correctly, [#21](https://github.com/graywolf336/Jail/issues/21) | ||||||
| * Implement Scoreboards, with title and time configurable. ([#15](https://github.com/graywolf336/Jail/issues/15)) | * Implement Scoreboards, with title and time configurable. ([#15](https://github.com/graywolf336/Jail/issues/15)) | ||||||
|  | * Convert old data and config values, only some are done and if you don't want the old data delete your `global.yml` | ||||||
|  | * Add config option to disallow the usage of Jail Sticks | ||||||
|  |  | ||||||
| Beta 1 Changes | Beta 1 Changes | ||||||
| === | === | ||||||
| *Changes since alpha* | *Changes since alpha* | ||||||
| - MySQL storage is now a valid option for storage ([#18](https://github.com/graywolf336/Jail/issues/18)) | * MySQL storage is now a valid option for storage ([#18](https://github.com/graywolf336/Jail/issues/18)) | ||||||
| - MySQL data validation, basically if a cell or prisoner reference a jail which no longer exists they are removed | * MySQL data validation, basically if a cell or prisoner reference a jail which no longer exists they are removed | ||||||
| - Fix a bug with not being able to unjail someone forcefully if they were in a cell ([#17](https://github.com/graywolf336/Jail/issues/17)) | * Fix a bug with not being able to unjail someone forcefully if they were in a cell ([#17](https://github.com/graywolf336/Jail/issues/17)) | ||||||
| - Add the record keeping system ([#12](https://github.com/graywolf336/Jail/issues/12)) | * Add the record keeping system ([#12](https://github.com/graywolf336/Jail/issues/12)) | ||||||
| - Added Jail Sticks, format of them has slightly changed ([#16](https://github.com/graywolf336/Jail/issues/16)) | * Added Jail Sticks, format of them has slightly changed ([#16](https://github.com/graywolf336/Jail/issues/16)) | ||||||
|  |  | ||||||
| Changes | Changes | ||||||
| === | === | ||||||
| *With this being version 3 of this plugin, a couple things have changed but the core concept is still the exact same. Here are some drastic changes:* | *With this being version 3 of this plugin, a couple things have changed but the core concept is still the exact same. Here are some drastic changes:* | ||||||
| - Time can now be entered different formats, 3hours or 15mins or 4days | * Time can now be entered different formats, 3hours or 15mins or 4days | ||||||
| - New language system | * New language system | ||||||
| - New config system (per jail configs are going to make a come back) | * New config system (per jail configs are going to make a come back) | ||||||
| - Items in the config use item names now, **not** the ids | * Items in the config use item names now, **not** the ids | ||||||
|  | * All commands are prevented by default, now there is **only** a whitelist | ||||||
|  | * All interactions are prevented by default, add to the whitelist what you want | ||||||
|  | * If store inventory is not enabled, inventories are deleted upon jailing | ||||||
|  | * Sign text has a new format, old format will not be converted | ||||||
|  | * Max reason length has been removed, might be added back in if needed | ||||||
|  |  | ||||||
| ToDo | ToDo | ||||||
| === | === | ||||||
| - Guards | * Jail pay | ||||||
|  | * Jail set | ||||||
|  | * Jail vote | ||||||
|  | * Jailing for swearing | ||||||
|  | * Guards (PlayerMoveProtectionAction - when they try to move do we teleport them back, let the guards get them, or nothing) | ||||||
|  | * Storing permissions | ||||||
|  | * Update Notifications | ||||||
|  | * Pages on jail list | ||||||
|  |  | ||||||
| Done | Notice | ||||||
| === | === | ||||||
| - Muted Prisoners are now muted | * Old messages (language) will not be converted | ||||||
| - Implemented counting down time **always use the bukkit scheduler, unless your tick rate is slow as the other way we do it is not always stable** | * MaximumAFKTime setting will not convert over, the format isn't clear and the old version didn't provide a way to get values with decimal places | ||||||
| - New command system, internally we handle commands a lot better | * EnableLogging has been removed, we are always going to be logging (unless major request to control this) | ||||||
| - Delete commands are now remove |  | ||||||
| - Language system (adding language strings as I use them, be patient with me) |  | ||||||
| - Handcuffs are now implemented |  | ||||||
| - The time passed can be represented by time shorthand, aka "3hours" or "15minutes" or etc (defaults to minutes) |  | ||||||
|  |  | ||||||
| [Jail 3.0 JavaDoc](http://ci.graywolf336.com/job/Jail/javadoc) | [Jail 3.0 JavaDoc](http://ci.graywolf336.com/job/Jail/javadoc) | ||||||
| ==== | ==== | ||||||
|   | |||||||
| @@ -161,6 +161,13 @@ public class JailMain extends JavaPlugin { | |||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| 	 | 	 | ||||||
|  | 	/** Reloads the Jail Sticks, so the new ones can be loaded from the config. */ | ||||||
|  | 	public void reloadJailSticks() { | ||||||
|  | 		this.jsm.removeAllStickUsers(); | ||||||
|  | 		this.jsm = null; | ||||||
|  | 		this.jsm = new JailStickManager(this); | ||||||
|  | 	} | ||||||
|  | 	 | ||||||
| 	/** Gets the {@link HandCuffManager} instance. */ | 	/** Gets the {@link HandCuffManager} instance. */ | ||||||
| 	public HandCuffManager getHandCuffManager() { | 	public HandCuffManager getHandCuffManager() { | ||||||
| 		return this.hcm; | 		return this.hcm; | ||||||
|   | |||||||
| @@ -8,12 +8,13 @@ import org.bukkit.configuration.file.FileConfiguration; | |||||||
| import org.bukkit.entity.Player; | import org.bukkit.entity.Player; | ||||||
|  |  | ||||||
| import com.graywolf336.jail.beans.Stick; | import com.graywolf336.jail.beans.Stick; | ||||||
|  | import com.graywolf336.jail.enums.Settings; | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * Manages the jail stick users. |  * Manages the jail stick users. | ||||||
|  *  |  *  | ||||||
|  * @author graywolf336 |  * @author graywolf336 | ||||||
|  * @version 1.0.0 |  * @version 1.0.1 | ||||||
|  * @since 3.0.0 |  * @since 3.0.0 | ||||||
|  * |  * | ||||||
|  */ |  */ | ||||||
| @@ -32,7 +33,7 @@ public class JailStickManager { | |||||||
| 		FileConfiguration config =  pl.getConfig(); | 		FileConfiguration config =  pl.getConfig(); | ||||||
| 		 | 		 | ||||||
| 		//item name,time,jail name,reason | 		//item name,time,jail name,reason | ||||||
| 		for(String s : config.getStringList("jailstick")) { | 		for(String s : config.getStringList(Settings.JAILSTICKSTICKS.getPath())) { | ||||||
| 			String[] a = s.split(","); | 			String[] a = s.split(","); | ||||||
| 			 | 			 | ||||||
| 			//Check if the jail given, if any, exists | 			//Check if the jail given, if any, exists | ||||||
| @@ -161,4 +162,11 @@ public class JailStickManager { | |||||||
| 			return true; | 			return true; | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  | 	 | ||||||
|  | 	/**  Removes all the users currently using the sticks. */ | ||||||
|  | 	public void removeAllStickUsers() { | ||||||
|  | 		for(String s: stickers) { | ||||||
|  | 			this.removeUsingStick(s); | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
| } | } | ||||||
|   | |||||||
| @@ -96,7 +96,7 @@ public class PrisonerManager { | |||||||
| 		} | 		} | ||||||
| 		 | 		 | ||||||
| 		//Log the message, if it is enabled | 		//Log the message, if it is enabled | ||||||
| 		if(pl.getConfig().getBoolean(Settings.LOGJAILING.getPath(), true) && !broadcasted) { | 		if(pl.getConfig().getBoolean(Settings.LOGJAILINGTOCONSOLE.getPath(), true) && !broadcasted) { | ||||||
| 			pl.getServer().getConsoleSender().sendMessage(msg); | 			pl.getServer().getConsoleSender().sendMessage(msg); | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|   | |||||||
| @@ -51,7 +51,7 @@ public class UnJailCommand implements Command { | |||||||
| 				} | 				} | ||||||
| 			} | 			} | ||||||
| 			 | 			 | ||||||
| 			if(jm.getPlugin().getConfig().getBoolean(Settings.LOGJAILING.getPath())) { | 			if(jm.getPlugin().getConfig().getBoolean(Settings.LOGJAILINGTOCONSOLE.getPath())) {//TODO: Fix this setting, as this is wrong | ||||||
| 				jm.getPlugin().getLogger().info(jm.getPlugin().getJailIO().getLanguageString(LangString.BROADCASTUNJAILING, new String[] { args[0], sender.getName() })); | 				jm.getPlugin().getLogger().info(jm.getPlugin().getJailIO().getLanguageString(LangString.BROADCASTUNJAILING, new String[] { args[0], sender.getName() })); | ||||||
| 			} | 			} | ||||||
| 		}else { | 		}else { | ||||||
|   | |||||||
| @@ -24,7 +24,7 @@ public class UnJailForceCommand implements Command { | |||||||
| 			jm.getPlugin().getPrisonerManager().forceRelease(jm.getPrisoner(args[0])); | 			jm.getPlugin().getPrisonerManager().forceRelease(jm.getPrisoner(args[0])); | ||||||
| 			sender.sendMessage(jm.getPlugin().getJailIO().getLanguageString(LangString.FORCEUNJAILED, args[0])); | 			sender.sendMessage(jm.getPlugin().getJailIO().getLanguageString(LangString.FORCEUNJAILED, args[0])); | ||||||
| 			 | 			 | ||||||
| 			if(jm.getPlugin().getConfig().getBoolean(Settings.LOGJAILING.getPath())) { | 			if(jm.getPlugin().getConfig().getBoolean(Settings.LOGJAILINGTOCONSOLE.getPath())) {//TODO: Fix this setting being used wrongly | ||||||
| 				jm.getPlugin().getLogger().info(jm.getPlugin().getJailIO().getLanguageString(LangString.BROADCASTUNJAILING, new String[] { args[0], sender.getName() })); | 				jm.getPlugin().getLogger().info(jm.getPlugin().getJailIO().getLanguageString(LangString.BROADCASTUNJAILING, new String[] { args[0], sender.getName() })); | ||||||
| 			} | 			} | ||||||
| 		}else { | 		}else { | ||||||
|   | |||||||
| @@ -6,6 +6,7 @@ import com.graywolf336.jail.JailManager; | |||||||
| import com.graywolf336.jail.command.Command; | import com.graywolf336.jail.command.Command; | ||||||
| import com.graywolf336.jail.command.CommandInfo; | import com.graywolf336.jail.command.CommandInfo; | ||||||
| import com.graywolf336.jail.enums.LangString; | import com.graywolf336.jail.enums.LangString; | ||||||
|  | import com.graywolf336.jail.enums.Settings; | ||||||
|  |  | ||||||
| @CommandInfo( | @CommandInfo( | ||||||
| 		maxArgs = 0, | 		maxArgs = 0, | ||||||
| @@ -17,12 +18,16 @@ import com.graywolf336.jail.enums.LangString; | |||||||
| 	) | 	) | ||||||
| public class JailStickCommand implements Command { | public class JailStickCommand implements Command { | ||||||
| 	public boolean execute(JailManager jm, CommandSender sender, String... args) throws Exception { | 	public boolean execute(JailManager jm, CommandSender sender, String... args) throws Exception { | ||||||
| 		boolean using = jm.getPlugin().getJailStickManager().toggleUsingStick(sender.getName()); | 		if(jm.getPlugin().getConfig().getBoolean(Settings.JAILSTICKENABLED.getPath())) { | ||||||
| 		 | 			boolean using = jm.getPlugin().getJailStickManager().toggleUsingStick(sender.getName()); | ||||||
| 		if(using) { | 			 | ||||||
| 			sender.sendMessage(jm.getPlugin().getJailIO().getLanguageString(LangString.JAILSTICKENABLED)); | 			if(using) { | ||||||
|  | 				sender.sendMessage(jm.getPlugin().getJailIO().getLanguageString(LangString.JAILSTICKENABLED)); | ||||||
|  | 			}else { | ||||||
|  | 				sender.sendMessage(jm.getPlugin().getJailIO().getLanguageString(LangString.JAILSTICKDISABLED)); | ||||||
|  | 			} | ||||||
| 		}else { | 		}else { | ||||||
| 			sender.sendMessage(jm.getPlugin().getJailIO().getLanguageString(LangString.JAILSTICKDISABLED)); | 			sender.sendMessage(jm.getPlugin().getJailIO().getLanguageString(LangString.JAILSTICKUSAGEDISABLED)); | ||||||
| 		} | 		} | ||||||
| 		 | 		 | ||||||
| 		return true; | 		return true; | ||||||
|   | |||||||
| @@ -128,6 +128,8 @@ public enum LangString { | |||||||
| 	JAILSTICKDISABLED ("general"), | 	JAILSTICKDISABLED ("general"), | ||||||
| 	/** The message sent whenever a player toggles using jail stick to enabled. */ | 	/** The message sent whenever a player toggles using jail stick to enabled. */ | ||||||
| 	JAILSTICKENABLED ("general"), | 	JAILSTICKENABLED ("general"), | ||||||
|  | 	/** The message sent whenever a player tries to toggle using jail stick but the config has it disabled. */ | ||||||
|  | 	JAILSTICKUSAGEDISABLED ("general"), | ||||||
| 	/** Message sent when doing something that requires a cell but the given name of a cell doesn't exist. */ | 	/** Message sent when doing something that requires a cell but the given name of a cell doesn't exist. */ | ||||||
| 	NOCELL ("general"), | 	NOCELL ("general"), | ||||||
| 	/** Message sent when needing a cell or something and there are no cells. */ | 	/** Message sent when needing a cell or something and there are no cells. */ | ||||||
|   | |||||||
| @@ -26,18 +26,20 @@ public enum Settings { | |||||||
| 	FOODCONTROLMAX("jailing.during.foodControlMax"), | 	FOODCONTROLMAX("jailing.during.foodControlMax"), | ||||||
| 	FOODCONTROLMIN("jailing.during.foodControlMin"), | 	FOODCONTROLMIN("jailing.during.foodControlMin"), | ||||||
| 	IGNORESLEEPINGSTATE("jailing.during.ignoreSleeping"), | 	IGNORESLEEPINGSTATE("jailing.during.ignoreSleeping"), | ||||||
|  | 	JAILSTICKENABLED("jailstick.enabled"), | ||||||
|  | 	JAILSTICKSTICKS("jailstick.sticks"), | ||||||
| 	JAILDEFAULTTIME("jailing.jail.defaultTime"), | 	JAILDEFAULTTIME("jailing.jail.defaultTime"), | ||||||
| 	JAILEDGAMEMODE("jailing.jail.gameMode"), | 	JAILEDGAMEMODE("jailing.jail.gameMode"), | ||||||
| 	JAILEDSTOREINVENTORY("jailing.jail.storeInventory"), | 	JAILEDSTOREINVENTORY("jailing.jail.storeInventory"), | ||||||
| 	LOGJAILING("jailing.jail.logToConsole"), | 	LOGJAILINGTOCONSOLE("jailing.jail.logToConsole"), | ||||||
| 	MAXAFKTIME("jailing.during.maxAFKTime"), | 	MAXAFKTIME("jailing.during.maxAFKTime"), | ||||||
| 	MOVEPENALTY("jailing.during.movePenalty"), | 	MOVEPENALTY("jailing.during.movePenalty"), | ||||||
| 	MOVEPROTECTION("jailing.during.moveProtection"), | 	MOVEPROTECTION("jailing.during.moveProtection"), | ||||||
| 	OPENCHEST("jailing.during.openChest"), |  | ||||||
| 	PREVENTINTERACTIONBLOCKS("jailing.during.preventInteractionBlocks"), | 	PREVENTINTERACTIONBLOCKS("jailing.during.preventInteractionBlocks"), | ||||||
| 	PREVENTINTERACTIONBLOCKSPENALTY("jailing.during.preventInteractionBlocksPenalty"), | 	PREVENTINTERACTIONBLOCKSPENALTY("jailing.during.preventInteractionBlocksPenalty"), | ||||||
| 	PREVENTINTERACTIONITEMS("jailing.during.preventInteractionItems"), | 	PREVENTINTERACTIONITEMS("jailing.during.preventInteractionItems"), | ||||||
| 	PREVENTINTERACTIONITEMSPENALTY("jailing.during.preventInteractionItemsPenalty"), | 	PREVENTINTERACTIONITEMSPENALTY("jailing.during.preventInteractionItemsPenalty"), | ||||||
|  | 	PRISONEROPENCHEST("jailing.during.openChest"), | ||||||
| 	RECIEVEMESSAGES("jailing.during.recieveMessages"), | 	RECIEVEMESSAGES("jailing.during.recieveMessages"), | ||||||
| 	RELEASETOPREVIOUSPOSITION("jailing.release.backToPreviousPosition"), | 	RELEASETOPREVIOUSPOSITION("jailing.release.backToPreviousPosition"), | ||||||
| 	RESTOREPREVIOUSGAMEMODE("jailing.release.restorePreviousGameMode"), | 	RESTOREPREVIOUSGAMEMODE("jailing.release.restorePreviousGameMode"), | ||||||
|   | |||||||
							
								
								
									
										380
									
								
								src/main/java/com/graywolf336/jail/legacy/LegacyManager.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										380
									
								
								src/main/java/com/graywolf336/jail/legacy/LegacyManager.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,380 @@ | |||||||
|  | package com.graywolf336.jail.legacy; | ||||||
|  |  | ||||||
|  | import java.io.File; | ||||||
|  | import java.io.FileNotFoundException; | ||||||
|  | import java.io.IOException; | ||||||
|  | import java.util.LinkedList; | ||||||
|  | import java.util.List; | ||||||
|  |  | ||||||
|  | import org.bukkit.Material; | ||||||
|  | import org.bukkit.configuration.InvalidConfigurationException; | ||||||
|  | import org.bukkit.configuration.file.FileConfiguration; | ||||||
|  | import org.bukkit.configuration.file.YamlConfiguration; | ||||||
|  |  | ||||||
|  | import com.graywolf336.jail.JailMain; | ||||||
|  | import com.graywolf336.jail.enums.Settings; | ||||||
|  |  | ||||||
|  | /** | ||||||
|  |  * Manages the old data from Jail 2. | ||||||
|  |  *  | ||||||
|  |  * @author graywolf336 | ||||||
|  |  * @since 3.0.0 | ||||||
|  |  * @version 1.0.0 | ||||||
|  |  */ | ||||||
|  | public class LegacyManager { | ||||||
|  | 	private JailMain pl; | ||||||
|  | 	private YamlConfiguration global; | ||||||
|  | 	 | ||||||
|  | 	public LegacyManager(JailMain plugin) { | ||||||
|  | 		this.pl = plugin; | ||||||
|  | 	} | ||||||
|  | 	 | ||||||
|  | 	/** Returns true/false if the old config, global.yml, exists and needs to be converted. */ | ||||||
|  | 	public boolean doWeNeedToConvert() { | ||||||
|  | 		File f = new File(pl.getDataFolder(), "global.yml"); | ||||||
|  | 		 | ||||||
|  | 		return f.exists(); | ||||||
|  | 	} | ||||||
|  | 	 | ||||||
|  | 	public boolean loadOldData() { | ||||||
|  | 		File f = new File(pl.getDataFolder(), "global.yml"); | ||||||
|  | 		 | ||||||
|  | 		if(f.exists()) { | ||||||
|  | 			global = new YamlConfiguration(); | ||||||
|  | 			try { | ||||||
|  | 				global.load(f); | ||||||
|  | 			} catch (FileNotFoundException e) { | ||||||
|  | 				//e.printStackTrace(); | ||||||
|  | 				pl.getLogger().severe("Unable to load the old global config, file not found."); | ||||||
|  | 			} catch (IOException e) { | ||||||
|  | 				//e.printStackTrace(); | ||||||
|  | 				pl.getLogger().severe("Unable to load the old global config: " + e.getMessage()); | ||||||
|  | 			} catch (InvalidConfigurationException e) { | ||||||
|  | 				//e.printStackTrace(); | ||||||
|  | 				pl.getLogger().severe("Unable to load the old global config: " + e.getMessage()); | ||||||
|  | 			}finally { | ||||||
|  | 				 | ||||||
|  | 			} | ||||||
|  | 		}else { | ||||||
|  | 			pl.debug("The old config file, global.yml, was not found so not laoding anything."); | ||||||
|  | 			return false; | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
|  | 		try { | ||||||
|  | 			loadOldConfig(); | ||||||
|  | 		}catch (Exception e) { | ||||||
|  | 			pl.getLogger().severe("Failed to load the old configuration for some reason."); | ||||||
|  | 			return false; | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
|  | 		return false; | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	@SuppressWarnings("deprecation") | ||||||
|  | 	private void loadOldConfig() { | ||||||
|  | 		FileConfiguration c = pl.getConfig(); | ||||||
|  | 		 | ||||||
|  | 		int count = 0; | ||||||
|  | 		for(OldSetting s : OldSetting.values()) { | ||||||
|  | 			switch(s) { | ||||||
|  | 				case Debug: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.DEBUG.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.DEBUG.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case BroadcastJailMessage: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.BROADCASTJAILING.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.BROADCASTJAILING.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case AllowUpdateNotifications: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.UPDATENOTIFICATIONS.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.UPDATENOTIFICATIONS.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case ExecutedCommandsOnJail: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.COMMANDSONJAIL.getPath(), OldSettings.getGlobalList(global, s)); | ||||||
|  | 						pl.debug(Settings.COMMANDSONJAIL.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case ExecutedCommandsOnRelease: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.COMMANDSONRELEASE.getPath(), OldSettings.getGlobalList(global, s)); | ||||||
|  | 						pl.debug(Settings.COMMANDSONRELEASE.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case AutomaticMute: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.AUTOMATICMUTE.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.AUTOMATICMUTE.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case StoreInventory: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.JAILEDSTOREINVENTORY.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.JAILEDSTOREINVENTORY.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case CanPrisonerOpenHisChest: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.PRISONEROPENCHEST.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.PRISONEROPENCHEST.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case LogJailingIntoConsole: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.LOGJAILINGTOCONSOLE.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.LOGJAILINGTOCONSOLE.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case CountdownTimeWhenOffline: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.COUNTDOWNTIMEOFFLINE.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.COUNTDOWNTIMEOFFLINE.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case ReleaseBackToPreviousPosition: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.RELEASETOPREVIOUSPOSITION.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.RELEASETOPREVIOUSPOSITION.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case IgnorePrisonersSleepingState: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.IGNORESLEEPINGSTATE.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.IGNORESLEEPINGSTATE.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case TeleportPrisonerOnRelease: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.TELEPORTONRELEASE.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.TELEPORTONRELEASE.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case DefaultJailTime: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.JAILDEFAULTTIME.getPath(), OldSettings.getGlobalInt(global, s)); | ||||||
|  | 						pl.debug(Settings.JAILDEFAULTTIME.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case UseBukkitSchedulerTimer: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.USEBUKKITTIMER.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.USEBUKKITTIMER.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case EnableJailStick: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.JAILSTICKENABLED.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.JAILSTICKENABLED.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case JailStickParameters: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						LinkedList<String> sticks = new LinkedList<String>(); | ||||||
|  | 						for (String i : OldSettings.getGlobalString(global, s).split(";")) { | ||||||
|  | 							String[] info = i.split(","); | ||||||
|  | 							//item id,range,time,jail name,reason | ||||||
|  | 							Material m = Material.getMaterial(Integer.valueOf(info[0]).intValue()); | ||||||
|  | 							 | ||||||
|  | 							//item name,time,jail name,reason | ||||||
|  | 							sticks.push(m.toString().toLowerCase() + "," + info[2] + "," + info[3] + "," + info[4]); | ||||||
|  | 						} | ||||||
|  | 						c.set(Settings.JAILSTICKSTICKS.getPath(), sticks); | ||||||
|  | 						pl.debug(Settings.JAILSTICKSTICKS.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case EnableBlockDestroyProtection: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.BLOCKBREAKPROTECTION.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.BLOCKBREAKPROTECTION.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case BlockDestroyPenalty: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.BLOCKBREAKPENALTY.getPath(), OldSettings.getGlobalInt(global, s)); | ||||||
|  | 						pl.debug(Settings.BLOCKBREAKPENALTY.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case BlockDestroyProtectionExceptions: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						@SuppressWarnings("unchecked") | ||||||
|  | 						List<String> exceptions = (List<String>) OldSettings.getGlobalList(global, s); | ||||||
|  | 						LinkedList<String> whitelist = new LinkedList<String>(); | ||||||
|  | 						for(String e : exceptions) { | ||||||
|  | 							whitelist.add(Material.getMaterial(Integer.valueOf(e).intValue()).toString().toLowerCase()); | ||||||
|  | 						} | ||||||
|  | 						 | ||||||
|  | 						c.set(Settings.BLOCKBREAKWHITELIST.getPath(), whitelist); | ||||||
|  | 						pl.debug(Settings.BLOCKBREAKWHITELIST.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case EnableBlockPlaceProtection: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.BLOCKPLACEPROTECTION.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.BLOCKPLACEPROTECTION.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case BlockPlacePenalty: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.BLOCKPLACEPENALTY.getPath(), OldSettings.getGlobalInt(global, s)); | ||||||
|  | 						pl.debug(Settings.BLOCKPLACEPENALTY.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case BlockPlaceProtectionExceptions: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						@SuppressWarnings("unchecked") | ||||||
|  | 						List<String> exceptions = (List<String>) OldSettings.getGlobalList(global, s); | ||||||
|  | 						LinkedList<String> whitelist = new LinkedList<String>(); | ||||||
|  | 						for(String e : exceptions) { | ||||||
|  | 							whitelist.add(Material.getMaterial(Integer.valueOf(e).intValue()).toString().toLowerCase()); | ||||||
|  | 						} | ||||||
|  | 						 | ||||||
|  | 						c.set(Settings.BLOCKPLACEWHITELIST.getPath(), whitelist); | ||||||
|  | 						pl.debug(Settings.BLOCKPLACEWHITELIST.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case EnablePlayerMoveProtection: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.MOVEPROTECTION.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.MOVEPROTECTION.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case PlayerMoveProtectionPenalty: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.MOVEPENALTY.getPath(), OldSettings.getGlobalInt(global, s)); | ||||||
|  | 						pl.debug(Settings.MOVEPENALTY.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case WhitelistedCommands: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.COMMANDWHITELIST.getPath(), OldSettings.getGlobalList(global, s)); | ||||||
|  | 						pl.debug(Settings.COMMANDWHITELIST.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case CommandProtectionPenalty: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.COMMANDPENALTY.getPath(), OldSettings.getGlobalInt(global, s)); | ||||||
|  | 						pl.debug(Settings.COMMANDPENALTY.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case InteractionPenalty: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.PREVENTINTERACTIONITEMSPENALTY.getPath(), OldSettings.getGlobalInt(global, s)); | ||||||
|  | 						pl.debug(Settings.PREVENTINTERACTIONITEMSPENALTY.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case EnableExplosionProtection: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.EXPLOSIONPROTECTION.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.EXPLOSIONPROTECTION.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case EnableFoodControl: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.FOODCONTROL.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.FOODCONTROL.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case FoodControlMinimumFood: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.FOODCONTROLMIN.getPath(), OldSettings.getGlobalInt(global, s)); | ||||||
|  | 						pl.debug(Settings.FOODCONTROLMIN.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case FoodControlMaximumFood: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.FOODCONTROLMAX.getPath(), OldSettings.getGlobalInt(global, s)); | ||||||
|  | 						pl.debug(Settings.FOODCONTROLMAX.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case PrisonersRecieveMessages: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set(Settings.RECIEVEMESSAGES.getPath(), OldSettings.getGlobalBoolean(global, s)); | ||||||
|  | 						pl.debug(Settings.RECIEVEMESSAGES.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case UseMySQL: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set("storage.type", OldSettings.getGlobalBoolean(global, s) ? "mysql" : "sqlite"); | ||||||
|  | 						pl.debug(Settings.RECIEVEMESSAGES.getPath() + " <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case MySQLConn: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						//jdbc:mysql://localhost:3306/minecraft | ||||||
|  | 						String con = OldSettings.getGlobalString(global, s); | ||||||
|  | 						String a = con.split("//")[1]; | ||||||
|  | 						//localhost 3306/minecraft | ||||||
|  | 						String[] b1 = a.split(":"); | ||||||
|  | 						//3306 minecraft | ||||||
|  | 						String[] b2 = b1[1].split("/"); | ||||||
|  | 						 | ||||||
|  | 						c.set("storage.mysql.host", b1[0]); | ||||||
|  | 						c.set("storage.mysql.port", b2[0]); | ||||||
|  | 						c.set("storage.mysql.database", b2[1]); | ||||||
|  | 						 | ||||||
|  | 						pl.debug("storage.mysql <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case MySQLUsername: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set("storage.mysql.username", OldSettings.getGlobalString(global, s)); | ||||||
|  | 						pl.debug("storage.mysql.username <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				case MySQLPassword: | ||||||
|  | 					if(global.contains(s.getString())) { | ||||||
|  | 						c.set("storage.mysql.password", OldSettings.getGlobalString(global, s)); | ||||||
|  | 						pl.debug("storage.mysql.password <-- " + s.getString()); | ||||||
|  | 						count++; | ||||||
|  | 					} | ||||||
|  | 					break; | ||||||
|  | 				default: | ||||||
|  | 					break; | ||||||
|  | 			} | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
|  | 		pl.getLogger().info("Converted " + count + " old config value" + (count == 1 ? "" : "s") + "."); | ||||||
|  | 	} | ||||||
|  | } | ||||||
							
								
								
									
										102
									
								
								src/main/java/com/graywolf336/jail/legacy/OldSetting.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										102
									
								
								src/main/java/com/graywolf336/jail/legacy/OldSetting.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,102 @@ | |||||||
|  | package com.graywolf336.jail.legacy; | ||||||
|  |  | ||||||
|  | import java.util.ArrayList; | ||||||
|  | import java.util.Arrays; | ||||||
|  |  | ||||||
|  | public enum OldSetting { | ||||||
|  | 	 | ||||||
|  | 	Debug("Debug", false),//done | ||||||
|  | 	BroadcastJailMessage("Broadcast Jail Message", false),//done | ||||||
|  | 	AllowUpdateNotifications("AllowUpdateNotifications", true),//done | ||||||
|  | 	ExecutedCommandsOnJail("ExecutedCommandsOnJail", new ArrayList<String>()),//done | ||||||
|  | 	ExecutedCommandsOnRelease("ExecutedCommandsOnRelease", new ArrayList<String>()),//done | ||||||
|  | 	AutomaticMute("AutomaticMute", false),//done | ||||||
|  | 	StoreInventory("StoreInventory", true),//done | ||||||
|  | 	CanPrisonerOpenHisChest("CanPrisonerOpenHisChest", true),//done | ||||||
|  | 	LogJailingIntoConsole("LogJailingIntoConsole", false),//done | ||||||
|  | 	CountdownTimeWhenOffline("CountdownTimeWhenOffline", false),//done | ||||||
|  | 	ReleaseBackToPreviousPosition("ReleaseBackToPreviousPosition", false),//done | ||||||
|  | 	IgnorePrisonersSleepingState("IgnorePrisonersSleepingState", true),//done | ||||||
|  | 	TeleportPrisonerOnRelease("TeleportPrisonerOnRelease", true),//done | ||||||
|  | 	DefaultJailTime("DefaultJailTime", -1),//done | ||||||
|  | 	UseBukkitSchedulerTimer("UseBukkitSchedulerTimer", true),//done | ||||||
|  | 	JailCheckPrisonersPerPage("JailCheckPrisonersPerPage", 15),//TODO | ||||||
|  | 	 | ||||||
|  | 	//JailStick | ||||||
|  | 	EnableJailStick("EnableJailStick", false),//done | ||||||
|  | 	JailStickParameters("JailStickParameters", "280,5,10,,police;50,5,20,,admin"),//done | ||||||
|  | 	 | ||||||
|  | 	//Protections | ||||||
|  | 	EnableBlockDestroyProtection("Protections.EnableBlockDestroyProtection", true),//done | ||||||
|  | 	BlockDestroyPenalty("Protections.BlockDestroyPenalty", 15),//done | ||||||
|  | 	BlockDestroyProtectionExceptions("Protections.BlockDestroyProtectionExceptions", Arrays.asList(new String[]{"59"})),//done | ||||||
|  | 	EnableBlockPlaceProtection("Protections.EnableBlockPlaceProtection", true),//done | ||||||
|  | 	BlockPlacePenalty("Protections.BlockPlacePenalty", 10),//done | ||||||
|  | 	BlockPlaceProtectionExceptions("Protections.BlockPlaceProtectionExceptions", Arrays.asList(new String[]{"59"})),//done | ||||||
|  | 	EnablePlayerMoveProtection("Protections.EnablePlayerMoveProtection", true),//done | ||||||
|  | 	PlayerMoveProtectionPenalty("Protections.PlayerMoveProtectionPenalty", 30),//done | ||||||
|  | 	PlayerMoveProtectionAction("Protections.PlayerMoveProtectionAction", "teleport"),//TODO | ||||||
|  | 	WhitelistedCommands("Protections.WhitelistedCommands", new ArrayList<String>()),//done | ||||||
|  | 	CommandProtectionPenalty("Protections.CommandProtectionPenalty", 10),//done | ||||||
|  | 	InteractionPenalty("Protections.InteractionPenalty", 10),//done | ||||||
|  | 	EnableExplosionProtection("Protections.EnableExplosionProtection", true),//done | ||||||
|  | 	EnablePVPProtection("Protections.EnablePVPProtection", true),//TODO: ??? I haven't even tested this out!!!! | ||||||
|  | 	EnableChangingPermissions("Protections.EnableChangingPermissions", false),//TODO | ||||||
|  | 	PrisonersPermissionsGroups("Protections.PrisonersPermissionsGroups", Arrays.asList("prisoners")),//TODO | ||||||
|  | 	RestorePermissionsToEscapedPrisoners("Protections.RestorePermissionsToEscapedPrisoners", true),//TODO | ||||||
|  | 	EnableFoodControl("Protections.EnableFoodControl", true),//done | ||||||
|  | 	FoodControlMinimumFood("Protections.FoodControlMinimumFood", 10),//done | ||||||
|  | 	FoodControlMaximumFood("Protections.FoodControlMaximumFood", 20),//done | ||||||
|  | 	PrisonersRecieveMessages("Protections.PlayerRecievesMessages", true), //done | ||||||
|  | 	 | ||||||
|  | 	//JailPay | ||||||
|  | 	PricePerMinute("JailPay.PricePerMinute", 10),//TODO | ||||||
|  | 	PriceForInfiniteJail("JailPay.PriceForInfiniteJail", 9999),//TODO | ||||||
|  | 	JailPayCurrency("JailPay.Currency", 0),//TODO | ||||||
|  | 	 | ||||||
|  | 	//Guards | ||||||
|  | 	GuardHealth("Guards.GuardHealth", 8),//TODO | ||||||
|  | 	GuardArmor("Guards.GuardArmor", 0),//TODO | ||||||
|  | 	GuardDamage("Guards.GuardDamage", 2),//TODO | ||||||
|  | 	NumbefOfGuards("Guards.NumberOfGuards", 3),//TODO | ||||||
|  | 	GuardInvincibility("Guards.GuardInvincibility", false),//TODO | ||||||
|  | 	GuardAttackSpeedPercent("Guards.GuardAttackSpeedPercent", 100),//TODO | ||||||
|  | 	RespawnGuards("Guards.RespawnGuards", true),//TODO | ||||||
|  | 	GuardTeleportDistance("Guards.GuardTeleportDistance", 10),//TODO | ||||||
|  | 	GuardTypes("Guards.GuardTypes", Arrays.asList(new String[] { "Zombie", "Silverfish" })),//TODO | ||||||
|  |  | ||||||
|  | 	//Database | ||||||
|  | 	UseMySQL("Database.UseMySQL", false),//done | ||||||
|  | 	MySQLConn("Database.MySQLConn", "jdbc:mysql://localhost:3306/minecraft"),//done | ||||||
|  | 	MySQLUsername("Database.MySQLUSername", "root"),//done | ||||||
|  | 	MySQLPassword("Database.MySQLPassword", "password"),//done | ||||||
|  |  | ||||||
|  | 	//Jail Vote | ||||||
|  | 	VoteJailEnabled("Jail Vote.Enabled", true),//TODO | ||||||
|  | 	VoteJailTime("Jail Vote.Time", 5),//TODO | ||||||
|  | 	VoteJailReason("Jail Vote.Reason", "Jailed by players"),//TODO | ||||||
|  | 	VoteJailVoteTime("Jail Vote.Vote Time", 60),//TODO | ||||||
|  | 	 | ||||||
|  | 	//Jail swearing | ||||||
|  |     EnableJailSwear("Jail Swear.Enabled", false),//TODO | ||||||
|  |     JailSwearTime("Jail Swear.Time", 10),//TODO | ||||||
|  |     BannedWords("Jail Swear.Banned Words", Arrays.asList(new String[] {"shit", "crap", "fuck", "cunt"}));//TODO | ||||||
|  |  | ||||||
|  | 	private String name; | ||||||
|  | 	private Object def; | ||||||
|  | 	 | ||||||
|  | 	private OldSetting(String Name, Object Def) { | ||||||
|  | 		name = Name; | ||||||
|  | 		def = Def; | ||||||
|  | 	} | ||||||
|  | 	 | ||||||
|  | 	/** The string of the node the value is stored at in the config. */ | ||||||
|  | 	public String getString() { | ||||||
|  | 		return name; | ||||||
|  | 	} | ||||||
|  | 	 | ||||||
|  | 	/** The default value for this config. */ | ||||||
|  | 	public Object getDefault() { | ||||||
|  | 		return def; | ||||||
|  | 	} | ||||||
|  | } | ||||||
							
								
								
									
										33
									
								
								src/main/java/com/graywolf336/jail/legacy/OldSettings.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								src/main/java/com/graywolf336/jail/legacy/OldSettings.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | |||||||
|  | package com.graywolf336.jail.legacy; | ||||||
|  |  | ||||||
|  | import java.util.List; | ||||||
|  |  | ||||||
|  | import org.bukkit.configuration.file.YamlConfiguration; | ||||||
|  |  | ||||||
|  | public class OldSettings { | ||||||
|  | 	 | ||||||
|  | 	public static Object getGlobalProperty(YamlConfiguration config, OldSetting setting) { | ||||||
|  | 		Object property = config.get(setting.getString()); | ||||||
|  | 		if (property == null) { | ||||||
|  | 			property = setting.getDefault(); | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
|  | 		return property; | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	public static Boolean getGlobalBoolean(YamlConfiguration config, OldSetting setting) { | ||||||
|  | 		return 	(Boolean) getGlobalProperty(config, setting); | ||||||
|  | 	} | ||||||
|  | 	 | ||||||
|  | 	public static Integer getGlobalInt(YamlConfiguration config, OldSetting setting) { | ||||||
|  | 		return 	(Integer) getGlobalProperty(config, setting); | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	public static String getGlobalString(YamlConfiguration config, OldSetting setting) { | ||||||
|  | 		return 	(String) getGlobalProperty(config, setting); | ||||||
|  | 	} | ||||||
|  | 	 | ||||||
|  | 	public static List<?> getGlobalList(YamlConfiguration config, OldSetting setting) { | ||||||
|  | 		return 	(List<?>) getGlobalProperty(config, setting); | ||||||
|  | 	} | ||||||
|  | } | ||||||
| @@ -170,7 +170,7 @@ public class ProtectionListener implements Listener { | |||||||
| 			if(event.getAction() == Action.RIGHT_CLICK_BLOCK && event.getClickedBlock().getType() == Material.CHEST) { | 			if(event.getAction() == Action.RIGHT_CLICK_BLOCK && event.getClickedBlock().getType() == Material.CHEST) { | ||||||
| 				//Let's get the cell the player is in, then check if it is null or not. | 				//Let's get the cell the player is in, then check if it is null or not. | ||||||
| 				if(pl.getJailManager().getJailPlayerIsIn(event.getPlayer().getName()).isJailedInACell(event.getPlayer().getName())) { | 				if(pl.getJailManager().getJailPlayerIsIn(event.getPlayer().getName()).isJailedInACell(event.getPlayer().getName())) { | ||||||
| 					if(pl.getConfig().getBoolean(Settings.OPENCHEST.getPath())) { | 					if(pl.getConfig().getBoolean(Settings.PRISONEROPENCHEST.getPath())) { | ||||||
| 						//The prisoner is in a cell, so let's check if it is a couple chest. | 						//The prisoner is in a cell, so let's check if it is a couple chest. | ||||||
| 						Material bpos1 = event.getClickedBlock().getLocation().add(-1, 0, 0).getBlock().getType(); | 						Material bpos1 = event.getClickedBlock().getLocation().add(-1, 0, 0).getBlock().getType(); | ||||||
| 					    Material bpos2 = event.getClickedBlock().getLocation().add(+1, 0, 0).getBlock().getType(); | 					    Material bpos2 = event.getClickedBlock().getLocation().add(+1, 0, 0).getBlock().getType(); | ||||||
|   | |||||||
| @@ -63,4 +63,6 @@ jailing: | |||||||
| jails: | jails: | ||||||
|   endermenProtection: true |   endermenProtection: true | ||||||
|   explosionProtection: true |   explosionProtection: true | ||||||
| jailstick: ["stick,30,,Running away"] | jailstick: | ||||||
|  |   enabled: true | ||||||
|  |   sticks: ["stick,30,,Running away"] | ||||||
| @@ -21,6 +21,7 @@ language: | |||||||
|     jailremoved: '&9Jail %0% has been successfully deleted.' |     jailremoved: '&9Jail %0% has been successfully deleted.' | ||||||
|     jailstickdisabled: '&3Jail stick usage: &cdisabled' |     jailstickdisabled: '&3Jail stick usage: &cdisabled' | ||||||
|     jailstickenabled: '&3Jail stick usage: &aenabled' |     jailstickenabled: '&3Jail stick usage: &aenabled' | ||||||
|  |     jailstickusagedisabled: '&cThe usage of Jail Sticks has been disabled by the Administrator.' | ||||||
|     nocell: '&cNo cell found by the name of %0% in the jail %1%.' |     nocell: '&cNo cell found by the name of %0% in the jail %1%.' | ||||||
|     nocells: '&cNo cells found in the jail %0%.' |     nocells: '&cNo cells found in the jail %0%.' | ||||||
|     nojail: '&cNo jail found by the name of %0%.' |     nojail: '&cNo jail found by the name of %0%.' | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 graywolf336
					graywolf336