This commit changes payToOpen to use the correct value from the config as well as the default value listed in the config instead of
the default value for payToCreate.
Initializing the Updater class from the main thread allows the Updater
thread to begin its query before the first server tick, which is when the
scheduled task will begin. Gotta get that update!
Previously, the signs config file was saved for every single change to its
contents. This works great until you have an episode of mass destruction.
Suddenly, you're getting the file saved multiple times per tick. Goodbye,
TPS. Hello, lag.
This commit replaces the functionality of the saveSigns method with
flagging the signs config as requiring a save. A scheduled task checking
for this boolean once per second allows for up-to-the-second accuracy of
the config file without substantially compromising server stability.
Lastly, the config is saved in onDisable to ensure the task hasn't missed
anything.
Eliminates awkward situations of changes causing confusion when suddenly
your plugin won't compile on new versions of Bukkit. Stuck to 1.7.9-R0.2
because this is the last release supporting getOnlinePlayers as an array,
which this plugin builds against, and building this way supports the most
servers, which is always an admirable goal. Wouldn't want to force people
onto the latest dev, would we?
Currently any ConfigurationSerializable object that relies upon Iterables
for its serialization will fail to serialize correctly, and, in turn, fail to
deserialize properly.
To correct this, special casing has been added for Iterables(and Maps in a
few places) to ensure that all ConfigurationSerializable objects are
serialized and deserialized correctly.