mirror of
				https://github.com/IntellectualSites/PlotSquared.git
				synced 2025-10-31 09:33:43 +01:00 
			
		
		
		
	Cleanup
This commit is contained in:
		| @@ -20,8 +20,7 @@ public interface Configuration extends ConfigurationSection { | |||||||
|      * @param value Value to set the default to. |      * @param value Value to set the default to. | ||||||
|      * @throws IllegalArgumentException Thrown if path is null. |      * @throws IllegalArgumentException Thrown if path is null. | ||||||
|      */ |      */ | ||||||
|     @Override |     @Override void addDefault(final String path, final Object value); | ||||||
|     public void addDefault(final String path, final Object value); |  | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Sets the default values of the given paths as provided. |      * Sets the default values of the given paths as provided. | ||||||
| @@ -33,7 +32,7 @@ public interface Configuration extends ConfigurationSection { | |||||||
|      * @param defaults A map of Path->Values to add to defaults. |      * @param defaults A map of Path->Values to add to defaults. | ||||||
|      * @throws IllegalArgumentException Thrown if defaults is null. |      * @throws IllegalArgumentException Thrown if defaults is null. | ||||||
|      */ |      */ | ||||||
|     public void addDefaults(final Map<String, Object> defaults); |     void addDefaults(final Map<String, Object> defaults); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Sets the default values of the given paths as provided. |      * Sets the default values of the given paths as provided. | ||||||
| @@ -50,7 +49,7 @@ public interface Configuration extends ConfigurationSection { | |||||||
|      * @param defaults A configuration holding a list of defaults to copy. |      * @param defaults A configuration holding a list of defaults to copy. | ||||||
|      * @throws IllegalArgumentException Thrown if defaults is null or this. |      * @throws IllegalArgumentException Thrown if defaults is null or this. | ||||||
|      */ |      */ | ||||||
|     public void addDefaults(final Configuration defaults); |     void addDefaults(final Configuration defaults); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Sets the source of all default values for this {@link Configuration}. |      * Sets the source of all default values for this {@link Configuration}. | ||||||
| @@ -61,7 +60,7 @@ public interface Configuration extends ConfigurationSection { | |||||||
|      * @param defaults New source of default values for this configuration. |      * @param defaults New source of default values for this configuration. | ||||||
|      * @throws IllegalArgumentException Thrown if defaults is null or this. |      * @throws IllegalArgumentException Thrown if defaults is null or this. | ||||||
|      */ |      */ | ||||||
|     public void setDefaults(final Configuration defaults); |     void setDefaults(final Configuration defaults); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the source {@link Configuration} for this configuration. |      * Gets the source {@link Configuration} for this configuration. | ||||||
| @@ -72,7 +71,7 @@ public interface Configuration extends ConfigurationSection { | |||||||
|      * |      * | ||||||
|      * @return Configuration source for default values, or null if none exist. |      * @return Configuration source for default values, or null if none exist. | ||||||
|      */ |      */ | ||||||
|     public Configuration getDefaults(); |     Configuration getDefaults(); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the {@link ConfigurationOptions} for this {@link Configuration}. |      * Gets the {@link ConfigurationOptions} for this {@link Configuration}. | ||||||
| @@ -81,5 +80,5 @@ public interface Configuration extends ConfigurationSection { | |||||||
|      * |      * | ||||||
|      * @return Options for this configuration |      * @return Options for this configuration | ||||||
|      */ |      */ | ||||||
|     public ConfigurationOptions options(); |     ConfigurationOptions options(); | ||||||
| } | } | ||||||
|   | |||||||
| @@ -22,7 +22,7 @@ public interface ConfigurationSection { | |||||||
|      *     list. |      *     list. | ||||||
|      * @return Set of keys contained within this ConfigurationSection. |      * @return Set of keys contained within this ConfigurationSection. | ||||||
|      */ |      */ | ||||||
|     public Set<String> getKeys(final boolean deep); |     Set<String> getKeys(final boolean deep); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets a Map containing all keys and their values for this section. |      * Gets a Map containing all keys and their values for this section. | ||||||
| @@ -38,7 +38,7 @@ public interface ConfigurationSection { | |||||||
|      *     list. |      *     list. | ||||||
|      * @return Map of keys and values of this section. |      * @return Map of keys and values of this section. | ||||||
|      */ |      */ | ||||||
|     public Map<String, Object> getValues(final boolean deep); |     Map<String, Object> getValues(final boolean deep); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Checks if this {@link ConfigurationSection} contains the given path. |      * Checks if this {@link ConfigurationSection} contains the given path. | ||||||
| @@ -51,7 +51,7 @@ public interface ConfigurationSection { | |||||||
|      *     default or being set. |      *     default or being set. | ||||||
|      * @throws IllegalArgumentException Thrown when path is null. |      * @throws IllegalArgumentException Thrown when path is null. | ||||||
|      */ |      */ | ||||||
|     public boolean contains(final String path); |     boolean contains(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Checks if this {@link ConfigurationSection} has a value set for the |      * Checks if this {@link ConfigurationSection} has a value set for the | ||||||
| @@ -65,7 +65,7 @@ public interface ConfigurationSection { | |||||||
|      *     having a default. |      *     having a default. | ||||||
|      * @throws IllegalArgumentException Thrown when path is null. |      * @throws IllegalArgumentException Thrown when path is null. | ||||||
|      */ |      */ | ||||||
|     public boolean isSet(final String path); |     boolean isSet(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the path of this {@link ConfigurationSection} from its root {@link |      * Gets the path of this {@link ConfigurationSection} from its root {@link | ||||||
| @@ -82,7 +82,7 @@ public interface ConfigurationSection { | |||||||
|      * |      * | ||||||
|      * @return Path of this section relative to its root |      * @return Path of this section relative to its root | ||||||
|      */ |      */ | ||||||
|     public String getCurrentPath(); |     String getCurrentPath(); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the name of this individual {@link ConfigurationSection}, in the |      * Gets the name of this individual {@link ConfigurationSection}, in the | ||||||
| @@ -93,7 +93,7 @@ public interface ConfigurationSection { | |||||||
|      * |      * | ||||||
|      * @return Name of this section |      * @return Name of this section | ||||||
|      */ |      */ | ||||||
|     public String getName(); |     String getName(); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the root {@link Configuration} that contains this {@link |      * Gets the root {@link Configuration} that contains this {@link | ||||||
| @@ -107,7 +107,7 @@ public interface ConfigurationSection { | |||||||
|      * |      * | ||||||
|      * @return Root configuration containing this section. |      * @return Root configuration containing this section. | ||||||
|      */ |      */ | ||||||
|     public Configuration getRoot(); |     Configuration getRoot(); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the parent {@link ConfigurationSection} that directly contains |      * Gets the parent {@link ConfigurationSection} that directly contains | ||||||
| @@ -120,7 +120,7 @@ public interface ConfigurationSection { | |||||||
|      * |      * | ||||||
|      * @return Parent section containing this section. |      * @return Parent section containing this section. | ||||||
|      */ |      */ | ||||||
|     public ConfigurationSection getParent(); |     ConfigurationSection getParent(); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested Object by path. |      * Gets the requested Object by path. | ||||||
| @@ -132,7 +132,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the Object to get. |      * @param path Path of the Object to get. | ||||||
|      * @return Requested Object. |      * @return Requested Object. | ||||||
|      */ |      */ | ||||||
|     public Object get(final String path); |     Object get(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested Object by path, returning a default value if not |      * Gets the requested Object by path, returning a default value if not | ||||||
| @@ -146,7 +146,7 @@ public interface ConfigurationSection { | |||||||
|      * @param def The default value to return if the path is not found. |      * @param def The default value to return if the path is not found. | ||||||
|      * @return Requested Object. |      * @return Requested Object. | ||||||
|      */ |      */ | ||||||
|     public Object get(final String path, final Object def); |     Object get(final String path, final Object def); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Sets the specified path to the given value. |      * Sets the specified path to the given value. | ||||||
| @@ -162,7 +162,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the object to set. |      * @param path Path of the object to set. | ||||||
|      * @param value New value to set the path to. |      * @param value New value to set the path to. | ||||||
|      */ |      */ | ||||||
|     public void set(final String path, final Object value); |     void set(final String path, final Object value); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Creates an empty {@link ConfigurationSection} at the specified path. |      * Creates an empty {@link ConfigurationSection} at the specified path. | ||||||
| @@ -174,7 +174,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path to create the section at. |      * @param path Path to create the section at. | ||||||
|      * @return Newly created section |      * @return Newly created section | ||||||
|      */ |      */ | ||||||
|     public ConfigurationSection createSection(final String path); |     ConfigurationSection createSection(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Creates a {@link ConfigurationSection} at the specified path, with |      * Creates a {@link ConfigurationSection} at the specified path, with | ||||||
| @@ -188,7 +188,7 @@ public interface ConfigurationSection { | |||||||
|      * @param map The values to used. |      * @param map The values to used. | ||||||
|      * @return Newly created section |      * @return Newly created section | ||||||
|      */ |      */ | ||||||
|     public ConfigurationSection createSection(final String path, final Map<?, ?> map); |     ConfigurationSection createSection(final String path, final Map<?, ?> map); | ||||||
|      |      | ||||||
|     // Primitives |     // Primitives | ||||||
|     /** |     /** | ||||||
| @@ -201,7 +201,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the String to get. |      * @param path Path of the String to get. | ||||||
|      * @return Requested String. |      * @return Requested String. | ||||||
|      */ |      */ | ||||||
|     public String getString(final String path); |     String getString(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested String by path, returning a default value if not |      * Gets the requested String by path, returning a default value if not | ||||||
| @@ -216,7 +216,7 @@ public interface ConfigurationSection { | |||||||
|      *     not a String. |      *     not a String. | ||||||
|      * @return Requested String. |      * @return Requested String. | ||||||
|      */ |      */ | ||||||
|     public String getString(final String path, final String def); |     String getString(final String path, final String def); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Checks if the specified path is a String. |      * Checks if the specified path is a String. | ||||||
| @@ -229,7 +229,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the String to check. |      * @param path Path of the String to check. | ||||||
|      * @return Whether or not the specified path is a String. |      * @return Whether or not the specified path is a String. | ||||||
|      */ |      */ | ||||||
|     public boolean isString(final String path); |     boolean isString(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested int by path. |      * Gets the requested int by path. | ||||||
| @@ -241,7 +241,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the int to get. |      * @param path Path of the int to get. | ||||||
|      * @return Requested int. |      * @return Requested int. | ||||||
|      */ |      */ | ||||||
|     public int getInt(final String path); |     int getInt(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested int by path, returning a default value if not found. |      * Gets the requested int by path, returning a default value if not found. | ||||||
| @@ -255,7 +255,7 @@ public interface ConfigurationSection { | |||||||
|      *     not an int. |      *     not an int. | ||||||
|      * @return Requested int. |      * @return Requested int. | ||||||
|      */ |      */ | ||||||
|     public int getInt(final String path, final int def); |     int getInt(final String path, final int def); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Checks if the specified path is an int. |      * Checks if the specified path is an int. | ||||||
| @@ -268,7 +268,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the int to check. |      * @param path Path of the int to check. | ||||||
|      * @return Whether or not the specified path is an int. |      * @return Whether or not the specified path is an int. | ||||||
|      */ |      */ | ||||||
|     public boolean isInt(final String path); |     boolean isInt(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested boolean by path. |      * Gets the requested boolean by path. | ||||||
| @@ -280,7 +280,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the boolean to get. |      * @param path Path of the boolean to get. | ||||||
|      * @return Requested boolean. |      * @return Requested boolean. | ||||||
|      */ |      */ | ||||||
|     public boolean getBoolean(final String path); |     boolean getBoolean(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested boolean by path, returning a default value if not |      * Gets the requested boolean by path, returning a default value if not | ||||||
| @@ -295,7 +295,7 @@ public interface ConfigurationSection { | |||||||
|      *     not a boolean. |      *     not a boolean. | ||||||
|      * @return Requested boolean. |      * @return Requested boolean. | ||||||
|      */ |      */ | ||||||
|     public boolean getBoolean(final String path, final boolean def); |     boolean getBoolean(final String path, final boolean def); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Checks if the specified path is a boolean. |      * Checks if the specified path is a boolean. | ||||||
| @@ -308,7 +308,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the boolean to check. |      * @param path Path of the boolean to check. | ||||||
|      * @return Whether or not the specified path is a boolean. |      * @return Whether or not the specified path is a boolean. | ||||||
|      */ |      */ | ||||||
|     public boolean isBoolean(final String path); |     boolean isBoolean(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested double by path. |      * Gets the requested double by path. | ||||||
| @@ -320,7 +320,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the double to get. |      * @param path Path of the double to get. | ||||||
|      * @return Requested double. |      * @return Requested double. | ||||||
|      */ |      */ | ||||||
|     public double getDouble(final String path); |     double getDouble(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested double by path, returning a default value if not |      * Gets the requested double by path, returning a default value if not | ||||||
| @@ -335,7 +335,7 @@ public interface ConfigurationSection { | |||||||
|      *     not a double. |      *     not a double. | ||||||
|      * @return Requested double. |      * @return Requested double. | ||||||
|      */ |      */ | ||||||
|     public double getDouble(final String path, final double def); |     double getDouble(final String path, final double def); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Checks if the specified path is a double. |      * Checks if the specified path is a double. | ||||||
| @@ -348,7 +348,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the double to check. |      * @param path Path of the double to check. | ||||||
|      * @return Whether or not the specified path is a double. |      * @return Whether or not the specified path is a double. | ||||||
|      */ |      */ | ||||||
|     public boolean isDouble(final String path); |     boolean isDouble(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested long by path. |      * Gets the requested long by path. | ||||||
| @@ -360,7 +360,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the long to get. |      * @param path Path of the long to get. | ||||||
|      * @return Requested long. |      * @return Requested long. | ||||||
|      */ |      */ | ||||||
|     public long getLong(final String path); |     long getLong(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested long by path, returning a default value if not |      * Gets the requested long by path, returning a default value if not | ||||||
| @@ -375,7 +375,7 @@ public interface ConfigurationSection { | |||||||
|      *     not a long. |      *     not a long. | ||||||
|      * @return Requested long. |      * @return Requested long. | ||||||
|      */ |      */ | ||||||
|     public long getLong(final String path, final long def); |     long getLong(final String path, final long def); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Checks if the specified path is a long. |      * Checks if the specified path is a long. | ||||||
| @@ -388,7 +388,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the long to check. |      * @param path Path of the long to check. | ||||||
|      * @return Whether or not the specified path is a long. |      * @return Whether or not the specified path is a long. | ||||||
|      */ |      */ | ||||||
|     public boolean isLong(final String path); |     boolean isLong(final String path); | ||||||
|      |      | ||||||
|     // Java |     // Java | ||||||
|     /** |     /** | ||||||
| @@ -401,7 +401,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the List to get. |      * @param path Path of the List to get. | ||||||
|      * @return Requested List. |      * @return Requested List. | ||||||
|      */ |      */ | ||||||
|     public List<?> getList(final String path); |     List<?> getList(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested List by path, returning a default value if not |      * Gets the requested List by path, returning a default value if not | ||||||
| @@ -416,7 +416,7 @@ public interface ConfigurationSection { | |||||||
|      *     not a List. |      *     not a List. | ||||||
|      * @return Requested List. |      * @return Requested List. | ||||||
|      */ |      */ | ||||||
|     public List<?> getList(final String path, final List<?> def); |     List<?> getList(final String path, final List<?> def); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Checks if the specified path is a List. |      * Checks if the specified path is a List. | ||||||
| @@ -429,7 +429,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the List to check. |      * @param path Path of the List to check. | ||||||
|      * @return Whether or not the specified path is a List. |      * @return Whether or not the specified path is a List. | ||||||
|      */ |      */ | ||||||
|     public boolean isList(final String path); |     boolean isList(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested List of String by path. |      * Gets the requested List of String by path. | ||||||
| @@ -444,7 +444,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the List to get. |      * @param path Path of the List to get. | ||||||
|      * @return Requested List of String. |      * @return Requested List of String. | ||||||
|      */ |      */ | ||||||
|     public List<String> getStringList(final String path); |     List<String> getStringList(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested List of Integer by path. |      * Gets the requested List of Integer by path. | ||||||
| @@ -459,7 +459,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the List to get. |      * @param path Path of the List to get. | ||||||
|      * @return Requested List of Integer. |      * @return Requested List of Integer. | ||||||
|      */ |      */ | ||||||
|     public List<Integer> getIntegerList(final String path); |     List<Integer> getIntegerList(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested List of Boolean by path. |      * Gets the requested List of Boolean by path. | ||||||
| @@ -474,7 +474,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the List to get. |      * @param path Path of the List to get. | ||||||
|      * @return Requested List of Boolean. |      * @return Requested List of Boolean. | ||||||
|      */ |      */ | ||||||
|     public List<Boolean> getBooleanList(final String path); |     List<Boolean> getBooleanList(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested List of Double by path. |      * Gets the requested List of Double by path. | ||||||
| @@ -489,7 +489,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the List to get. |      * @param path Path of the List to get. | ||||||
|      * @return Requested List of Double. |      * @return Requested List of Double. | ||||||
|      */ |      */ | ||||||
|     public List<Double> getDoubleList(final String path); |     List<Double> getDoubleList(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested List of Float by path. |      * Gets the requested List of Float by path. | ||||||
| @@ -504,7 +504,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the List to get. |      * @param path Path of the List to get. | ||||||
|      * @return Requested List of Float. |      * @return Requested List of Float. | ||||||
|      */ |      */ | ||||||
|     public List<Float> getFloatList(final String path); |     List<Float> getFloatList(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested List of Long by path. |      * Gets the requested List of Long by path. | ||||||
| @@ -519,7 +519,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the List to get. |      * @param path Path of the List to get. | ||||||
|      * @return Requested List of Long. |      * @return Requested List of Long. | ||||||
|      */ |      */ | ||||||
|     public List<Long> getLongList(final String path); |     List<Long> getLongList(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested List of Byte by path. |      * Gets the requested List of Byte by path. | ||||||
| @@ -534,7 +534,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the List to get. |      * @param path Path of the List to get. | ||||||
|      * @return Requested List of Byte. |      * @return Requested List of Byte. | ||||||
|      */ |      */ | ||||||
|     public List<Byte> getByteList(final String path); |     List<Byte> getByteList(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested List of Character by path. |      * Gets the requested List of Character by path. | ||||||
| @@ -549,7 +549,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the List to get. |      * @param path Path of the List to get. | ||||||
|      * @return Requested List of Character. |      * @return Requested List of Character. | ||||||
|      */ |      */ | ||||||
|     public List<Character> getCharacterList(final String path); |     List<Character> getCharacterList(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested List of Short by path. |      * Gets the requested List of Short by path. | ||||||
| @@ -564,7 +564,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the List to get. |      * @param path Path of the List to get. | ||||||
|      * @return Requested List of Short. |      * @return Requested List of Short. | ||||||
|      */ |      */ | ||||||
|     public List<Short> getShortList(final String path); |     List<Short> getShortList(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested List of Maps by path. |      * Gets the requested List of Maps by path. | ||||||
| @@ -579,7 +579,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the List to get. |      * @param path Path of the List to get. | ||||||
|      * @return Requested List of Maps. |      * @return Requested List of Maps. | ||||||
|      */ |      */ | ||||||
|     public List<Map<?, ?>> getMapList(final String path); |     List<Map<?, ?>> getMapList(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the requested ConfigurationSection by path. |      * Gets the requested ConfigurationSection by path. | ||||||
| @@ -592,7 +592,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the ConfigurationSection to get. |      * @param path Path of the ConfigurationSection to get. | ||||||
|      * @return Requested ConfigurationSection. |      * @return Requested ConfigurationSection. | ||||||
|      */ |      */ | ||||||
|     public ConfigurationSection getConfigurationSection(final String path); |     ConfigurationSection getConfigurationSection(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Checks if the specified path is a ConfigurationSection. |      * Checks if the specified path is a ConfigurationSection. | ||||||
| @@ -606,7 +606,7 @@ public interface ConfigurationSection { | |||||||
|      * @param path Path of the ConfigurationSection to check. |      * @param path Path of the ConfigurationSection to check. | ||||||
|      * @return Whether or not the specified path is a ConfigurationSection. |      * @return Whether or not the specified path is a ConfigurationSection. | ||||||
|      */ |      */ | ||||||
|     public boolean isConfigurationSection(final String path); |     boolean isConfigurationSection(final String path); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Gets the equivalent {@link ConfigurationSection} from the default |      * Gets the equivalent {@link ConfigurationSection} from the default | ||||||
| @@ -618,7 +618,7 @@ public interface ConfigurationSection { | |||||||
|      * |      * | ||||||
|      * @return Equivalent section in root configuration |      * @return Equivalent section in root configuration | ||||||
|      */ |      */ | ||||||
|     public ConfigurationSection getDefaultSection(); |     ConfigurationSection getDefaultSection(); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Sets the default value in the root at the given path as provided. |      * Sets the default value in the root at the given path as provided. | ||||||
| @@ -638,5 +638,5 @@ public interface ConfigurationSection { | |||||||
|      * @param value Value to set the default to. |      * @param value Value to set the default to. | ||||||
|      * @throws IllegalArgumentException Thrown if path is null. |      * @throws IllegalArgumentException Thrown if path is null. | ||||||
|      */ |      */ | ||||||
|     public void addDefault(final String path, final Object value); |     void addDefault(final String path, final Object value); | ||||||
| } | } | ||||||
|   | |||||||
| @@ -10,7 +10,6 @@ import java.io.FileInputStream; | |||||||
| import java.io.FileNotFoundException; | import java.io.FileNotFoundException; | ||||||
| import java.io.FileOutputStream; | import java.io.FileOutputStream; | ||||||
| import java.io.IOException; | import java.io.IOException; | ||||||
| import java.io.InputStream; |  | ||||||
| import java.io.InputStreamReader; | import java.io.InputStreamReader; | ||||||
| import java.io.OutputStreamWriter; | import java.io.OutputStreamWriter; | ||||||
| import java.io.Reader; | import java.io.Reader; | ||||||
| @@ -126,32 +125,7 @@ public abstract class FileConfiguration extends MemoryConfiguration { | |||||||
|          |          | ||||||
|         load(new InputStreamReader(stream, StandardCharsets.UTF_8)); |         load(new InputStreamReader(stream, StandardCharsets.UTF_8)); | ||||||
|     } |     } | ||||||
|      |  | ||||||
|     /** |  | ||||||
|      * Loads this {@link FileConfiguration} from the specified stream. |  | ||||||
|      * <p> |  | ||||||
|      * All the values contained within this configuration will be removed, |  | ||||||
|      * leaving only settings and defaults, and the new values will be loaded |  | ||||||
|      * from the given stream. |  | ||||||
|      * <p> |  | ||||||
|      * |  | ||||||
|      * @param stream Stream to load from |  | ||||||
|      * @throws IOException Thrown when the given file cannot be read. |  | ||||||
|      * @throws InvalidConfigurationException Thrown when the given file is not |  | ||||||
|      *     a valid Configuration. |  | ||||||
|      * @throws IllegalArgumentException Thrown when stream is null. |  | ||||||
|      * @deprecated This does not consider encoding |  | ||||||
|      * @see #load(Reader) |  | ||||||
|      */ |  | ||||||
|     @Deprecated |  | ||||||
|     public void load(final InputStream stream) throws IOException, InvalidConfigurationException { |  | ||||||
|         if (stream == null) { |  | ||||||
|             throw new NullPointerException("Stream cannot be null"); |  | ||||||
|         } |  | ||||||
|          |  | ||||||
|         load(new InputStreamReader(stream, StandardCharsets.UTF_8)); |  | ||||||
|     } |  | ||||||
|      |  | ||||||
|     /** |     /** | ||||||
|      * Loads this {@link FileConfiguration} from the specified reader. |      * Loads this {@link FileConfiguration} from the specified reader. | ||||||
|      * <p> |      * <p> | ||||||
|   | |||||||
| @@ -100,7 +100,6 @@ public class YamlConfiguration extends FileConfiguration { | |||||||
|     } |     } | ||||||
|  |  | ||||||
|     @Override |     @Override | ||||||
|     @SuppressWarnings("deprecation") |  | ||||||
|     public String saveToString() { |     public String saveToString() { | ||||||
|         yamlOptions.setIndent(options().indent()); |         yamlOptions.setIndent(options().indent()); | ||||||
|         yamlOptions.setDefaultFlowStyle(DumperOptions.FlowStyle.BLOCK); |         yamlOptions.setDefaultFlowStyle(DumperOptions.FlowStyle.BLOCK); | ||||||
|   | |||||||
| @@ -1,14 +1,13 @@ | |||||||
| package com.intellectualcrafters.configuration.file; | package com.intellectualcrafters.configuration.file; | ||||||
|  |  | ||||||
| import java.util.LinkedHashMap; | import com.intellectualcrafters.configuration.serialization.ConfigurationSerialization; | ||||||
| import java.util.Map; |  | ||||||
|  |  | ||||||
| import org.yaml.snakeyaml.constructor.SafeConstructor; | import org.yaml.snakeyaml.constructor.SafeConstructor; | ||||||
| import org.yaml.snakeyaml.error.YAMLException; | import org.yaml.snakeyaml.error.YAMLException; | ||||||
| import org.yaml.snakeyaml.nodes.Node; | import org.yaml.snakeyaml.nodes.Node; | ||||||
| import org.yaml.snakeyaml.nodes.Tag; | import org.yaml.snakeyaml.nodes.Tag; | ||||||
|  |  | ||||||
| import com.intellectualcrafters.configuration.serialization.ConfigurationSerialization; | import java.util.LinkedHashMap; | ||||||
|  | import java.util.Map; | ||||||
|  |  | ||||||
| public class YamlConstructor extends SafeConstructor { | public class YamlConstructor extends SafeConstructor { | ||||||
|      |      | ||||||
| @@ -26,7 +25,7 @@ public class YamlConstructor extends SafeConstructor { | |||||||
|             final Map<?, ?> raw = (Map<?, ?>) super.construct(node); |             final Map<?, ?> raw = (Map<?, ?>) super.construct(node); | ||||||
|              |              | ||||||
|             if (raw.containsKey(ConfigurationSerialization.SERIALIZED_TYPE_KEY)) { |             if (raw.containsKey(ConfigurationSerialization.SERIALIZED_TYPE_KEY)) { | ||||||
|                 final Map<String, Object> typed = new LinkedHashMap<String, Object>(raw.size()); |                 final Map<String, Object> typed = new LinkedHashMap<>(raw.size()); | ||||||
|                 for (final Map.Entry<?, ?> entry : raw.entrySet()) { |                 for (final Map.Entry<?, ?> entry : raw.entrySet()) { | ||||||
|                     typed.put(entry.getKey().toString(), entry.getValue()); |                     typed.put(entry.getKey().toString(), entry.getValue()); | ||||||
|                 } |                 } | ||||||
|   | |||||||
| @@ -31,5 +31,5 @@ public interface ConfigurationSerializable { | |||||||
|      * |      * | ||||||
|      * @return Map containing the current state of this class |      * @return Map containing the current state of this class | ||||||
|      */ |      */ | ||||||
|     public Map<String, Object> serialize(); |     Map<String, Object> serialize(); | ||||||
| } | } | ||||||
|   | |||||||
| @@ -18,5 +18,5 @@ public @interface DelegateDeserialization { | |||||||
|      * |      * | ||||||
|      * @return Delegate class |      * @return Delegate class | ||||||
|      */ |      */ | ||||||
|     public Class<? extends ConfigurationSerializable> value(); |     Class<? extends ConfigurationSerializable> value(); | ||||||
| } | } | ||||||
|   | |||||||
| @@ -30,5 +30,5 @@ public @interface SerializableAs { | |||||||
|      * |      * | ||||||
|      * @return Name to serialize the class as. |      * @return Name to serialize the class as. | ||||||
|      */ |      */ | ||||||
|     public String value(); |     String value(); | ||||||
| } | } | ||||||
|   | |||||||
| @@ -20,8 +20,6 @@ | |||||||
| //////////////////////////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||||||
| package com.intellectualcrafters.plot.commands; | package com.intellectualcrafters.plot.commands; | ||||||
|  |  | ||||||
| import java.util.HashSet; |  | ||||||
|  |  | ||||||
| import com.intellectualcrafters.plot.config.C; | import com.intellectualcrafters.plot.config.C; | ||||||
| import com.intellectualcrafters.plot.config.Settings; | import com.intellectualcrafters.plot.config.Settings; | ||||||
| import com.intellectualcrafters.plot.object.Location; | import com.intellectualcrafters.plot.object.Location; | ||||||
| @@ -35,6 +33,8 @@ import com.intellectualcrafters.plot.util.Permissions; | |||||||
| import com.intellectualcrafters.plot.util.TaskManager; | import com.intellectualcrafters.plot.util.TaskManager; | ||||||
| import com.plotsquared.general.commands.CommandDeclaration; | import com.plotsquared.general.commands.CommandDeclaration; | ||||||
|  |  | ||||||
|  | import java.util.HashSet; | ||||||
|  |  | ||||||
| @CommandDeclaration( | @CommandDeclaration( | ||||||
| command = "delete", | command = "delete", | ||||||
| permission = "plots.delete", | permission = "plots.delete", | ||||||
| @@ -85,8 +85,7 @@ public class Delete extends SubCommand { | |||||||
|                 }); |                 }); | ||||||
|                 if (result) { |                 if (result) { | ||||||
|                     plot.addRunning(); |                     plot.addRunning(); | ||||||
|                 } |                 } else { | ||||||
|                 else { |  | ||||||
|                     MainUtil.sendMessage(plr, C.WAIT_FOR_TIMER); |                     MainUtil.sendMessage(plr, C.WAIT_FOR_TIMER); | ||||||
|                 } |                 } | ||||||
|             } |             } | ||||||
|   | |||||||
| @@ -58,7 +58,7 @@ public class Load extends SubCommand { | |||||||
|          |          | ||||||
|         if (args.length != 0) { |         if (args.length != 0) { | ||||||
|             if (args.length == 1) { |             if (args.length == 1) { | ||||||
|                 final List<String> schematics = (List<String>) plr.getMeta("plot_schematics"); |                 final List<String> schematics = plr.getMeta("plot_schematics"); | ||||||
|                 if (schematics == null) { |                 if (schematics == null) { | ||||||
|                     // No schematics found: |                     // No schematics found: | ||||||
|                     MainUtil.sendMessage(plr, C.LOAD_NULL); |                     MainUtil.sendMessage(plr, C.LOAD_NULL); | ||||||
| @@ -113,7 +113,7 @@ public class Load extends SubCommand { | |||||||
|          |          | ||||||
|         // list schematics |         // list schematics | ||||||
|          |          | ||||||
|         final List<String> schematics = (List<String>) plr.getMeta("plot_schematics"); |         final List<String> schematics = plr.getMeta("plot_schematics"); | ||||||
|         if (schematics == null) { |         if (schematics == null) { | ||||||
|             plot.addRunning(); |             plot.addRunning(); | ||||||
|             TaskManager.runTaskAsync(new Runnable() { |             TaskManager.runTaskAsync(new Runnable() { | ||||||
| @@ -136,7 +136,7 @@ public class Load extends SubCommand { | |||||||
|     } |     } | ||||||
|      |      | ||||||
|     public void displaySaves(final PlotPlayer player, final int page) { |     public void displaySaves(final PlotPlayer player, final int page) { | ||||||
|         final List<String> schematics = (List<String>) player.getMeta("plot_schematics"); |         final List<String> schematics = player.getMeta("plot_schematics"); | ||||||
|         for (int i = 0; i < Math.min(schematics.size(), 32); i++) { |         for (int i = 0; i < Math.min(schematics.size(), 32); i++) { | ||||||
|             try { |             try { | ||||||
|                 final String schem = schematics.get(i); |                 final String schem = schematics.get(i); | ||||||
| @@ -165,33 +165,28 @@ public class Load extends SubCommand { | |||||||
|      |      | ||||||
|     public String secToTime(long time) { |     public String secToTime(long time) { | ||||||
|         final StringBuilder toreturn = new StringBuilder(); |         final StringBuilder toreturn = new StringBuilder(); | ||||||
|         int years = 0; |  | ||||||
|         int weeks = 0; |  | ||||||
|         int days = 0; |  | ||||||
|         int hours = 0; |  | ||||||
|         int minutes = 0; |  | ||||||
|         if (time >= 33868800) { |         if (time >= 33868800) { | ||||||
|             years = (int) (time / 33868800); |             int years = (int) (time / 33868800); | ||||||
|             time -= years * 33868800; |             time -= years * 33868800; | ||||||
|             toreturn.append(years + "y "); |             toreturn.append(years + "y "); | ||||||
|         } |         } | ||||||
|         if (time >= 604800) { |         if (time >= 604800) { | ||||||
|             weeks = (int) (time / 604800); |             int weeks = (int) (time / 604800); | ||||||
|             time -= weeks * 604800; |             time -= weeks * 604800; | ||||||
|             toreturn.append(weeks + "w "); |             toreturn.append(weeks + "w "); | ||||||
|         } |         } | ||||||
|         if (time >= 86400) { |         if (time >= 86400) { | ||||||
|             days = (int) (time / 86400); |             int days = (int) (time / 86400); | ||||||
|             time -= days * 86400; |             time -= days * 86400; | ||||||
|             toreturn.append(days + "d "); |             toreturn.append(days + "d "); | ||||||
|         } |         } | ||||||
|         if (time >= 3600) { |         if (time >= 3600) { | ||||||
|             hours = (int) (time / 3600); |             int hours = (int) (time / 3600); | ||||||
|             time -= hours * 3600; |             time -= hours * 3600; | ||||||
|             toreturn.append(hours + "h "); |             toreturn.append(hours + "h "); | ||||||
|         } |         } | ||||||
|         if (time >= 60) { |         if (time >= 60) { | ||||||
|             minutes = (int) (time / 60); |             int minutes = (int) (time / 60); | ||||||
|             time -= minutes * 60; |             time -= minutes * 60; | ||||||
|             toreturn.append(minutes + "m "); |             toreturn.append(minutes + "m "); | ||||||
|         } |         } | ||||||
|   | |||||||
| @@ -20,12 +20,6 @@ | |||||||
| //////////////////////////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||||||
| package com.intellectualcrafters.plot.commands; | package com.intellectualcrafters.plot.commands; | ||||||
|  |  | ||||||
| import java.util.HashMap; |  | ||||||
| import java.util.HashSet; |  | ||||||
| import java.util.Map.Entry; |  | ||||||
| import java.util.Set; |  | ||||||
| import java.util.UUID; |  | ||||||
|  |  | ||||||
| import com.intellectualcrafters.plot.PS; | import com.intellectualcrafters.plot.PS; | ||||||
| import com.intellectualcrafters.plot.config.C; | import com.intellectualcrafters.plot.config.C; | ||||||
| import com.intellectualcrafters.plot.database.DBFunc; | import com.intellectualcrafters.plot.database.DBFunc; | ||||||
| @@ -38,6 +32,11 @@ import com.intellectualcrafters.plot.util.StringMan; | |||||||
| import com.intellectualcrafters.plot.util.UUIDHandler; | import com.intellectualcrafters.plot.util.UUIDHandler; | ||||||
| import com.plotsquared.general.commands.CommandDeclaration; | import com.plotsquared.general.commands.CommandDeclaration; | ||||||
|  |  | ||||||
|  | import java.util.HashMap; | ||||||
|  | import java.util.HashSet; | ||||||
|  | import java.util.Map.Entry; | ||||||
|  | import java.util.UUID; | ||||||
|  |  | ||||||
| @CommandDeclaration( | @CommandDeclaration( | ||||||
| usage = "/plot purge world:<world> area:<area> id:<id> owner:<owner> shared:<shared> unknown:[true|false]", | usage = "/plot purge world:<world> area:<area> id:<id> owner:<owner> shared:<shared> unknown:[true|false]", | ||||||
| command = "purge", | command = "purge", | ||||||
| @@ -115,7 +114,6 @@ public class Purge extends SubCommand { | |||||||
|             } |             } | ||||||
|         } |         } | ||||||
|         final HashSet<Integer> toDelete = new HashSet<>(); |         final HashSet<Integer> toDelete = new HashSet<>(); | ||||||
|         Set<Plot> basePlots = PS.get().getBasePlots(); |  | ||||||
|         for (Plot plot : PS.get().getBasePlots()) { |         for (Plot plot : PS.get().getBasePlots()) { | ||||||
|             if (world != null && !plot.getArea().worldname.equalsIgnoreCase(world)) { |             if (world != null && !plot.getArea().worldname.equalsIgnoreCase(world)) { | ||||||
|                 continue; |                 continue; | ||||||
|   | |||||||
| @@ -20,6 +20,14 @@ | |||||||
| //////////////////////////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||||||
| package com.intellectualcrafters.plot.database; | package com.intellectualcrafters.plot.database; | ||||||
|  |  | ||||||
|  | import com.intellectualcrafters.plot.flag.Flag; | ||||||
|  | import com.intellectualcrafters.plot.object.Plot; | ||||||
|  | import com.intellectualcrafters.plot.object.PlotArea; | ||||||
|  | import com.intellectualcrafters.plot.object.PlotCluster; | ||||||
|  | import com.intellectualcrafters.plot.object.PlotId; | ||||||
|  | import com.intellectualcrafters.plot.object.RunnableVal; | ||||||
|  | import com.intellectualcrafters.plot.object.comment.PlotComment; | ||||||
|  |  | ||||||
| import java.sql.ResultSet; | import java.sql.ResultSet; | ||||||
| import java.sql.ResultSetMetaData; | import java.sql.ResultSetMetaData; | ||||||
| import java.sql.SQLException; | import java.sql.SQLException; | ||||||
| @@ -30,14 +38,6 @@ import java.util.List; | |||||||
| import java.util.Set; | import java.util.Set; | ||||||
| import java.util.UUID; | import java.util.UUID; | ||||||
|  |  | ||||||
| import com.intellectualcrafters.plot.flag.Flag; |  | ||||||
| import com.intellectualcrafters.plot.object.Plot; |  | ||||||
| import com.intellectualcrafters.plot.object.PlotArea; |  | ||||||
| import com.intellectualcrafters.plot.object.PlotCluster; |  | ||||||
| import com.intellectualcrafters.plot.object.PlotId; |  | ||||||
| import com.intellectualcrafters.plot.object.RunnableVal; |  | ||||||
| import com.intellectualcrafters.plot.object.comment.PlotComment; |  | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * Database Functions |  * Database Functions | ||||||
|  *  - These functions do not update the local plot objects and only make changes to the DB |  *  - These functions do not update the local plot objects and only make changes to the DB | ||||||
| @@ -68,7 +68,6 @@ public class DBFunc { | |||||||
|      * @param r |      * @param r | ||||||
|      * @param name |      * @param name | ||||||
|      * @return |      * @return | ||||||
|      * @throws SQLException |  | ||||||
|      */ |      */ | ||||||
|     public static boolean hasColumn(final ResultSet r, final String name) { |     public static boolean hasColumn(final ResultSet r, final String name) { | ||||||
|         try { |         try { | ||||||
| @@ -365,7 +364,6 @@ public class DBFunc { | |||||||
|     } |     } | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * @param world |  | ||||||
|      * @param cluster |      * @param cluster | ||||||
|      */ |      */ | ||||||
|     public static void createCluster(final PlotCluster cluster) { |     public static void createCluster(final PlotCluster cluster) { | ||||||
| @@ -374,7 +372,8 @@ public class DBFunc { | |||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * @param current |      * @param current | ||||||
|      * @param resize |      * @param min | ||||||
|  |      * @param max | ||||||
|      */ |      */ | ||||||
|     public static void resizeCluster(final PlotCluster current, final PlotId min, PlotId max) { |     public static void resizeCluster(final PlotCluster current, final PlotId min, PlotId max) { | ||||||
|         dbManager.resizeCluster(current, min, max); |         dbManager.resizeCluster(current, min, max); | ||||||
|   | |||||||
| @@ -20,6 +20,23 @@ | |||||||
| //////////////////////////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||||||
| package com.intellectualcrafters.plot.database; | package com.intellectualcrafters.plot.database; | ||||||
|  |  | ||||||
|  | import com.intellectualcrafters.configuration.ConfigurationSection; | ||||||
|  | import com.intellectualcrafters.plot.PS; | ||||||
|  | import com.intellectualcrafters.plot.config.Settings; | ||||||
|  | import com.intellectualcrafters.plot.flag.Flag; | ||||||
|  | import com.intellectualcrafters.plot.flag.FlagManager; | ||||||
|  | import com.intellectualcrafters.plot.object.BlockLoc; | ||||||
|  | import com.intellectualcrafters.plot.object.Plot; | ||||||
|  | import com.intellectualcrafters.plot.object.PlotArea; | ||||||
|  | import com.intellectualcrafters.plot.object.PlotCluster; | ||||||
|  | import com.intellectualcrafters.plot.object.PlotId; | ||||||
|  | import com.intellectualcrafters.plot.object.PlotSettings; | ||||||
|  | import com.intellectualcrafters.plot.object.RunnableVal; | ||||||
|  | import com.intellectualcrafters.plot.object.comment.PlotComment; | ||||||
|  | import com.intellectualcrafters.plot.util.MainUtil; | ||||||
|  | import com.intellectualcrafters.plot.util.StringMan; | ||||||
|  | import com.intellectualcrafters.plot.util.TaskManager; | ||||||
|  |  | ||||||
| import java.sql.Blob; | import java.sql.Blob; | ||||||
| import java.sql.Connection; | import java.sql.Connection; | ||||||
| import java.sql.DatabaseMetaData; | import java.sql.DatabaseMetaData; | ||||||
| @@ -44,23 +61,6 @@ import java.util.concurrent.ConcurrentHashMap; | |||||||
| import java.util.concurrent.ConcurrentLinkedQueue; | import java.util.concurrent.ConcurrentLinkedQueue; | ||||||
| import java.util.concurrent.atomic.AtomicInteger; | import java.util.concurrent.atomic.AtomicInteger; | ||||||
|  |  | ||||||
| import com.intellectualcrafters.configuration.ConfigurationSection; |  | ||||||
| import com.intellectualcrafters.plot.PS; |  | ||||||
| import com.intellectualcrafters.plot.config.Settings; |  | ||||||
| import com.intellectualcrafters.plot.flag.Flag; |  | ||||||
| import com.intellectualcrafters.plot.flag.FlagManager; |  | ||||||
| import com.intellectualcrafters.plot.object.BlockLoc; |  | ||||||
| import com.intellectualcrafters.plot.object.Plot; |  | ||||||
| import com.intellectualcrafters.plot.object.PlotArea; |  | ||||||
| import com.intellectualcrafters.plot.object.PlotCluster; |  | ||||||
| import com.intellectualcrafters.plot.object.PlotId; |  | ||||||
| import com.intellectualcrafters.plot.object.PlotSettings; |  | ||||||
| import com.intellectualcrafters.plot.object.RunnableVal; |  | ||||||
| import com.intellectualcrafters.plot.object.comment.PlotComment; |  | ||||||
| import com.intellectualcrafters.plot.util.MainUtil; |  | ||||||
| import com.intellectualcrafters.plot.util.StringMan; |  | ||||||
| import com.intellectualcrafters.plot.util.TaskManager; |  | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  |  | ||||||
|  */ |  */ | ||||||
| @@ -477,8 +477,7 @@ public class SQLManager implements AbstractDB { | |||||||
|                                 final ArrayList<UUIDPair> denied = new ArrayList<>(); |                                 final ArrayList<UUIDPair> denied = new ArrayList<>(); | ||||||
|  |  | ||||||
|                                 // Populating structures |                                 // Populating structures | ||||||
|                                 final PreparedStatement stmt = connection.prepareStatement(GET_ALL_PLOTS); |                                 try (PreparedStatement stmt = connection.prepareStatement(GET_ALL_PLOTS); ResultSet result = stmt.executeQuery()) { | ||||||
|                                 try (ResultSet result = stmt.executeQuery()) { |  | ||||||
|                                     while (result.next()) { |                                     while (result.next()) { | ||||||
|                                         final int id = result.getInt("id"); |                                         final int id = result.getInt("id"); | ||||||
|                                         final int x = result.getInt("plot_id_x"); |                                         final int x = result.getInt("plot_id_x"); | ||||||
| @@ -2069,31 +2068,30 @@ public class SQLManager implements AbstractDB { | |||||||
|         addGlobalTask(new Runnable() { |         addGlobalTask(new Runnable() { | ||||||
|             @Override |             @Override | ||||||
|             public void run() { |             public void run() { | ||||||
|                 try { |                     try (PreparedStatement stmt = connection | ||||||
|                     PreparedStatement stmt = |                             .prepareStatement("SELECT `id`, `plot_id_x`, `plot_id_z` FROM `" + prefix + "plot` WHERE `world` = ?")) { | ||||||
|                             connection.prepareStatement("SELECT `id`, `plot_id_x`, `plot_id_z` FROM `" + prefix + "plot` WHERE `world` = ?"); |                         stmt.setString(1, area.toString()); | ||||||
|                     stmt.setString(1, area.toString()); |                         Set<Integer> ids; | ||||||
|                     final ResultSet r = stmt.executeQuery(); |                         try (ResultSet r = stmt.executeQuery()) { | ||||||
|                     final Set<Integer> ids = new HashSet<>(); |                             ids = new HashSet<>(); | ||||||
|                     while (r.next()) { |                             while (r.next()) { | ||||||
|                         PlotId plot_id = new PlotId(r.getInt("plot_id_x"), r.getInt("plot_id_z")); |                                 PlotId plot_id = new PlotId(r.getInt("plot_id_x"), r.getInt("plot_id_z")); | ||||||
|                         if (plots.contains(plot_id)) { |                                 if (plots.contains(plot_id)) { | ||||||
|                             ids.add(r.getInt("id")); |                                     ids.add(r.getInt("id")); | ||||||
|  |                                 } | ||||||
|  |                             } | ||||||
|                         } |                         } | ||||||
|  |                         purgeIds(ids); | ||||||
|  |                     } catch (final SQLException e) { | ||||||
|  |                         e.printStackTrace(); | ||||||
|  |                         PS.debug("&c[ERROR] " + "FAILED TO PURGE AREA '" + area + "'!"); | ||||||
|                     } |                     } | ||||||
|                     purgeIds(ids); |  | ||||||
|                     stmt.close(); |  | ||||||
|                     r.close(); |  | ||||||
|                     for (final Iterator<PlotId> iter = plots.iterator(); iter.hasNext();) { |                     for (final Iterator<PlotId> iter = plots.iterator(); iter.hasNext();) { | ||||||
|                         final PlotId plotId = iter.next(); |                         final PlotId plotId = iter.next(); | ||||||
|                         iter.remove(); |                         iter.remove(); | ||||||
|                         final PlotId id = new PlotId(plotId.x, plotId.y); |                         final PlotId id = new PlotId(plotId.x, plotId.y); | ||||||
|                         area.removePlot(id); |                         area.removePlot(id); | ||||||
|                     } |                     } | ||||||
|                 } catch (final SQLException e) { |  | ||||||
|                     e.printStackTrace(); |  | ||||||
|                     PS.debug("&c[ERROR] " + "FAILED TO PURGE AREA '" + area + "'!"); |  | ||||||
|                 } |  | ||||||
|             } |             } | ||||||
|         }); |         }); | ||||||
|     } |     } | ||||||
| @@ -2335,17 +2333,16 @@ public class SQLManager implements AbstractDB { | |||||||
|     @Override |     @Override | ||||||
|     public HashMap<UUID, Integer> getRatings(final Plot plot) { |     public HashMap<UUID, Integer> getRatings(final Plot plot) { | ||||||
|         final HashMap<UUID, Integer> map = new HashMap<>(); |         final HashMap<UUID, Integer> map = new HashMap<>(); | ||||||
|         try { |         try (PreparedStatement statement = connection | ||||||
|             final PreparedStatement statement = connection.prepareStatement("SELECT `rating`, `player` FROM `" + prefix + "plot_rating` WHERE `plot_plot_id` = ? "); |                 .prepareStatement("SELECT `rating`, `player` FROM `" + prefix + "plot_rating` WHERE `plot_plot_id` = ? ")) { | ||||||
|             statement.setInt(1, getId(plot)); |             statement.setInt(1, getId(plot)); | ||||||
|             final ResultSet set = statement.executeQuery(); |             try (ResultSet set = statement.executeQuery()) { | ||||||
|             while (set.next()) { |                 while (set.next()) { | ||||||
|                 final UUID uuid = UUID.fromString(set.getString("player")); |                     final UUID uuid = UUID.fromString(set.getString("player")); | ||||||
|                 final int rating = set.getInt("rating"); |                     final int rating = set.getInt("rating"); | ||||||
|                 map.put(uuid, rating); |                     map.put(uuid, rating); | ||||||
|  |                 } | ||||||
|             } |             } | ||||||
|             statement.close(); |  | ||||||
|             set.close(); |  | ||||||
|         } catch (final SQLException e) { |         } catch (final SQLException e) { | ||||||
|             PS.debug("&7[WARN] " + "Failed to fetch rating for plot " + plot.getId().toString()); |             PS.debug("&7[WARN] " + "Failed to fetch rating for plot " + plot.getId().toString()); | ||||||
|             e.printStackTrace(); |             e.printStackTrace(); | ||||||
| @@ -2478,7 +2475,7 @@ public class SQLManager implements AbstractDB { | |||||||
|             } |             } | ||||||
|  |  | ||||||
|             @Override |             @Override | ||||||
|             public void execute(PreparedStatement stmt) throws SQLException {} |             public void execute(PreparedStatement stmt) {} | ||||||
|  |  | ||||||
|             @Override |             @Override | ||||||
|             public void addBatch(PreparedStatement stmt) throws SQLException { |             public void addBatch(PreparedStatement stmt) throws SQLException { | ||||||
| @@ -2505,7 +2502,7 @@ public class SQLManager implements AbstractDB { | |||||||
|         final LinkedHashMap<String, Set<PlotCluster>> newClusters = new LinkedHashMap<>(); |         final LinkedHashMap<String, Set<PlotCluster>> newClusters = new LinkedHashMap<>(); | ||||||
|         final HashMap<Integer, PlotCluster> clusters = new HashMap<>(); |         final HashMap<Integer, PlotCluster> clusters = new HashMap<>(); | ||||||
|         try { |         try { | ||||||
|             HashSet<String> areas = new HashSet<>();; |             HashSet<String> areas = new HashSet<>(); | ||||||
|             if (PS.get().config.contains("worlds")) { |             if (PS.get().config.contains("worlds")) { | ||||||
|                 ConfigurationSection worldSection = PS.get().config.getConfigurationSection("worlds"); |                 ConfigurationSection worldSection = PS.get().config.getConfigurationSection("worlds"); | ||||||
|                 if (worldSection != null) { |                 if (worldSection != null) { | ||||||
|   | |||||||
| @@ -20,13 +20,6 @@ | |||||||
| //////////////////////////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||||||
| package com.intellectualcrafters.plot.flag; | package com.intellectualcrafters.plot.flag; | ||||||
|  |  | ||||||
| import java.util.ArrayList; |  | ||||||
| import java.util.HashMap; |  | ||||||
| import java.util.HashSet; |  | ||||||
| import java.util.List; |  | ||||||
| import java.util.Map; |  | ||||||
| import java.util.Set; |  | ||||||
|  |  | ||||||
| import com.intellectualcrafters.plot.PS; | import com.intellectualcrafters.plot.PS; | ||||||
| import com.intellectualcrafters.plot.config.C; | import com.intellectualcrafters.plot.config.C; | ||||||
| import com.intellectualcrafters.plot.database.DBFunc; | import com.intellectualcrafters.plot.database.DBFunc; | ||||||
| @@ -39,6 +32,13 @@ import com.intellectualcrafters.plot.object.RunnableVal; | |||||||
| import com.intellectualcrafters.plot.util.EventUtil; | import com.intellectualcrafters.plot.util.EventUtil; | ||||||
| import com.intellectualcrafters.plot.util.Permissions; | import com.intellectualcrafters.plot.util.Permissions; | ||||||
|  |  | ||||||
|  | import java.util.ArrayList; | ||||||
|  | import java.util.HashMap; | ||||||
|  | import java.util.HashSet; | ||||||
|  | import java.util.List; | ||||||
|  | import java.util.Map; | ||||||
|  | import java.util.Set; | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * Flag Manager Utility |  * Flag Manager Utility | ||||||
|  * |  * | ||||||
|   | |||||||
| @@ -64,7 +64,7 @@ public abstract class PlotPlayer implements CommandCaller { | |||||||
|      */ |      */ | ||||||
|     public void setMeta(final String key, final Object value) { |     public void setMeta(final String key, final Object value) { | ||||||
|         if (meta == null) { |         if (meta == null) { | ||||||
|             meta = new ConcurrentHashMap<String, Object>(); |             meta = new ConcurrentHashMap<>(); | ||||||
|         } |         } | ||||||
|         meta.put(key, value); |         meta.put(key, value); | ||||||
|     } |     } | ||||||
|   | |||||||
| @@ -23,22 +23,23 @@ public class HastebinUtility { | |||||||
|         connection.setRequestMethod("POST"); |         connection.setRequestMethod("POST"); | ||||||
|         connection.setRequestProperty("User-Agent", USER_AGENT); |         connection.setRequestProperty("User-Agent", USER_AGENT); | ||||||
|         connection.setDoOutput(true); |         connection.setDoOutput(true); | ||||||
|          |  | ||||||
|         final DataOutputStream outputStream = new DataOutputStream(connection.getOutputStream()); |         try (DataOutputStream outputStream = new DataOutputStream(connection.getOutputStream())) { | ||||||
|         outputStream.write(string.getBytes()); |             outputStream.write(string.getBytes()); | ||||||
|         outputStream.flush(); |             outputStream.flush(); | ||||||
|         outputStream.close(); |  | ||||||
|          |  | ||||||
|         final BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream())); |  | ||||||
|         String inputLine; |  | ||||||
|         final StringBuilder response = new StringBuilder(); |  | ||||||
|          |  | ||||||
|         while ((inputLine = in.readLine()) != null) { |  | ||||||
|             response.append(inputLine); |  | ||||||
|         } |         } | ||||||
|         in.close(); |  | ||||||
|          |         StringBuilder response; | ||||||
|         final Matcher matcher = PATTERN.matcher(response.toString()); |         try (BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()))) { | ||||||
|  |             response = new StringBuilder(); | ||||||
|  |  | ||||||
|  |             String inputLine; | ||||||
|  |             while ((inputLine = in.readLine()) != null) { | ||||||
|  |                 response.append(inputLine); | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         Matcher matcher = PATTERN.matcher(response.toString()); | ||||||
|         if (matcher.matches()) { |         if (matcher.matches()) { | ||||||
|             return "http://hastebin.com/" + matcher.group(1); |             return "http://hastebin.com/" + matcher.group(1); | ||||||
|         } else { |         } else { | ||||||
|   | |||||||
| @@ -1,29 +1,29 @@ | |||||||
| package com.intellectualcrafters.plot.util; | package com.intellectualcrafters.plot.util; | ||||||
|  |  | ||||||
| import java.util.Collection; |  | ||||||
|  |  | ||||||
| import com.intellectualcrafters.plot.object.ChunkLoc; | import com.intellectualcrafters.plot.object.ChunkLoc; | ||||||
| import com.intellectualcrafters.plot.util.SetQueue.ChunkWrapper; | import com.intellectualcrafters.plot.util.SetQueue.ChunkWrapper; | ||||||
|  |  | ||||||
|  | import java.util.Collection; | ||||||
|  |  | ||||||
| public interface PlotQueue<T> { | public interface PlotQueue<T> { | ||||||
|     public boolean setBlock(final String world, final int x, final int y, final int z, final short id, final byte data); |     boolean setBlock(final String world, final int x, final int y, final int z, final short id, final byte data); | ||||||
|      |      | ||||||
|     public PlotChunk<T> getChunk(ChunkWrapper wrap); |     PlotChunk<T> getChunk(ChunkWrapper wrap); | ||||||
|      |      | ||||||
|     public void setChunk(PlotChunk<T> chunk); |     void setChunk(PlotChunk<T> chunk); | ||||||
|      |      | ||||||
|     public boolean fixLighting(PlotChunk<T> chunk, boolean fixAll); |     boolean fixLighting(PlotChunk<T> chunk, boolean fixAll); | ||||||
|      |      | ||||||
|     public void sendChunk(String world, Collection<ChunkLoc> locs); |     void sendChunk(String world, Collection<ChunkLoc> locs); | ||||||
|  |  | ||||||
|     /** |     /** | ||||||
|      * Gets the FaweChunk and sets the requested blocks |      * Gets the FaweChunk and sets the requested blocks | ||||||
|      * @return |      * @return | ||||||
|      */ |      */ | ||||||
|     public PlotChunk<T> next(); |     PlotChunk<T> next(); | ||||||
|      |      | ||||||
|     public PlotChunk<T> next(ChunkWrapper wrap, boolean fixLighting); |     PlotChunk<T> next(ChunkWrapper wrap, boolean fixLighting); | ||||||
|  |  | ||||||
|     public void clear(); |     void clear(); | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -55,11 +55,12 @@ public class ReflectionUtils { | |||||||
|         ArrayList<T> list = new ArrayList<T>(); |         ArrayList<T> list = new ArrayList<T>(); | ||||||
|         try { |         try { | ||||||
|             Field[] fields = clazz.getFields(); |             Field[] fields = clazz.getFields(); | ||||||
|             for (int i = 0; i < fields.length; i++) { |             for (Field field : fields) { | ||||||
|                 Object value = fields[i].get(null); |                 Object value = field.get(null); | ||||||
|                 try { |                 try { | ||||||
|                 list.add((T) value); |                     list.add((T) value); | ||||||
|                 } catch (ClassCastException e) {} |                 } catch (ClassCastException e) { | ||||||
|  |                 } | ||||||
|             } |             } | ||||||
|         } catch (Throwable e) { |         } catch (Throwable e) { | ||||||
|             e.printStackTrace(); |             e.printStackTrace(); | ||||||
|   | |||||||
| @@ -191,23 +191,19 @@ public class StringMan { | |||||||
|         } |         } | ||||||
|         int p[] = new int[n + 1]; |         int p[] = new int[n + 1]; | ||||||
|         int d[] = new int[n + 1]; |         int d[] = new int[n + 1]; | ||||||
|         int _d[]; |  | ||||||
|         int i; |         int i; | ||||||
|         int j; |  | ||||||
|         char t_j; |  | ||||||
|         int cost; |  | ||||||
|         for (i = 0; i <= n; i++) { |         for (i = 0; i <= n; i++) { | ||||||
|             p[i] = i; |             p[i] = i; | ||||||
|         } |         } | ||||||
|         for (j = 1; j <= m; j++) { |         for (int j = 1; j <= m; j++) { | ||||||
|             t_j = t.charAt(j - 1); |             char t_j = t.charAt(j - 1); | ||||||
|             d[0] = j; |             d[0] = j; | ||||||
|              |              | ||||||
|             for (i = 1; i <= n; i++) { |             for (i = 1; i <= n; i++) { | ||||||
|                 cost = s.charAt(i - 1) == t_j ? 0 : 1; |                 int cost = s.charAt(i - 1) == t_j ? 0 : 1; | ||||||
|                 d[i] = Math.min(Math.min(d[i - 1] + 1, p[i] + 1), p[i - 1] + cost); |                 d[i] = Math.min(Math.min(d[i - 1] + 1, p[i] + 1), p[i - 1] + cost); | ||||||
|             } |             } | ||||||
|             _d = p; |             int[] _d = p; | ||||||
|             p = d; |             p = d; | ||||||
|             d = _d; |             d = _d; | ||||||
|         } |         } | ||||||
|   | |||||||
| @@ -24,12 +24,10 @@ import java.util.UUID; | |||||||
|  |  | ||||||
| public class PlotMeConnector_017 extends APlotMeConnector { | public class PlotMeConnector_017 extends APlotMeConnector { | ||||||
|     private String plugin; |     private String plugin; | ||||||
|     private String prefix; |  | ||||||
|      |  | ||||||
|     @Override |     @Override | ||||||
|     public Connection getPlotMeConnection(final String plugin, final FileConfiguration plotConfig, final String dataFolder) { |     public Connection getPlotMeConnection(final String plugin, final FileConfiguration plotConfig, final String dataFolder) { | ||||||
|         this.plugin = plugin.toLowerCase(); |         this.plugin = plugin.toLowerCase(); | ||||||
|         prefix = plugin + "core_"; |  | ||||||
|         try { |         try { | ||||||
|             if (plotConfig.getBoolean("usemySQL")) { |             if (plotConfig.getBoolean("usemySQL")) { | ||||||
|                 final String user = plotConfig.getString("mySQLuname"); |                 final String user = plotConfig.getString("mySQLuname"); | ||||||
|   | |||||||
| @@ -1,15 +1,15 @@ | |||||||
| package com.plotsquared.bukkit.titles; | package com.plotsquared.bukkit.titles; | ||||||
|  |  | ||||||
|  | import org.bukkit.Bukkit; | ||||||
|  | import org.bukkit.ChatColor; | ||||||
|  | import org.bukkit.entity.Player; | ||||||
|  |  | ||||||
| import java.lang.reflect.Field; | import java.lang.reflect.Field; | ||||||
| import java.lang.reflect.InvocationTargetException; | import java.lang.reflect.InvocationTargetException; | ||||||
| import java.lang.reflect.Method; | import java.lang.reflect.Method; | ||||||
| import java.util.HashMap; | import java.util.HashMap; | ||||||
| import java.util.Map; | import java.util.Map; | ||||||
|  |  | ||||||
| import org.bukkit.Bukkit; |  | ||||||
| import org.bukkit.ChatColor; |  | ||||||
| import org.bukkit.entity.Player; |  | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * [ PlotSquared DefaultTitleManager by Maxim Van de Wynckel ] |  * [ PlotSquared DefaultTitleManager by Maxim Van de Wynckel ] | ||||||
|  * |  * | ||||||
| @@ -36,7 +36,7 @@ public class DefaultTitleManager_183 { | |||||||
|     private int stayTime = -1; |     private int stayTime = -1; | ||||||
|     private int fadeOutTime = -1; |     private int fadeOutTime = -1; | ||||||
|     private boolean ticks = false; |     private boolean ticks = false; | ||||||
|     private static final Map<Class<?>, Class<?>> CORRESPONDING_TYPES = new HashMap<Class<?>, Class<?>>(); |     private static final Map<Class<?>, Class<?>> CORRESPONDING_TYPES = new HashMap<>(); | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
|      * Create a new 1.8 title |      * Create a new 1.8 title | ||||||
| @@ -252,7 +252,7 @@ public class DefaultTitleManager_183 { | |||||||
|             "{text:\"" + ChatColor.translateAlternateColorCodes('&', title) + "\",color:" + titleColor.name().toLowerCase() + "}"); |             "{text:\"" + ChatColor.translateAlternateColorCodes('&', title) + "\",color:" + titleColor.name().toLowerCase() + "}"); | ||||||
|             packet = packetTitle.getConstructor(packetActions, chatBaseComponent).newInstance(actions[0], serialized); |             packet = packetTitle.getConstructor(packetActions, chatBaseComponent).newInstance(actions[0], serialized); | ||||||
|             sendPacket.invoke(connection, packet); |             sendPacket.invoke(connection, packet); | ||||||
|             if (subtitle != "") { |             if (!subtitle.isEmpty()) { | ||||||
|                 // Send subtitle if present |                 // Send subtitle if present | ||||||
|                 serialized = getMethod(nmsChatSerializer, "a", String.class).invoke(null, |                 serialized = getMethod(nmsChatSerializer, "a", String.class).invoke(null, | ||||||
|                 "{text:\"" + ChatColor.translateAlternateColorCodes('&', subtitle) + "\",color:" + subtitleColor.name().toLowerCase() + "}"); |                 "{text:\"" + ChatColor.translateAlternateColorCodes('&', subtitle) + "\",color:" + subtitleColor.name().toLowerCase() + "}"); | ||||||
| @@ -365,9 +365,7 @@ public class DefaultTitleManager_183 { | |||||||
|      |      | ||||||
|     private Class<?> getNMSClass(final String className) throws ClassNotFoundException { |     private Class<?> getNMSClass(final String className) throws ClassNotFoundException { | ||||||
|         final String fullName = "net.minecraft.server." + getVersion() + className; |         final String fullName = "net.minecraft.server." + getVersion() + className; | ||||||
|         Class<?> clazz = null; |         return Class.forName(fullName); | ||||||
|         clazz = Class.forName(fullName); |  | ||||||
|         return clazz; |  | ||||||
|     } |     } | ||||||
|      |      | ||||||
|     private Field getField(final Class<?> clazz, final String name) { |     private Field getField(final Class<?> clazz, final String name) { | ||||||
| @@ -392,10 +390,10 @@ public class DefaultTitleManager_183 { | |||||||
|     } |     } | ||||||
|      |      | ||||||
|     private boolean ClassListEqual(final Class<?>[] l1, final Class<?>[] l2) { |     private boolean ClassListEqual(final Class<?>[] l1, final Class<?>[] l2) { | ||||||
|         boolean equal = true; |  | ||||||
|         if (l1.length != l2.length) { |         if (l1.length != l2.length) { | ||||||
|             return false; |             return false; | ||||||
|         } |         } | ||||||
|  |         boolean equal = true; | ||||||
|         for (int i = 0; i < l1.length; i++) { |         for (int i = 0; i < l1.length; i++) { | ||||||
|             if (l1[i] != l2[i]) { |             if (l1[i] != l2[i]) { | ||||||
|                 equal = false; |                 equal = false; | ||||||
|   | |||||||
| @@ -12,7 +12,7 @@ public class HackTitle extends AbstractTitle { | |||||||
|         try { |         try { | ||||||
|             final HackTitleManager title = new HackTitleManager(head, sub, in, delay, out); |             final HackTitleManager title = new HackTitleManager(head, sub, in, delay, out); | ||||||
|             title.send(((BukkitPlayer) player).player); |             title.send(((BukkitPlayer) player).player); | ||||||
|         } catch (final Throwable e) { |         } catch (Exception e) { | ||||||
|             PS.debug("&cYour server version does not support titles!"); |             PS.debug("&cYour server version does not support titles!"); | ||||||
|             Settings.TITLES = false; |             Settings.TITLES = false; | ||||||
|             AbstractTitle.TITLE_CLASS = null; |             AbstractTitle.TITLE_CLASS = null; | ||||||
|   | |||||||
| @@ -1,14 +1,15 @@ | |||||||
| package com.plotsquared.bukkit.titles; | package com.plotsquared.bukkit.titles; | ||||||
|  |  | ||||||
| import java.lang.reflect.Field; |  | ||||||
| import java.lang.reflect.Method; |  | ||||||
| import java.util.HashMap; |  | ||||||
| import java.util.Map; |  | ||||||
|  |  | ||||||
| import org.bukkit.Bukkit; | import org.bukkit.Bukkit; | ||||||
| import org.bukkit.ChatColor; | import org.bukkit.ChatColor; | ||||||
| import org.bukkit.entity.Player; | import org.bukkit.entity.Player; | ||||||
|  |  | ||||||
|  | import java.lang.reflect.Field; | ||||||
|  | import java.lang.reflect.InvocationTargetException; | ||||||
|  | import java.lang.reflect.Method; | ||||||
|  | import java.util.HashMap; | ||||||
|  | import java.util.Map; | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * Minecraft 1.8 Title |  * Minecraft 1.8 Title | ||||||
|  * |  * | ||||||
| @@ -244,7 +245,7 @@ public class HackTitleManager { | |||||||
|             "{text:\"" + ChatColor.translateAlternateColorCodes('&', title) + "\",color:" + titleColor.name().toLowerCase() + "}"); |             "{text:\"" + ChatColor.translateAlternateColorCodes('&', title) + "\",color:" + titleColor.name().toLowerCase() + "}"); | ||||||
|             packet = packetTitle.getConstructor(packetActions, getNMSClass("IChatBaseComponent")).newInstance(actions[0], serialized); |             packet = packetTitle.getConstructor(packetActions, getNMSClass("IChatBaseComponent")).newInstance(actions[0], serialized); | ||||||
|             sendPacket.invoke(connection, packet); |             sendPacket.invoke(connection, packet); | ||||||
|             if (subtitle != "") { |             if (!subtitle.isEmpty()) { | ||||||
|                 // Send subtitle if present |                 // Send subtitle if present | ||||||
|                 serialized = getMethod(nmsChatSerializer, "a", String.class).invoke(null, |                 serialized = getMethod(nmsChatSerializer, "a", String.class).invoke(null, | ||||||
|                 "{text:\"" + ChatColor.translateAlternateColorCodes('&', subtitle) + "\",color:" + subtitleColor.name().toLowerCase() + "}"); |                 "{text:\"" + ChatColor.translateAlternateColorCodes('&', subtitle) + "\",color:" + subtitleColor.name().toLowerCase() + "}"); | ||||||
| @@ -313,8 +314,7 @@ public class HackTitleManager { | |||||||
|         final Object handle = getHandle(player); |         final Object handle = getHandle(player); | ||||||
|         final Object connection = getField(handle.getClass(), "playerConnection").get(handle); |         final Object connection = getField(handle.getClass(), "playerConnection").get(handle); | ||||||
|         final Object networkManager = getValue("networkManager", connection); |         final Object networkManager = getValue("networkManager", connection); | ||||||
|         final Integer version = (Integer) getMethod("getVersion", networkManager.getClass()).invoke(networkManager); |         return (Integer) getMethod("getVersion", networkManager.getClass()).invoke(networkManager); | ||||||
|         return version; |  | ||||||
|     } |     } | ||||||
|      |      | ||||||
|     /** |     /** | ||||||
| @@ -336,7 +336,8 @@ public class HackTitleManager { | |||||||
|     private Class<?> getClass(final String namespace) { |     private Class<?> getClass(final String namespace) { | ||||||
|         try { |         try { | ||||||
|             return Class.forName(namespace); |             return Class.forName(namespace); | ||||||
|         } catch (final Exception e) {} |         } catch (ClassNotFoundException e) { | ||||||
|  |         } | ||||||
|         return null; |         return null; | ||||||
|     } |     } | ||||||
|      |      | ||||||
| @@ -378,7 +379,7 @@ public class HackTitleManager { | |||||||
|     private Object getHandle(final Object obj) { |     private Object getHandle(final Object obj) { | ||||||
|         try { |         try { | ||||||
|             return getMethod("getHandle", obj.getClass()).invoke(obj); |             return getMethod("getHandle", obj.getClass()).invoke(obj); | ||||||
|         } catch (final Exception e) { |         } catch (IllegalAccessException | IllegalArgumentException | InvocationTargetException e) { | ||||||
|             e.printStackTrace(); |             e.printStackTrace(); | ||||||
|             return null; |             return null; | ||||||
|         } |         } | ||||||
| @@ -397,15 +398,12 @@ public class HackTitleManager { | |||||||
|      |      | ||||||
|     private String getVersion() { |     private String getVersion() { | ||||||
|         final String name = Bukkit.getServer().getClass().getPackage().getName(); |         final String name = Bukkit.getServer().getClass().getPackage().getName(); | ||||||
|         final String version = name.substring(name.lastIndexOf('.') + 1) + "."; |         return name.substring(name.lastIndexOf('.') + 1) + "."; | ||||||
|         return version; |  | ||||||
|     } |     } | ||||||
|      |      | ||||||
|     private Class<?> getNMSClass(final String className) throws ClassNotFoundException { |     private Class<?> getNMSClass(final String className) throws ClassNotFoundException { | ||||||
|         final String fullName = "net.minecraft.server." + getVersion() + className; |         final String fullName = "net.minecraft.server." + getVersion() + className; | ||||||
|         Class<?> clazz = null; |         return Class.forName(fullName); | ||||||
|         clazz = Class.forName(fullName); |  | ||||||
|         return clazz; |  | ||||||
|     } |     } | ||||||
|      |      | ||||||
|     private Field getField(final Class<?> clazz, final String name) { |     private Field getField(final Class<?> clazz, final String name) { | ||||||
| @@ -413,7 +411,7 @@ public class HackTitleManager { | |||||||
|             final Field field = clazz.getDeclaredField(name); |             final Field field = clazz.getDeclaredField(name); | ||||||
|             field.setAccessible(true); |             field.setAccessible(true); | ||||||
|             return field; |             return field; | ||||||
|         } catch (final Exception e) { |         } catch (SecurityException | NoSuchFieldException e) { | ||||||
|             e.printStackTrace(); |             e.printStackTrace(); | ||||||
|             return null; |             return null; | ||||||
|         } |         } | ||||||
| @@ -430,10 +428,10 @@ public class HackTitleManager { | |||||||
|     } |     } | ||||||
|      |      | ||||||
|     private boolean ClassListEqual(final Class<?>[] l1, final Class<?>[] l2) { |     private boolean ClassListEqual(final Class<?>[] l1, final Class<?>[] l2) { | ||||||
|         boolean equal = true; |  | ||||||
|         if (l1.length != l2.length) { |         if (l1.length != l2.length) { | ||||||
|             return false; |             return false; | ||||||
|         } |         } | ||||||
|  |         boolean equal = true; | ||||||
|         for (int i = 0; i < l1.length; i++) { |         for (int i = 0; i < l1.length; i++) { | ||||||
|             if (l1[i] != l2[i]) { |             if (l1[i] != l2[i]) { | ||||||
|                 equal = false; |                 equal = false; | ||||||
|   | |||||||
| @@ -17,7 +17,7 @@ public abstract class Command<E extends CommandCaller> extends CommandManager { | |||||||
|     private Set<String> aliases = new HashSet<>(); |     private Set<String> aliases = new HashSet<>(); | ||||||
|     private CommandCategory category; |     private CommandCategory category; | ||||||
|     private int hash; |     private int hash; | ||||||
|      |  | ||||||
|     public Command() { |     public Command() { | ||||||
|         super(null, new ArrayList<Command>()); |         super(null, new ArrayList<Command>()); | ||||||
|     } |     } | ||||||
|   | |||||||
| @@ -1,5 +1,8 @@ | |||||||
| package com.plotsquared.general.commands; | package com.plotsquared.general.commands; | ||||||
|  |  | ||||||
|  | import com.intellectualcrafters.plot.config.C; | ||||||
|  | import com.intellectualcrafters.plot.util.Permissions; | ||||||
|  |  | ||||||
| import java.util.ArrayList; | import java.util.ArrayList; | ||||||
| import java.util.Collections; | import java.util.Collections; | ||||||
| import java.util.Comparator; | import java.util.Comparator; | ||||||
| @@ -7,9 +10,6 @@ import java.util.HashSet; | |||||||
| import java.util.List; | import java.util.List; | ||||||
| import java.util.concurrent.ConcurrentHashMap; | import java.util.concurrent.ConcurrentHashMap; | ||||||
|  |  | ||||||
| import com.intellectualcrafters.plot.config.C; |  | ||||||
| import com.intellectualcrafters.plot.util.Permissions; |  | ||||||
|  |  | ||||||
| public class CommandManager<T extends CommandCaller> { | public class CommandManager<T extends CommandCaller> { | ||||||
|      |      | ||||||
|     final public ConcurrentHashMap<String, Command<T>> commands; |     final public ConcurrentHashMap<String, Command<T>> commands; | ||||||
| @@ -98,8 +98,7 @@ public class CommandManager<T extends CommandCaller> { | |||||||
|             args = new String[parts.length - 1]; |             args = new String[parts.length - 1]; | ||||||
|             System.arraycopy(parts, 1, args, 0, args.length); |             System.arraycopy(parts, 1, args, 0, args.length); | ||||||
|         } |         } | ||||||
|         Command<T> cmd = null; |         Command<T> cmd = commands.get(command); | ||||||
|         cmd = commands.get(command); |  | ||||||
|         if (cmd == null) { |         if (cmd == null) { | ||||||
|             return CommandHandlingOutput.NOT_FOUND; |             return CommandHandlingOutput.NOT_FOUND; | ||||||
|         } |         } | ||||||
|   | |||||||
| @@ -1,12 +1,8 @@ | |||||||
| package com.plotsquared.sponge; | package com.plotsquared.sponge; | ||||||
|  |  | ||||||
| import java.io.IOException; |  | ||||||
|  |  | ||||||
| import org.spongepowered.api.world.World; |  | ||||||
| import org.spongepowered.api.world.gen.WorldGenerator; |  | ||||||
|  |  | ||||||
| import com.intellectualcrafters.plot.PS; | import com.intellectualcrafters.plot.PS; | ||||||
| import com.intellectualcrafters.plot.config.ConfigurationNode; | import com.intellectualcrafters.plot.config.ConfigurationNode; | ||||||
|  | import com.intellectualcrafters.plot.generator.GeneratorWrapper; | ||||||
| import com.intellectualcrafters.plot.generator.HybridGen; | import com.intellectualcrafters.plot.generator.HybridGen; | ||||||
| import com.intellectualcrafters.plot.generator.PlotGenerator; | import com.intellectualcrafters.plot.generator.PlotGenerator; | ||||||
| import com.intellectualcrafters.plot.object.PlotArea; | import com.intellectualcrafters.plot.object.PlotArea; | ||||||
| @@ -14,6 +10,11 @@ import com.intellectualcrafters.plot.object.SetupObject; | |||||||
| import com.intellectualcrafters.plot.util.SetupUtils; | import com.intellectualcrafters.plot.util.SetupUtils; | ||||||
| import com.plotsquared.sponge.generator.SpongePlotGenerator; | import com.plotsquared.sponge.generator.SpongePlotGenerator; | ||||||
| import com.plotsquared.sponge.util.SpongeUtil; | import com.plotsquared.sponge.util.SpongeUtil; | ||||||
|  | import org.spongepowered.api.world.World; | ||||||
|  | import org.spongepowered.api.world.gen.WorldGenerator; | ||||||
|  |  | ||||||
|  | import java.io.IOException; | ||||||
|  | import java.util.Map; | ||||||
|  |  | ||||||
| public class SpongeSetupUtils extends SetupUtils { | public class SpongeSetupUtils extends SetupUtils { | ||||||
|      |      | ||||||
| @@ -23,7 +24,6 @@ public class SpongeSetupUtils extends SetupUtils { | |||||||
|             return; |             return; | ||||||
|         } |         } | ||||||
|         SetupUtils.generators.put("PlotSquared", new SpongePlotGenerator(new HybridGen())); |         SetupUtils.generators.put("PlotSquared", new SpongePlotGenerator(new HybridGen())); | ||||||
|         // TODO get external world generators |  | ||||||
|         throw new UnsupportedOperationException("TODO FETCH EXTERNAL WorldGenerationModifiers"); |         throw new UnsupportedOperationException("TODO FETCH EXTERNAL WorldGenerationModifiers"); | ||||||
|     } |     } | ||||||
|      |      | ||||||
| @@ -37,7 +37,16 @@ public class SpongeSetupUtils extends SetupUtils { | |||||||
|             return null; |             return null; | ||||||
|         } |         } | ||||||
|         final WorldGenerator generator = world.getWorldGenerator(); |         final WorldGenerator generator = world.getWorldGenerator(); | ||||||
|         throw new UnsupportedOperationException("NOT IMPLEMENTED YET"); |         if (!(generator instanceof SpongePlotGenerator)) { | ||||||
|  |             return null; | ||||||
|  |         } | ||||||
|  |         for (final Map.Entry<String, GeneratorWrapper<?>> entry : generators.entrySet()) { | ||||||
|  |             GeneratorWrapper<?> current = entry.getValue(); | ||||||
|  |             if (current.equals(generator)) { | ||||||
|  |                 return entry.getKey(); | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |         return null; | ||||||
|     } |     } | ||||||
|      |      | ||||||
|     @Override |     @Override | ||||||
|   | |||||||
| @@ -1,14 +1,31 @@ | |||||||
| package com.plotsquared.sponge.listener; | package com.plotsquared.sponge.listener; | ||||||
|  |  | ||||||
| import java.util.ArrayList; | import com.flowpowered.math.vector.Vector3d; | ||||||
| import java.util.HashSet; | import com.intellectualcrafters.plot.PS; | ||||||
| import java.util.List; | import com.intellectualcrafters.plot.config.C; | ||||||
| import java.util.Map.Entry; | import com.intellectualcrafters.plot.config.Settings; | ||||||
| import java.util.Objects; | import com.intellectualcrafters.plot.database.DBFunc; | ||||||
| import java.util.Optional; | import com.intellectualcrafters.plot.flag.Flag; | ||||||
| import java.util.UUID; | import com.intellectualcrafters.plot.flag.FlagManager; | ||||||
| import java.util.function.Predicate; | import com.intellectualcrafters.plot.object.Location; | ||||||
|  | import com.intellectualcrafters.plot.object.Plot; | ||||||
|  | import com.intellectualcrafters.plot.object.PlotArea; | ||||||
|  | import com.intellectualcrafters.plot.object.PlotBlock; | ||||||
|  | import com.intellectualcrafters.plot.object.PlotId; | ||||||
|  | import com.intellectualcrafters.plot.object.PlotManager; | ||||||
|  | import com.intellectualcrafters.plot.object.PlotPlayer; | ||||||
|  | import com.intellectualcrafters.plot.object.StringWrapper; | ||||||
|  | import com.intellectualcrafters.plot.util.ExpireManager; | ||||||
|  | import com.intellectualcrafters.plot.util.MainUtil; | ||||||
|  | import com.intellectualcrafters.plot.util.MathMan; | ||||||
|  | import com.intellectualcrafters.plot.util.Permissions; | ||||||
|  | import com.intellectualcrafters.plot.util.StringMan; | ||||||
|  | import com.intellectualcrafters.plot.util.TaskManager; | ||||||
|  | import com.intellectualcrafters.plot.util.UUIDHandler; | ||||||
|  | import com.plotsquared.listener.PlotListener; | ||||||
|  | import com.plotsquared.sponge.SpongeMain; | ||||||
|  | import com.plotsquared.sponge.object.SpongePlayer; | ||||||
|  | import com.plotsquared.sponge.util.SpongeUtil; | ||||||
| import org.spongepowered.api.block.BlockSnapshot; | import org.spongepowered.api.block.BlockSnapshot; | ||||||
| import org.spongepowered.api.block.BlockState; | import org.spongepowered.api.block.BlockState; | ||||||
| import org.spongepowered.api.data.Transaction; | import org.spongepowered.api.data.Transaction; | ||||||
| @@ -43,32 +60,14 @@ import org.spongepowered.api.text.Text; | |||||||
| import org.spongepowered.api.world.World; | import org.spongepowered.api.world.World; | ||||||
| import org.spongepowered.api.world.extent.Extent; | import org.spongepowered.api.world.extent.Extent; | ||||||
|  |  | ||||||
| import com.flowpowered.math.vector.Vector3d; | import java.util.ArrayList; | ||||||
| import com.intellectualcrafters.plot.PS; | import java.util.HashSet; | ||||||
| import com.intellectualcrafters.plot.config.C; | import java.util.List; | ||||||
| import com.intellectualcrafters.plot.config.Settings; | import java.util.Map.Entry; | ||||||
| import com.intellectualcrafters.plot.database.DBFunc; | import java.util.Objects; | ||||||
| import com.intellectualcrafters.plot.flag.Flag; | import java.util.Optional; | ||||||
| import com.intellectualcrafters.plot.flag.FlagManager; | import java.util.UUID; | ||||||
| import com.intellectualcrafters.plot.object.Location; | import java.util.function.Predicate; | ||||||
| import com.intellectualcrafters.plot.object.Plot; |  | ||||||
| import com.intellectualcrafters.plot.object.PlotArea; |  | ||||||
| import com.intellectualcrafters.plot.object.PlotBlock; |  | ||||||
| import com.intellectualcrafters.plot.object.PlotId; |  | ||||||
| import com.intellectualcrafters.plot.object.PlotManager; |  | ||||||
| import com.intellectualcrafters.plot.object.PlotPlayer; |  | ||||||
| import com.intellectualcrafters.plot.object.StringWrapper; |  | ||||||
| import com.intellectualcrafters.plot.util.ExpireManager; |  | ||||||
| import com.intellectualcrafters.plot.util.MainUtil; |  | ||||||
| import com.intellectualcrafters.plot.util.MathMan; |  | ||||||
| import com.intellectualcrafters.plot.util.Permissions; |  | ||||||
| import com.intellectualcrafters.plot.util.StringMan; |  | ||||||
| import com.intellectualcrafters.plot.util.TaskManager; |  | ||||||
| import com.intellectualcrafters.plot.util.UUIDHandler; |  | ||||||
| import com.plotsquared.listener.PlotListener; |  | ||||||
| import com.plotsquared.sponge.SpongeMain; |  | ||||||
| import com.plotsquared.sponge.object.SpongePlayer; |  | ||||||
| import com.plotsquared.sponge.util.SpongeUtil; |  | ||||||
|  |  | ||||||
| public class MainListener { | public class MainListener { | ||||||
|      |      | ||||||
| @@ -307,7 +306,7 @@ public class MainListener { | |||||||
|     public void onCommand(final SendCommandEvent event) { |     public void onCommand(final SendCommandEvent event) { | ||||||
|         switch (event.getCommand().toLowerCase()) { |         switch (event.getCommand().toLowerCase()) { | ||||||
|             case "plotme": { |             case "plotme": { | ||||||
|                 Player source = this.<Player> getCause(event.getCause(), Player.class); |                 Player source = this.getCause(event.getCause(), Player.class); | ||||||
|                 if (source == null) { |                 if (source == null) { | ||||||
|                     return; |                     return; | ||||||
|                 } |                 } | ||||||
| @@ -374,7 +373,7 @@ public class MainListener { | |||||||
|     @Listener |     @Listener | ||||||
|     public void onChat(final MessageEvent event) { |     public void onChat(final MessageEvent event) { | ||||||
|         // TODO |         // TODO | ||||||
|         Player player = this.<Player> getCause(event.getCause(), Player.class); |         Player player = this.getCause(event.getCause(), Player.class); | ||||||
|         if (player == null) { |         if (player == null) { | ||||||
|             return; |             return; | ||||||
|         } |         } | ||||||
| @@ -504,7 +503,7 @@ public class MainListener { | |||||||
|      |      | ||||||
|     @Listener |     @Listener | ||||||
|     public void onBlockBreak(final ChangeBlockEvent.Break event) { |     public void onBlockBreak(final ChangeBlockEvent.Break event) { | ||||||
|         Player player = this.<Player> getCause(event.getCause(), Player.class); |         Player player = this.getCause(event.getCause(), Player.class); | ||||||
|         if (player == null) { |         if (player == null) { | ||||||
|             event.setCancelled(true); |             event.setCancelled(true); | ||||||
|             return; |             return; | ||||||
| @@ -588,7 +587,7 @@ public class MainListener { | |||||||
|      |      | ||||||
|     @Listener |     @Listener | ||||||
|     public void onBlockPlace(final ChangeBlockEvent.Place event) { |     public void onBlockPlace(final ChangeBlockEvent.Place event) { | ||||||
|         Player player = this.<Player> getCause(event.getCause(), Player.class); |         Player player = this.getCause(event.getCause(), Player.class); | ||||||
|         if (player == null) { |         if (player == null) { | ||||||
|             event.setCancelled(true); |             event.setCancelled(true); | ||||||
|             return; |             return; | ||||||
| @@ -672,7 +671,7 @@ public class MainListener { | |||||||
|      |      | ||||||
|     @Listener |     @Listener | ||||||
|     public void onBlockInteract(final InteractBlockEvent.Secondary event) { |     public void onBlockInteract(final InteractBlockEvent.Secondary event) { | ||||||
|         final Player player = this.<Player> getCause(event.getCause(), Player.class); |         final Player player = this.getCause(event.getCause(), Player.class); | ||||||
|         if (player == null) { |         if (player == null) { | ||||||
|             event.setCancelled(true); |             event.setCancelled(true); | ||||||
|             return; |             return; | ||||||
| @@ -770,17 +769,13 @@ public class MainListener { | |||||||
|      |      | ||||||
|     @Listener |     @Listener | ||||||
|     public void onMove(final DisplaceEntityEvent.TargetPlayer event) { |     public void onMove(final DisplaceEntityEvent.TargetPlayer event) { | ||||||
|         final org.spongepowered.api.world.Location from = event.getFromTransform().getLocation(); |         final org.spongepowered.api.world.Location<World> from = event.getFromTransform().getLocation(); | ||||||
|         org.spongepowered.api.world.Location to = event.getToTransform().getLocation(); |         org.spongepowered.api.world.Location<World> to = event.getToTransform().getLocation(); | ||||||
|         int x2; |         int x2; | ||||||
|         if (getInt(from.getX()) != (x2 = getInt(to.getX()))) { |         if (getInt(from.getX()) != (x2 = getInt(to.getX()))) { | ||||||
|             final Player player = event.getTargetEntity(); |             final Player player = event.getTargetEntity(); | ||||||
|             final PlotPlayer pp = SpongeUtil.getPlayer(player); |             final PlotPlayer pp = SpongeUtil.getPlayer(player); | ||||||
|             final Extent extent = to.getExtent(); |             final Extent extent = to.getExtent(); | ||||||
|             if (!(extent instanceof World)) { |  | ||||||
|                 pp.deleteMeta("location"); |  | ||||||
|                 return; |  | ||||||
|             } |  | ||||||
|             pp.setMeta("location", SpongeUtil.getLocation(player)); |             pp.setMeta("location", SpongeUtil.getLocation(player)); | ||||||
|             final World world = (World) extent; |             final World world = (World) extent; | ||||||
|             final String worldname = ((World) extent).getName(); |             final String worldname = ((World) extent).getName(); | ||||||
| @@ -790,7 +785,7 @@ public class MainListener { | |||||||
|             } |             } | ||||||
|             final PlotManager plotManager = PS.get().getPlotManager(PS.get().getPlot(plotworld, plotworld.getMin())); |             final PlotManager plotManager = PS.get().getPlotManager(PS.get().getPlot(plotworld, plotworld.getMin())); | ||||||
|             final PlotId id = plotManager.getPlotId(plotworld, x2, 0, getInt(to.getZ())); |             final PlotId id = plotManager.getPlotId(plotworld, x2, 0, getInt(to.getZ())); | ||||||
|             final Plot lastPlot = (Plot) pp.getMeta("lastplot"); |             final Plot lastPlot = pp.getMeta("lastplot"); | ||||||
|             if (id == null) { |             if (id == null) { | ||||||
|                 if (lastPlot == null) { |                 if (lastPlot == null) { | ||||||
|                     return; |                     return; | ||||||
| @@ -819,18 +814,16 @@ public class MainListener { | |||||||
|                 } |                 } | ||||||
|             } |             } | ||||||
|             final Integer border = plotworld.getBorder(); |             final Integer border = plotworld.getBorder(); | ||||||
|             if (border != null) { |             if (x2 > border) { | ||||||
|                 if (x2 > border) { |                 final Vector3d pos = to.getPosition(); | ||||||
|                     final Vector3d pos = to.getPosition(); |                 to = to.setPosition(new Vector3d(border - 4, pos.getY(), pos.getZ())); | ||||||
|                     to = to.setPosition(new Vector3d(border - 4, pos.getY(), pos.getZ())); |                 event.setToTransform(new Transform<>(to)); | ||||||
|                     event.setToTransform(new Transform(to)); |                 MainUtil.sendMessage(pp, C.BORDER); | ||||||
|                     MainUtil.sendMessage(pp, C.BORDER); |             } else if (x2 < -border) { | ||||||
|                 } else if (x2 < -border) { |                 final Vector3d pos = to.getPosition(); | ||||||
|                     final Vector3d pos = to.getPosition(); |                 to = to.setPosition(new Vector3d(-border + 4, pos.getY(), pos.getZ())); | ||||||
|                     to = to.setPosition(new Vector3d(-border + 4, pos.getY(), pos.getZ())); |                 event.setToTransform(new Transform<>(to)); | ||||||
|                     event.setToTransform(new Transform(to)); |                 MainUtil.sendMessage(pp, C.BORDER); | ||||||
|                     MainUtil.sendMessage(pp, C.BORDER); |  | ||||||
|                 } |  | ||||||
|             } |             } | ||||||
|             return; |             return; | ||||||
|         } |         } | ||||||
| @@ -839,10 +832,6 @@ public class MainListener { | |||||||
|             final Player player = event.getTargetEntity(); |             final Player player = event.getTargetEntity(); | ||||||
|             final PlotPlayer pp = SpongeUtil.getPlayer(player); |             final PlotPlayer pp = SpongeUtil.getPlayer(player); | ||||||
|             final Extent extent = to.getExtent(); |             final Extent extent = to.getExtent(); | ||||||
|             if (!(extent instanceof World)) { |  | ||||||
|                 pp.deleteMeta("location"); |  | ||||||
|                 return; |  | ||||||
|             } |  | ||||||
|             pp.setMeta("location", SpongeUtil.getLocation(player)); |             pp.setMeta("location", SpongeUtil.getLocation(player)); | ||||||
|             final World world = (World) extent; |             final World world = (World) extent; | ||||||
|             final String worldname = ((World) extent).getName(); |             final String worldname = ((World) extent).getName(); | ||||||
| @@ -881,18 +870,16 @@ public class MainListener { | |||||||
|                 } |                 } | ||||||
|             } |             } | ||||||
|             final Integer border = plotworld.getBorder(); |             final Integer border = plotworld.getBorder(); | ||||||
|             if (border != null) { |             if (z2 > border) { | ||||||
|                 if (z2 > border) { |                 final Vector3d pos = to.getPosition(); | ||||||
|                     final Vector3d pos = to.getPosition(); |                 to = to.setPosition(new Vector3d(pos.getX(), pos.getY(), border - 4)); | ||||||
|                     to = to.setPosition(new Vector3d(pos.getX(), pos.getY(), border - 4)); |                 event.setToTransform(new Transform<>(to)); | ||||||
|                     event.setToTransform(new Transform(to)); |                 MainUtil.sendMessage(pp, C.BORDER); | ||||||
|                     MainUtil.sendMessage(pp, C.BORDER); |             } else if (z2 < -border) { | ||||||
|                 } else if (z2 < -border) { |                 final Vector3d pos = to.getPosition(); | ||||||
|                     final Vector3d pos = to.getPosition(); |                 to = to.setPosition(new Vector3d(pos.getX(), pos.getY(), -border + 4)); | ||||||
|                     to = to.setPosition(new Vector3d(pos.getX(), pos.getY(), -border + 4)); |                 event.setToTransform(new Transform<>(to)); | ||||||
|                     event.setToTransform(new Transform(to)); |                 MainUtil.sendMessage(pp, C.BORDER); | ||||||
|                     MainUtil.sendMessage(pp, C.BORDER); |  | ||||||
|                 } |  | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|   | |||||||
| @@ -1,23 +1,16 @@ | |||||||
| package com.plotsquared.sponge.util; | package com.plotsquared.sponge.util; | ||||||
|  |  | ||||||
| import org.spongepowered.api.text.Text; |  | ||||||
| import org.spongepowered.api.text.title.Title; |  | ||||||
|  |  | ||||||
| import com.intellectualcrafters.plot.object.PlotPlayer; | import com.intellectualcrafters.plot.object.PlotPlayer; | ||||||
| import com.intellectualcrafters.plot.util.AbstractTitle; | import com.intellectualcrafters.plot.util.AbstractTitle; | ||||||
| import com.plotsquared.sponge.object.SpongePlayer; | import com.plotsquared.sponge.object.SpongePlayer; | ||||||
|  | import org.spongepowered.api.text.Text; | ||||||
|  | import org.spongepowered.api.text.title.Title; | ||||||
|  |  | ||||||
| public class SpongeTitleManager extends AbstractTitle { | public class SpongeTitleManager extends AbstractTitle { | ||||||
|      |  | ||||||
|     @Override |     @Override | ||||||
|     public void sendTitle(final PlotPlayer player, final String head, final String sub, final int in, final int delay, final int out) { |     public void sendTitle(final PlotPlayer player, final String head, final String sub, final int in, final int delay, final int out) { | ||||||
|         final Title title = Title.builder() |         final Title title = Title.builder().title(Text.of(head)).subtitle(Text.of(sub)).fadeIn(in * 20).stay(delay * 20).fadeOut(out * 20).build(); | ||||||
|         .title(Text.of(head)) |  | ||||||
|         .subtitle(Text.of(sub)) |  | ||||||
|         .fadeIn(in * 20) |  | ||||||
|         .stay(delay * 20) |  | ||||||
|         .fadeOut(out * 20) |  | ||||||
|         .build(); |  | ||||||
|         ((SpongePlayer) player).player.sendTitle(title); |         ((SpongePlayer) player).player.sendTitle(title); | ||||||
|     } |     } | ||||||
| } | } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Matt
					Matt