diff --git a/Mud Designer/MudEngine/UITypeEditors/UIDoorwayControl.cs b/Mud Designer/MudEngine/UITypeEditors/UIDoorwayControl.cs
index 1254673..a07dfd3 100644
--- a/Mud Designer/MudEngine/UITypeEditors/UIDoorwayControl.cs
+++ b/Mud Designer/MudEngine/UITypeEditors/UIDoorwayControl.cs
@@ -123,6 +123,8 @@ namespace MudDesigner.MudEngine.UITypeEditors
r.Name = e.ChangedItem.Value.ToString();
r.Realm = _Room.Realm;
r.Zone = _Room.Zone;
+ Door d = new Door(TravelDirections.GetReverseDirection(_Door.TravelDirection), _Room.Name);
+ r.Doorways.Add(d);
r.Save(Path.Combine(roomPath, r.Filename));
}
diff --git a/Mud Designer/MudEngine/UITypeEditors/UIDoorwayEditor.cs b/Mud Designer/MudEngine/UITypeEditors/UIDoorwayEditor.cs
index 4a17fe7..a274da3 100644
--- a/Mud Designer/MudEngine/UITypeEditors/UIDoorwayEditor.cs
+++ b/Mud Designer/MudEngine/UITypeEditors/UIDoorwayEditor.cs
@@ -20,29 +20,13 @@ namespace MudDesigner.MudEngine.UITypeEditors
UIDoorwayControl ctl = new UIDoorwayControl(room);
ctl.ShowDialog();
- //Load the Zone that this room belongs to.
- string zonePath = "";
-
- if (room.Realm == "No Realm Associated.")
- {
- zonePath = FileManager.GetDataPath(SaveDataTypes.Zones);
- }
- else
- {
- zonePath = FileManager.GetDataPath(room.Realm, room.Zone);
- }
-
- zonePath = Path.Combine(zonePath, room.Zone);
- string zoneFile = Path.Combine(zonePath, room.Zone + ".zone");
- Zone z = new Zone();
- z = (Zone)z.Load(zoneFile);
-
//Get an instance of the current Room Editor so we can refresh it.
//it requires the zone it belongs to, to be passed into the constructor
UIRoomControl roomEd =(UIRoomControl)Program.CurrentEditor;
roomEd.RefreshRoomList();
-
+ roomEd.SaveSelected();
+
return room.Doorways;
}
diff --git a/Mud Designer/MudEngine/UITypeEditors/UIRoomControl.cs b/Mud Designer/MudEngine/UITypeEditors/UIRoomControl.cs
index 534b3bd..2e78e61 100644
--- a/Mud Designer/MudEngine/UITypeEditors/UIRoomControl.cs
+++ b/Mud Designer/MudEngine/UITypeEditors/UIRoomControl.cs
@@ -16,7 +16,7 @@ namespace MudDesigner.MudEngine.UITypeEditors
{
public partial class UIRoomControl : Form
{
- bool IsSaved;
+ public bool IsSaved;
Room _Room;
Zone _Zone;
string savePath = "";
@@ -74,7 +74,7 @@ namespace MudDesigner.MudEngine.UITypeEditors
return true;
}
- private void SaveSelected()
+ public void SaveSelected()
{
if (!Directory.Exists(savePath))
Directory.CreateDirectory(savePath);
@@ -167,6 +167,11 @@ namespace MudDesigner.MudEngine.UITypeEditors
if (lstRooms.SelectedIndex == -1)
return;
+ if (!CheckSavedState())
+ {
+ return;
+ }
+
string roomName = lstRooms.SelectedItem.ToString();
string zonePath = "";
string zoneRoomPath = "";
diff --git a/Mud Designer/Runtime.Designer.cs b/Mud Designer/Runtime.Designer.cs
new file mode 100644
index 0000000..f055130
--- /dev/null
+++ b/Mud Designer/Runtime.Designer.cs
@@ -0,0 +1,98 @@
+namespace MudDesigner
+{
+ partial class Runtime
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+ this.txtCommand = new System.Windows.Forms.TextBox();
+ this.txtConsole = new System.Windows.Forms.RichTextBox();
+ this.splitContainer1.Panel1.SuspendLayout();
+ this.splitContainer1.Panel2.SuspendLayout();
+ this.splitContainer1.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // splitContainer1
+ //
+ this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+ this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+ this.splitContainer1.Name = "splitContainer1";
+ this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
+ //
+ // splitContainer1.Panel1
+ //
+ this.splitContainer1.Panel1.Controls.Add(this.txtConsole);
+ //
+ // splitContainer1.Panel2
+ //
+ this.splitContainer1.Panel2.Controls.Add(this.txtCommand);
+ this.splitContainer1.Size = new System.Drawing.Size(693, 422);
+ this.splitContainer1.SplitterDistance = 393;
+ this.splitContainer1.TabIndex = 0;
+ //
+ // txtCommand
+ //
+ this.txtCommand.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.txtCommand.Location = new System.Drawing.Point(0, 0);
+ this.txtCommand.Name = "txtCommand";
+ this.txtCommand.Size = new System.Drawing.Size(693, 20);
+ this.txtCommand.TabIndex = 1;
+ this.txtCommand.TextChanged += new System.EventHandler(this.txtCommand_TextChanged);
+ //
+ // txtConsole
+ //
+ this.txtConsole.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.txtConsole.Location = new System.Drawing.Point(0, 0);
+ this.txtConsole.Name = "txtConsole";
+ this.txtConsole.Size = new System.Drawing.Size(693, 393);
+ this.txtConsole.TabIndex = 0;
+ this.txtConsole.Text = "";
+ //
+ // Runtime
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(693, 422);
+ this.Controls.Add(this.splitContainer1);
+ this.Name = "Runtime";
+ this.Text = "Runtime";
+ this.splitContainer1.Panel1.ResumeLayout(false);
+ this.splitContainer1.Panel2.ResumeLayout(false);
+ this.splitContainer1.Panel2.PerformLayout();
+ this.splitContainer1.ResumeLayout(false);
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.SplitContainer splitContainer1;
+ private System.Windows.Forms.RichTextBox txtConsole;
+ private System.Windows.Forms.TextBox txtCommand;
+ }
+}
\ No newline at end of file
diff --git a/Mud Designer/Runtime.cs b/Mud Designer/Runtime.cs
new file mode 100644
index 0000000..2e0d557
--- /dev/null
+++ b/Mud Designer/Runtime.cs
@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+namespace MudDesigner
+{
+ public partial class Runtime : Form
+ {
+ public Runtime()
+ {
+ InitializeComponent();
+
+
+ }
+
+ private void txtCommand_TextChanged(object sender, EventArgs e)
+ {
+
+ }
+ }
+}
diff --git a/Mud Designer/Runtime.resx b/Mud Designer/Runtime.resx
new file mode 100644
index 0000000..ff31a6d
--- /dev/null
+++ b/Mud Designer/Runtime.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file