Commit graph

82 commits

Author SHA1 Message Date
Scionwest_cp
968ab21e5a - Both linked Rooms are now linked together via the Doorway Manager now. However the 2nd Room does not show the linked effects until the Zone is re-loaded. This will be addressed shortly.
- Rooms no longer install duplicate doorways. If a doorway exists, it removes it and installs the new door.
2009-12-09 15:03:01 -08:00
Scionwest_cp
7da8fcfea9 - Rooms can now be linked together via the Doorway Manager. Use the Doorway manager for linking rooms even if they are contained within the same Zone as the same zone reverse door install is not implemented yet.
- TravelDirections now contains a TravelDirections.GetTravelDirectionValue which converts a string representing a direction into the corresponding AvailableTravelDirections enum value.
2009-12-08 20:28:52 -08:00
Scionwest_cp
37b2d42b4c - Toolkit now saves and loads settings file
- Toolkit supports a default toolkit realm. Zone Builder now loads the default Realm each time it is opened. Allows developers to work on one Realm without having to re-select the Realm each time the Zone Builder is opened.
 - Toolkit settings properties are no longer static within Settings.cs.
 - Program.cs now contains a staticu property for Toolkit settings.
2009-12-08 17:27:55 -08:00
Scionwest_cp
d96a175372 - Added Settings for storing various Toolkit settings. 2009-12-08 16:44:24 -08:00
Scionwest_cp
7005b869e4 - Zone Builder now loads/saves rooms correctly.
- Zones now contain a RefreshRoomList() method for updating the collection of Rooms. MUST be called anytime a room is changed within the Zone. 
 - Removed the forced Realm constructor for zones.

Realm, Zone and Room creation is now working again.
2009-12-08 16:11:42 -08:00
Scionwest_cp
f9ee12aab2 - Removed forced exception for parameterless Zone instancing. Was throwing an exception during deserialization of the xml documention.
- Fixed the Select a Realm form from crashing when the listbox was clicked and no Realm was selected.
2009-12-08 15:54:47 -08:00
Scionwest_cp
44431ecade - Zones build their Room collection during instancing.
- Zones can not be instanced without providing the owning realm in its constructor.
 - Started adding tooltips to the editors.
 - Zone Builder now checks if a Realm has been loaded yet or not prior to creating Zones.
 - Zone Builder will not allow Rooms to be created within new Zones until the Zone has been saved.
 - Zone Builder checks if a New Zone has not been saved yet prior to creating another New Zone
 - Renamed Room.ParentZone to Room.Zone to be consistent with the Realm and Zone classes.
2009-12-08 15:49:43 -08:00
Scionwest_cp
f35e1b2ea7 Removed Realm information from Door.cs and added ConnectedRoom struct for holding the realm, zone and room name of the Room connected with the doorway. 2009-12-08 12:03:46 -08:00
Scionwest_cp
dfbc92c5d0 Zone Builder now creates Zones within different Realms, save and loads them. You can have two Realms, each containing a Zone with the exact same name with the new folder setup. 2009-12-08 11:53:38 -08:00
Scionwest_cp
41047da6d1 Final commit with new changes. Class namespaces changed and editors changed. New classes added and Room Designer deleted. 2009-12-08 10:35:59 -08:00
Scionwest_cp
68e467fc05 2009-12-08 10:35:23 -08:00
Scionwest_cp
1416c7149b 2009-12-08 10:35:07 -08:00
Scionwest_cp
6bb6258da3 2009-12-08 10:34:43 -08:00
Scionwest_cp
c7f5a9b2a7 2009-12-08 10:34:20 -08:00
Scionwest_cp
dbe4a45738 Additional deleted files. 2009-12-08 10:32:30 -08:00
Scionwest_cp
afdb9c76b2 2009-12-08 10:32:03 -08:00
Scionwest_cp
ea9a67ea48 Mud Engine:
- Added missing TravelDirections file.
2009-12-06 00:14:06 -08:00
Scionwest_cp
4ebce0a987 Project Settings:
- Cleaned up the code within the editor.

Realm Explorer:
 - Some UI adjustments.

Room Designer:
 - Program.Room is no longer re-instanced after the room designer saves a room.

Toolkit Launcher:
 - Zone and Room edior buttons removed. They can now only be accessed via the Realm Explorer.
 - Changed the Toolkit Title.

Zone Builder:
 - Began Room Doorway linking UI design.

Mud Engine:
 - Zones now instance the Rooms collection.
 - Travel Directions now moved from Environment namespace and placed within Objects namespace.
 - Travel Directions now contains a class and method for returning the opposite direction provided. (ex: GetReverseDirection(TravelDirections.West) returns East).
2009-12-06 00:13:43 -08:00
Scionwest_cp
f2a90ecb3f - Realms now delete all zones and rooms correctly
- Zones now delete all rooms it contains.
 - Included the missing ExistingRealms form.
 - Zones can now be moved from one realm to another, all Rooms are transfered with the Zone during the move.
2009-12-05 00:05:03 -08:00
Scionwest_cp
1206fccc9d - Realms, Zones and Room editors now are all working together.
- Deleting Realms now deletes all zones and rooms attached to it.
2009-12-04 23:56:32 -08:00
Scionwest_cp
3cfa72ef69 - Complete re-work of the Realm Explorer and Zone Builder.
- Realm Explorer & Zone Builder now work together correctly.
 - Program.CurrentEditor now holds the currently running editor.
 - BaseObject.ToString() added to return the Name of the object if ToString() is used.
 - GetZone() method added to Realm.cs
2009-12-04 23:15:33 -08:00
Scionwest_cp
09fa576025 - Editors now open and close correctly without having all of the editors visible at once.
- Realm Exporer, Zone Builder and Room Designer no longer attempt to shut down the toolkit when the Close button is clicked. Previous editor is restored.
2009-12-03 13:31:29 -08:00
Scionwest_cp
f86975c8b9 Removed Engine.cs from the project file. 2009-12-03 13:18:25 -08:00
Scionwest_cp
6f9dc2d97a - Deleted Engine.cs as it is no longer used. 2009-12-02 18:57:38 -08:00
Scionwest_cp
379c6f844d - Renamed FileSystem.FileSystem.cs to FileSystem.FileManager.cs
- Moved ValidateDataPaths() from Engine.cs to FileManager.cs
 - Moved GetDataPath() from Engine.cs to FileManager.cs
 - Moved SaveDataTypes out from Engine.cs into it's own file. MudEngine.FileSystem.SaveDataTypes.cs
 - Moved _CurrentRoom, _CurrentZone, _CurrentRealm and _ScriptEngine out from all editors containing those Fields, and placed them as static properties within Program.cs Room, Zone, Realm and ScriptEngine Properties
 - Created 3 new Interfaces. IGameObject, IQuest and IRuleSet.
 - Created QuestSetup class to begin working on Quest Editor at some point.
2009-12-02 18:57:03 -08:00
Scionwest_cp
c1d60639f5 MudEngine.Engine no longer contains a _InstallLocation field for debugging. All editors work together without needing to know their install base. 2009-12-01 19:28:50 -08:00
Scionwest_cp
b87136bc13 Project restructure completed. All editors now contained within a single Project.
Note that some things are still broken from the migration, but will be addressed.
2009-12-01 19:27:01 -08:00
Scionwest_cp
ec48ae95c3 Finished purging seperate projects. 2009-12-01 19:25:12 -08:00
Scionwest_cp
e20b9d4544 Removed MUDDesigner 2009-12-01 18:41:28 -08:00
Scionwest_cp
6f44f46539 Removed Project Manager
Removed MUDEngine
2009-12-01 18:40:41 -08:00
Scionwest_cp
7ae6b444b6 Removed Currency Project in prep for merging all editors into a single project. 2009-12-01 18:39:22 -08:00
Scionwest_cp
3ba3c4107b Mud Designer:
- Removed code for pathing. MudEngine handles it now.
 - Removed _InstallLocation and placed it as a private Field within the MudEngine.Engine class.
 - Mud Designer now Validates paths during startup

Mud Engine:
 - Added Debug code to ValidateDataPaths and GetDataPath Methods. if DEBUG constant is defined it returns the paths or creates the directory structure based off the _InstallLocation field.
 - Zones now contain a copy of the Realms Name

Realm Explorer:
 - Renamed _Realm to _CurrentRealm to be more consistant with other editor naming conventions.
 - Zones can now be added to Realms
 - Realms can now be saved and loaded
 - Zones not within any Realms are listed in the Realm Explorer as being Available For Use
 - Realm Explorer Launchs the Zone Builder
2009-12-01 18:37:04 -08:00
Scionwest_cp
d949c17471 Mud Designer:
- Added a messagebox on startup, indicating that the Room Designer and Zone Builder buttons will be removed shortly, as the preferred way to access the two editors will be via the Realm Explorer.

Room Designer:
 - Code Cleanup

Zone Builder:
 - Script engine implemented into the editor.
 - Zones can now be saved.
 - Room Editor link implemented. Room Designer can now be launched from within the Zone Builder.
 - Corrected Builder not creating required directories correctly.

This marks the first version of the toolkit with the Realm Explorer, Zone Builder and Room Designer all linked together, however not fully complete.
2009-11-28 22:27:37 -08:00
Scionwest_cp
82e43cb4f2 MUD Engine:
- BaseObject now sets the default value for Name programmatically for the editors propertygrids.
 - Room, Realm and Zone no longer set their Name Properties to their default value, BaseObject handles it.

Room Designer:
 - Scripts where'nt being saved, this has been corrected.
- Rooms wheren't being loaded when supplied via the command line argument (Method is used by the Zone Builder)
 - Displaying scripts within the Designer is now fixed.

Zone Builder:
 - Now displays the Zone Object Properties in the property grid.
2009-11-28 08:01:19 -08:00
Scionwest_cp
24b5c3f687 Visual Designer:
- Deleted from Solution.

Mud Designer:
 - Now checks for arguments, allowing the other editors to launch the Mud Designer with another editor supplied as an argument, allowing one editor to launch another one without needing to copy-paste a bunch of code.

MUD Engine:
 - BaseObject now sets default values for Script and Name so it's child classes won't need to.
 - Realm and Room no longer set Name and Script property default values.

Realm Explorer:
 - Now validates Script code.
 - Changed from using Managed Scripting Serialization to MUDEngine filesystem layer for saving/loading.
 - Added support for launching the Zone Builder from within the Realm Explorer.

Room Designer:
 - Changed from using Managed Scripting Serialization code, to MUD Engine Filesystem layer for saving/loading.

Zone Builder:
 - Initial UI Designs
 - Launches Room Designer for editing of rooms.
2009-11-28 00:30:40 -08:00
Scionwest_cp
0b350c3222 MUD Engine:
- Assigned Default property values to some of the Realm class properties

Realm Explorer:
 - Can now delete existing Realms
 - Script tab included into explorer
 - Realm base script is generated now.
 - Realm Exporer now asks to overwrite an existing file prior to saving.

Room Designer:
 - Creating a new room now resets the script.
2009-11-27 23:44:11 -08:00
Scionwest_cp
7869b47411 Solution clean up. 2009-11-27 23:24:57 -08:00
Scionwest_cp
1db34a469c Mud Engine:
- ValidateDataPaths no longer creates a ROOT folder as a child folder to the Data directory.
 - The Realm class now has a Zones collection property.
 - Adjusted Room and ProjectInformation Property Categories for Property Grid.

Realm Explorer:
 - Now Save and Loads Realms
 - Now calls MUDEngine.Engine.ValidateDataPaths() during startup to ensure all directories exists.
 - New Realms can be created.
 - Existing Realms are now loaded into the listbox.
 - Prototype code wrote for finding available and un-available Zones.
 - Almost complete UI

Zone Builder:
 - Now calls MUDEngine.Engine.ValidateDataPaths() during startup to ensure all directories exists.
2009-11-27 22:40:13 -08:00
Scionwest_cp
8486088e17 MUD Engine:
- Added additional script over-rideable Methods.
 - Room Designer can now compile scripts for error checking.
2009-11-27 22:09:56 -08:00
Scionwest_cp
bc6bfeaecd Added missing .resx files for the Zone Builder and Realm Explorer Forms. 2009-11-27 21:56:14 -08:00
Scionwest_cp
9a00e47902 MUD Engine:
- Fixed ProjectInformation crashing the engine when it was serialized out by the Project Manager due to Currency serialization issues.
 - Fixed ProjectInformation crashing the engine when it was serializing out the custom BaseObject Controls. [XmlIgnore()] attribute must be attached to each Control Property.
 - Added Zone Builder and Realm Explorer to the Mud Designer Editor list.
 - Currency Editor now loads and displays previously created Currencies within the list.
2009-11-27 21:51:04 -08:00
Scionwest_cp
2f6dc95adb Realm Explorer:
- Implemented UI designs.
2009-11-27 21:29:18 -08:00
Scionwest_cp
ced376e72a Zone Builder:
- Renamed Form1 to frmMain
2009-11-27 20:56:25 -08:00
Scionwest_cp
a45f867bb1 Added two new projects to the solution.
Realm Explorer added.
Zone Builder added.
2009-11-27 20:55:01 -08:00
Scionwest_cp
c4e423fc25 Visual Components:
- Removed the project from the solution, as the Controls have been moved into the MUD Engine project.
2009-11-27 20:48:35 -08:00
Scionwest_cp
72a111c09d Mud Engine:
- Added Controls namespace to the engine
 - Copied VisualContainer and RoomControl from Visual Designer to MUDEngine.Controls namespace
 - Added Control property to BaseObject, all objects now can have a custom UserControl that the Visual Designer will create during runtime when the object is dragged to the designer.
2009-11-27 20:44:15 -08:00
Scionwest_cp
5b6ea538d5 Room Designer:
- Designer now checks the argument to ensure room= format was used instead of assuming.
2009-11-25 21:28:11 -08:00
Scionwest_cp
dae777bc24 Room Designer:
- Cleaned up un-used code
 - Removed un-used Fields
 - Rooms can now be saved via the UI
 - Rooms can be loaded via a command line argument "room=Room Name.room"
2009-11-25 21:25:01 -08:00
Scionwest_cp
1cc477f23c MUD Engine:
- Changed ValidateProjectPath to ValidateDataPaths. Now can use the engines current install location if a path is not supplied
 - ValidateDataPaths iterates through a new enumerator containing all of the data paths, and creates the directories if they dont exist.
 - GetDataPath method added for returning the absolute path to any of the save directories specified in the argument.
 - BaseObject now contains a readonly Filename property that returns the objects Name with it's Type assigned as the files extension.
 - BaseObject's Script property was added.
 - Room.StatDrain re-added. Changed property Type to boolean instead of custom struct.
 - Room Designer's constructor code was refracted to help clean it up. Plugin loading, doorway list compiling and room setup is now contained in three different methods.
 - Room Designer can now Save scripts.
 - Room Designer now has default scripts generated.
 - Changing the Object Management tabs to 'Script' now refreshes the script to display correctly.
 - Room Designer now accepts a single argument for specifying the name of a room to Load. Use "room=Room Name.room" as the syntax.
 - Room loading is implemented, but only via a supplied argument during application launch.
2009-11-25 21:21:50 -08:00
Scionwest_cp
d7d92e49af MUD Engine:
* Door.cs - Now has a parameterless constructor. Adding a constructor argument broke the Project Manager Project Serialization save code.
2009-11-24 18:50:02 -08:00