Initial commit
Initial commit
new features

-Item name formatting changes
-block randomizer changes
Spawning changes

Catacombs now follow the same spawning pattern as villages
Added a customizable dungeon randomizer
loot changes

- added smithy chest
- made level 1 a bit smaller
- added a give parameter to the dungeon command to give novetly loot
items
Brewing Lab

- Added a brewing Lab
- Added new brewing items to chest junk
- stairways changed to correct block type at lower levels
Configuration

Added a configuration framework, including:

- An interface for parsers, which transform data from streams into configurations
- An abstract base class for configuration providers, which allows configuration information to be retrieved, retrieved returning a default if configuration is not supplied, as well as be seamlessly converted to doubles and integers
- A concrete provider which provides configuration information from a file
- A concrete parser which parses a configuration format similar to that used by INI files
Merge pull request #1 from RobertLeahy/master

Configuration
Forge feature unification

-Added spawner to help forge version
-Added version book to starter chest
private static final

Two of the constants in INIParser were private final, not private static final.
Merge pull request #2 from RobertLeahy/master

private static final
Cardinals

- Added an enum for cardinal directions
- Refactored worldgen to use enum cardinals
Segments

- Added tunnel segments
Boxy rooms

- Reshaped the common boxy rooms
- Added a corner node, which is just an empty room
- Added chests & spawners to inset segments
Configuration Fixes/Improvements

Fixed a bug which allowed NullPointerException to be thrown from the methods that get and parse configurations -- either to ints or doubles.

Fixed an oversight which caused the constructor of ConfigFile to throw if the file-in-question didn't exist.  It is desirable to be able to create a ConfigFile even if the corresponding file does not exist.  This allows for improved workflow as the ConfigFile object can be used to manage configurations even if no corresponding physical file exists.

Made several improvements/additions:

- ConfigurationProvider now contains and manages its own Hashtable<String,String> and manages it, which removes that responsibility from the base class and allows for better code reuse.
- ConfigurationProvider is now iterable.  ConfigurationProviderIterator coalesces the entries in the underlying Hashtable<String,String> into Configuration objects.
- ConfigurationParser -- and the implementation INIParser -- now provide a method for serialization as well as parsing.
- ConfigurationProviders may now be written to disk using the Write static method of the ConfigFileWriter class.
- ConfigFile now remembers the filename and ConfigurationParser it was constructed with, and has a member method Write which writes all configurations back to that same file in the same format.
- ConfigurationProviders now allow for new configurations to be added through the Set overloads.
- ConfigurationProviders now allow for configurations to be removed through the Unset method.
Minor tweaks

- tweaks to tower
- removed spawners on segments in level 1
Merge pull request #3 from RobertLeahy/master

Configuration Fixes/Improvements
Tileentity bug fix

- Fixed a problem related placing multiple tile entities on the same
block.
Reorganization

- Repackaged the classes