- Corrected Project Information not being displayed when loaded for editing
- Re-wrote Designer Save code to use the objects save code instead of FileManager. Resulted in 26% less code and cleaner source.
- Project Explorer now checks Saved State of currently loaded object just like the Right-Click->Edit Object menu item does.
Engine:
- ProjectInformation.Save() now implemented.
- BaseObject.Save() now implemented. All objects inheriting from BaseObject can save itself. Including all Environment objects (Realms,Zones, Rooms) and Currency objects.
- Corrected SaveDataTypes.Currency being named incorrectly. Changed to Currencies
- ProjectInformation now inherits from the new IFileIO interface.
- ProjectInformation.Load can be used instead of the FileManager now (note: Saving of ProjectInformation must still be done using FileManager)
- Organizing of BaseObject done
- BaseObject now supports BaseObject.Load. Use this instead of FileManager.Load
- Fixed UIRealmControl error, attempting to deserialize into a null Zone Field
- Program.cs is now encapsulated into a try/catch
- IFileIO interface added for providing a blueprint on file I/O operations
Designer:
- Additional ObjectTypes added to the ObjectTypes enum
- Additional commenting provided throughout the source.
- Re-organized the source code.
- Simplified the Constructor code. Roughly 50% less code now.
- Re-wrote the Object Load code to make it easier to read and maintain.
- Renamed several menu items to conform to the projects naming conventions
- Auto-saving objects is now complete.
- Removed Save Object button
- Object Properties no longer displays the Project Information on startup
- Objects that can be edited within the Designer are displayed in Blue in the treeview
- Objects that can only be edited within another objects Mini-Editor are displayed in Red and cannot be edited within the main Designer
- Folders are displayed in Black
- Objects are not auto-saved until the objects Name is changed from 'New Object'
- The designer checks to see if the object has been saved yet prior to creating a new object.
- Double clicking an editable object (shown in blue text) now loads the object for editing.
- Menu item Project->Game Objects->Environment->New Room opens the Zones Mini-Room Editor if a Zone is loaded.
- Tooltips added to the Project Explorer and Object Properties panes
Mud Engine:
- FileManager returns the new directory layout when using GetDataPath
- Added Zones to SaveDataTypes enum.
- Game Objects now have a Description attribute attached to their public properties so the Designer can display a description of what the property is for within the Object Properties pane.
- Added PreCacheObjects Boolean to ProjectInformation for pre-loading objects when the runtime is built.
- All objects Filename is now set to readonly and cannot be edited within the Designer
- Started work on Realm.GetZone() method.
- Room.Zone is no longer hidden from the Object Properties Pane, but set to Readonly.
- Began work on Moving a Zones Rooms when a Zone is moved within a Realm.
- Removed un-needed code within the RealmEditor
- UIRoomControl now creates and saves Rooms. Duplicate Rooms cannot be created and Room re-naming is implemented.
- Removed remaining old code for previous Mud Designer Editors from within Program.cs