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.
This commit is contained in:
parent
41047da6d1
commit
dfbc92c5d0
9 changed files with 370 additions and 108 deletions
6
Mud Designer/Editors/ExistingRealms.Designer.cs
generated
6
Mud Designer/Editors/ExistingRealms.Designer.cs
generated
|
@ -39,8 +39,9 @@
|
|||
this.btnTransfer.Name = "btnTransfer";
|
||||
this.btnTransfer.Size = new System.Drawing.Size(242, 23);
|
||||
this.btnTransfer.TabIndex = 1;
|
||||
this.btnTransfer.Text = "Transfer Zone to Selected Realm";
|
||||
this.btnTransfer.Text = "Select Realm";
|
||||
this.btnTransfer.UseVisualStyleBackColor = true;
|
||||
this.btnTransfer.Click += new System.EventHandler(this.btnTransfer_Click);
|
||||
//
|
||||
// lstRealms
|
||||
//
|
||||
|
@ -49,7 +50,8 @@
|
|||
this.lstRealms.Location = new System.Drawing.Point(0, 0);
|
||||
this.lstRealms.Name = "lstRealms";
|
||||
this.lstRealms.Size = new System.Drawing.Size(242, 277);
|
||||
this.lstRealms.TabIndex = 2;
|
||||
this.lstRealms.TabIndex = 3;
|
||||
this.lstRealms.SelectedIndexChanged += new System.EventHandler(this.lstRealms_SelectedIndexChanged);
|
||||
//
|
||||
// ExistingRealms
|
||||
//
|
||||
|
|
|
@ -6,6 +6,7 @@ using System.Drawing;
|
|||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using System.IO;
|
||||
using MudDesigner.MudEngine.FileSystem;
|
||||
using MudDesigner.MudEngine.GameObjects;
|
||||
using MudDesigner.MudEngine.GameObjects.Environment;
|
||||
|
@ -14,22 +15,45 @@ namespace MudDesigner.Editors
|
|||
{
|
||||
public partial class ExistingRealms : Form
|
||||
{
|
||||
Zone _Zone;
|
||||
List<Realm> realms = new List<Realm>();
|
||||
internal string _RealmFilename = "";
|
||||
internal string _RealmName = "";
|
||||
|
||||
public ExistingRealms(string Zone)
|
||||
public ExistingRealms()
|
||||
{
|
||||
InitializeComponent();
|
||||
_Zone = new Zone();
|
||||
string filename = System.IO.Path.Combine(FileManager.GetDataPath(Program.Realm.Name, Zone), Zone + ".zone");
|
||||
_Zone = (Zone)FileManager.Load(filename, _Zone);
|
||||
|
||||
string[] realms = System.IO.Directory.GetFiles(FileManager.GetDataPath(SaveDataTypes.Realms), "*.realm");
|
||||
foreach (string file in realms)
|
||||
string realmRoot = FileManager.GetDataPath(SaveDataTypes.Realms);
|
||||
string[] realmFiles = Directory.GetFiles(realmRoot, "*.realm", SearchOption.AllDirectories);
|
||||
|
||||
foreach (string file in realmFiles)
|
||||
{
|
||||
Realm r = new Realm();
|
||||
r = (Realm)FileManager.Load(file, r);
|
||||
realms.Add(r);
|
||||
}
|
||||
|
||||
foreach (Realm realm in realms)
|
||||
{
|
||||
Realm realm = new Realm();
|
||||
realm = (Realm)FileManager.Load(file, realm);
|
||||
lstRealms.Items.Add(realm.Name);
|
||||
}
|
||||
}
|
||||
|
||||
private void btnTransfer_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.Close();
|
||||
}
|
||||
|
||||
private void lstRealms_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
foreach (Realm realm in realms)
|
||||
{
|
||||
if (realm.Name == lstRealms.SelectedItem.ToString())
|
||||
{
|
||||
_RealmFilename = realm.Filename;
|
||||
_RealmName = realm.Name;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -79,7 +79,7 @@ namespace MudDesigner.Editors
|
|||
}
|
||||
}
|
||||
|
||||
bool RealmExists(string realm)
|
||||
internal bool RealmExists(string realm)
|
||||
{
|
||||
string realmPath = Path.Combine(FileManager.GetDataPath(SaveDataTypes.Realms), realm);
|
||||
if (Directory.Exists(realm))
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.IO;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
|
@ -20,10 +21,149 @@ namespace MudDesigner.Editors
|
|||
public partial class ZoneBuilder : Form
|
||||
{
|
||||
internal bool IsEditingExisting = false;
|
||||
bool IsRealmLoaded = false;
|
||||
List<Zone> _Zones = new List<Zone>();
|
||||
|
||||
public ZoneBuilder()
|
||||
{
|
||||
InitializeComponent();
|
||||
//Reinstance all of our environments
|
||||
Program.Realm = new Realm();
|
||||
Program.Zone = new Zone();
|
||||
Program.Room = new Room();
|
||||
}
|
||||
|
||||
private void btnNewRealm_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsRealmLoaded)
|
||||
{
|
||||
MessageBox.Show("You need to select a Realm to create a Zone in first.",
|
||||
"Zone Builder", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
|
||||
return;
|
||||
}
|
||||
|
||||
Program.Zone = new Zone();
|
||||
Program.Zone.Realm = Program.Realm.Name;
|
||||
propertyZone.SelectedObject = Program.Zone;
|
||||
}
|
||||
|
||||
private void btnSaveRealm_Click(object sender, EventArgs e)
|
||||
{
|
||||
//Get the realm and zone path setup first
|
||||
string realmPath = System.IO.Path.Combine(FileManager.GetDataPath(SaveDataTypes.Realms), Program.Realm.Name);
|
||||
string zonePath = Path.Combine(realmPath, Program.Zone.Name);
|
||||
string zoneFile = Path.Combine(zonePath, Program.Zone.Filename);
|
||||
|
||||
if (!Directory.Exists(zonePath))
|
||||
Directory.CreateDirectory(zonePath);
|
||||
|
||||
//adjust our realm
|
||||
if (!Program.Realm.Zones.Contains(Program.Zone.Filename))
|
||||
Program.Realm.Zones.Add(Program.Zone.Filename);
|
||||
|
||||
//save the Zone
|
||||
FileManager.Save(zoneFile, Program.Zone);
|
||||
|
||||
//Re-save the realm, as we have changed it's Zone collection
|
||||
FileManager.Save(Path.Combine(realmPath, Program.Realm.Filename), Program.Realm);
|
||||
|
||||
//add it to the list box if it isn't already there
|
||||
if (!lstZones.Items.Contains(Program.Zone.Name))
|
||||
lstZones.Items.Add(Program.Zone.Name);
|
||||
|
||||
//Store it in our collection.
|
||||
foreach (Zone zone in _Zones)
|
||||
{
|
||||
//Check if we have a zone that exists already
|
||||
//with that name, incase the user is just editing it.
|
||||
if (zone.Name == Program.Zone.Name)
|
||||
{
|
||||
//remove it.
|
||||
_Zones.Remove(zone);
|
||||
break;
|
||||
}
|
||||
}
|
||||
//Add the zone to our collection
|
||||
_Zones.Add(Program.Zone);
|
||||
}
|
||||
|
||||
private void btnSelectRealm_Click(object sender, EventArgs e)
|
||||
{
|
||||
//instance a form displaying all of the realms
|
||||
ExistingRealms form = new ExistingRealms();
|
||||
form.Text = "Zones owning Realm.";
|
||||
//show the form
|
||||
form.Show();
|
||||
this.Hide();
|
||||
|
||||
//wait for it to be closed
|
||||
while (form.Created)
|
||||
Application.DoEvents();
|
||||
|
||||
//Restore the zone builder
|
||||
this.Show();
|
||||
|
||||
//Check if we have selected a realm or not
|
||||
//if not, then cancel creating the zone
|
||||
if (form.lstRealms.SelectedIndex == -1)
|
||||
return;
|
||||
|
||||
//Load it
|
||||
string realmPath = Path.Combine(FileManager.GetDataPath(SaveDataTypes.Realms), form._RealmName);
|
||||
string realmFile = Path.Combine(realmPath, form._RealmFilename);
|
||||
Program.Realm = (Realm)FileManager.Load(realmFile, Program.Realm);
|
||||
|
||||
this.Text = "Zone Builder: (" + Program.Realm.Name + ")";
|
||||
IsRealmLoaded = true;
|
||||
|
||||
//realm is loaded, now clear out the list of zones and show the zones contained
|
||||
//within the new realm
|
||||
lstZones.Items.Clear();
|
||||
_Zones.Clear();
|
||||
string[] files = Directory.GetFiles(realmPath, "*.zone", SearchOption.AllDirectories);
|
||||
|
||||
foreach (string file in files)
|
||||
{
|
||||
string filename = Path.GetFileName(file);
|
||||
if (Program.Realm.Zones.Contains(filename))
|
||||
{
|
||||
Zone zone = new Zone();
|
||||
zone = (Zone)FileManager.Load(file, zone);
|
||||
_Zones.Add(zone);
|
||||
lstZones.Items.Add(zone.Name);
|
||||
}
|
||||
else
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
private void btnLoadRealm_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsRealmLoaded)
|
||||
{
|
||||
MessageBox.Show("You must first select a realm in order to view Zones for loading.",
|
||||
"Zone Builder", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
|
||||
return;
|
||||
}
|
||||
|
||||
if (lstZones.SelectedIndex == -1)
|
||||
{
|
||||
MessageBox.Show("Select a Zone to load first.", "Zone Builder", MessageBoxButtons.OK);
|
||||
return;
|
||||
}
|
||||
|
||||
//Loop through the collection we generated when we selected our realm
|
||||
//and find the zone that the user selected to load
|
||||
foreach (Zone zone in _Zones)
|
||||
{
|
||||
if (zone.Name == lstZones.SelectedItem.ToString())
|
||||
{
|
||||
Program.Zone = zone;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
propertyZone.SelectedObject = Program.Zone;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
155
Mud Designer/Editors/ZoneBuilder.designer.cs
generated
155
Mud Designer/Editors/ZoneBuilder.designer.cs
generated
|
@ -30,18 +30,28 @@
|
|||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
this.containerMain = new System.Windows.Forms.SplitContainer();
|
||||
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.lstZones = new System.Windows.Forms.ListBox();
|
||||
this.groupBox2 = new System.Windows.Forms.GroupBox();
|
||||
this.btnSelectRealm = new System.Windows.Forms.Button();
|
||||
this.btnLoadRealm = new System.Windows.Forms.Button();
|
||||
this.btnSaveRealm = new System.Windows.Forms.Button();
|
||||
this.btnDeleteRealm = new System.Windows.Forms.Button();
|
||||
this.btnNewRealm = new System.Windows.Forms.Button();
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.lstZones = new System.Windows.Forms.ListBox();
|
||||
this.tabZoneBuilder = new System.Windows.Forms.TabControl();
|
||||
this.tabZone = new System.Windows.Forms.TabPage();
|
||||
this.groupBox3 = new System.Windows.Forms.GroupBox();
|
||||
this.propertyZone = new System.Windows.Forms.PropertyGrid();
|
||||
this.tabPage2 = new System.Windows.Forms.TabPage();
|
||||
this.Help = new System.Windows.Forms.ToolTip(this.components);
|
||||
this.containerMain.Panel1.SuspendLayout();
|
||||
this.containerMain.Panel2.SuspendLayout();
|
||||
this.containerMain.SuspendLayout();
|
||||
this.groupBox2.SuspendLayout();
|
||||
this.groupBox1.SuspendLayout();
|
||||
this.groupBox2.SuspendLayout();
|
||||
this.tabZoneBuilder.SuspendLayout();
|
||||
this.tabZone.SuspendLayout();
|
||||
this.groupBox3.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// containerMain
|
||||
|
@ -54,18 +64,38 @@
|
|||
//
|
||||
this.containerMain.Panel1.Controls.Add(this.groupBox1);
|
||||
this.containerMain.Panel1.Controls.Add(this.groupBox2);
|
||||
this.containerMain.Size = new System.Drawing.Size(758, 471);
|
||||
this.containerMain.SplitterDistance = 203;
|
||||
//
|
||||
// containerMain.Panel2
|
||||
//
|
||||
this.containerMain.Panel2.Controls.Add(this.tabZoneBuilder);
|
||||
this.containerMain.Size = new System.Drawing.Size(650, 471);
|
||||
this.containerMain.SplitterDistance = 195;
|
||||
this.containerMain.TabIndex = 0;
|
||||
//
|
||||
// toolTip1
|
||||
// groupBox1
|
||||
//
|
||||
this.toolTip1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
|
||||
this.toolTip1.IsBalloon = true;
|
||||
this.toolTip1.ToolTipTitle = "Zone Designer";
|
||||
this.groupBox1.Controls.Add(this.lstZones);
|
||||
this.groupBox1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.groupBox1.Location = new System.Drawing.Point(0, 100);
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Size = new System.Drawing.Size(195, 371);
|
||||
this.groupBox1.TabIndex = 37;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "Zone List";
|
||||
//
|
||||
// lstZones
|
||||
//
|
||||
this.lstZones.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.lstZones.FormattingEnabled = true;
|
||||
this.lstZones.Location = new System.Drawing.Point(3, 16);
|
||||
this.lstZones.Name = "lstZones";
|
||||
this.lstZones.Size = new System.Drawing.Size(189, 342);
|
||||
this.lstZones.Sorted = true;
|
||||
this.lstZones.TabIndex = 17;
|
||||
//
|
||||
// groupBox2
|
||||
//
|
||||
this.groupBox2.Controls.Add(this.btnSelectRealm);
|
||||
this.groupBox2.Controls.Add(this.btnLoadRealm);
|
||||
this.groupBox2.Controls.Add(this.btnSaveRealm);
|
||||
this.groupBox2.Controls.Add(this.btnDeleteRealm);
|
||||
|
@ -73,11 +103,22 @@
|
|||
this.groupBox2.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.groupBox2.Location = new System.Drawing.Point(0, 0);
|
||||
this.groupBox2.Name = "groupBox2";
|
||||
this.groupBox2.Size = new System.Drawing.Size(203, 76);
|
||||
this.groupBox2.Size = new System.Drawing.Size(195, 100);
|
||||
this.groupBox2.TabIndex = 35;
|
||||
this.groupBox2.TabStop = false;
|
||||
this.groupBox2.Text = "Zone Setup";
|
||||
//
|
||||
// btnSelectRealm
|
||||
//
|
||||
this.btnSelectRealm.Dock = System.Windows.Forms.DockStyle.Bottom;
|
||||
this.btnSelectRealm.Location = new System.Drawing.Point(3, 74);
|
||||
this.btnSelectRealm.Name = "btnSelectRealm";
|
||||
this.btnSelectRealm.Size = new System.Drawing.Size(189, 23);
|
||||
this.btnSelectRealm.TabIndex = 12;
|
||||
this.btnSelectRealm.Text = "Select Realm";
|
||||
this.btnSelectRealm.UseVisualStyleBackColor = true;
|
||||
this.btnSelectRealm.Click += new System.EventHandler(this.btnSelectRealm_Click);
|
||||
//
|
||||
// btnLoadRealm
|
||||
//
|
||||
this.btnLoadRealm.Location = new System.Drawing.Point(106, 19);
|
||||
|
@ -86,6 +127,7 @@
|
|||
this.btnLoadRealm.TabIndex = 11;
|
||||
this.btnLoadRealm.Text = "Load Zone";
|
||||
this.btnLoadRealm.UseVisualStyleBackColor = true;
|
||||
this.btnLoadRealm.Click += new System.EventHandler(this.btnLoadRealm_Click);
|
||||
//
|
||||
// btnSaveRealm
|
||||
//
|
||||
|
@ -95,6 +137,7 @@
|
|||
this.btnSaveRealm.TabIndex = 10;
|
||||
this.btnSaveRealm.Text = "Save Zone";
|
||||
this.btnSaveRealm.UseVisualStyleBackColor = true;
|
||||
this.btnSaveRealm.Click += new System.EventHandler(this.btnSaveRealm_Click);
|
||||
//
|
||||
// btnDeleteRealm
|
||||
//
|
||||
|
@ -113,44 +156,86 @@
|
|||
this.btnNewRealm.TabIndex = 8;
|
||||
this.btnNewRealm.Text = "New Zone";
|
||||
this.btnNewRealm.UseVisualStyleBackColor = true;
|
||||
this.btnNewRealm.Click += new System.EventHandler(this.btnNewRealm_Click);
|
||||
//
|
||||
// groupBox1
|
||||
// tabZoneBuilder
|
||||
//
|
||||
this.groupBox1.Controls.Add(this.lstZones);
|
||||
this.groupBox1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.groupBox1.Location = new System.Drawing.Point(0, 76);
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Size = new System.Drawing.Size(203, 395);
|
||||
this.groupBox1.TabIndex = 37;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "Zone List";
|
||||
this.tabZoneBuilder.Controls.Add(this.tabZone);
|
||||
this.tabZoneBuilder.Controls.Add(this.tabPage2);
|
||||
this.tabZoneBuilder.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tabZoneBuilder.Location = new System.Drawing.Point(0, 0);
|
||||
this.tabZoneBuilder.Name = "tabZoneBuilder";
|
||||
this.tabZoneBuilder.SelectedIndex = 0;
|
||||
this.tabZoneBuilder.Size = new System.Drawing.Size(451, 471);
|
||||
this.tabZoneBuilder.TabIndex = 0;
|
||||
//
|
||||
// lstZones
|
||||
// tabZone
|
||||
//
|
||||
this.lstZones.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.lstZones.FormattingEnabled = true;
|
||||
this.lstZones.Location = new System.Drawing.Point(3, 16);
|
||||
this.lstZones.Name = "lstZones";
|
||||
this.lstZones.Size = new System.Drawing.Size(197, 368);
|
||||
this.lstZones.Sorted = true;
|
||||
this.lstZones.TabIndex = 17;
|
||||
this.tabZone.Controls.Add(this.groupBox3);
|
||||
this.tabZone.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabZone.Name = "tabZone";
|
||||
this.tabZone.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabZone.Size = new System.Drawing.Size(443, 445);
|
||||
this.tabZone.TabIndex = 0;
|
||||
this.tabZone.Text = "Zone Editing";
|
||||
this.tabZone.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// groupBox3
|
||||
//
|
||||
this.groupBox3.Controls.Add(this.propertyZone);
|
||||
this.groupBox3.Dock = System.Windows.Forms.DockStyle.Left;
|
||||
this.groupBox3.Location = new System.Drawing.Point(3, 3);
|
||||
this.groupBox3.Name = "groupBox3";
|
||||
this.groupBox3.Size = new System.Drawing.Size(253, 439);
|
||||
this.groupBox3.TabIndex = 0;
|
||||
this.groupBox3.TabStop = false;
|
||||
this.groupBox3.Text = "Zone Properties";
|
||||
//
|
||||
// propertyZone
|
||||
//
|
||||
this.propertyZone.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.propertyZone.Location = new System.Drawing.Point(3, 16);
|
||||
this.propertyZone.Name = "propertyZone";
|
||||
this.propertyZone.Size = new System.Drawing.Size(247, 420);
|
||||
this.propertyZone.TabIndex = 0;
|
||||
this.propertyZone.ToolbarVisible = false;
|
||||
//
|
||||
// tabPage2
|
||||
//
|
||||
this.tabPage2.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPage2.Name = "tabPage2";
|
||||
this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage2.Size = new System.Drawing.Size(443, 445);
|
||||
this.tabPage2.TabIndex = 1;
|
||||
this.tabPage2.Text = "tabPage2";
|
||||
this.tabPage2.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// Help
|
||||
//
|
||||
this.Help.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
|
||||
this.Help.IsBalloon = true;
|
||||
this.Help.ToolTipTitle = "Zone Designer";
|
||||
//
|
||||
// ZoneBuilder
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(758, 471);
|
||||
this.ClientSize = new System.Drawing.Size(650, 471);
|
||||
this.Controls.Add(this.containerMain);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "ZoneBuilder";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "Zone Builder";
|
||||
this.Text = "Zone Builder (No Realm Selected)";
|
||||
this.containerMain.Panel1.ResumeLayout(false);
|
||||
this.containerMain.Panel2.ResumeLayout(false);
|
||||
this.containerMain.ResumeLayout(false);
|
||||
this.groupBox2.ResumeLayout(false);
|
||||
this.groupBox1.ResumeLayout(false);
|
||||
this.groupBox2.ResumeLayout(false);
|
||||
this.tabZoneBuilder.ResumeLayout(false);
|
||||
this.tabZone.ResumeLayout(false);
|
||||
this.groupBox3.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
@ -158,7 +243,7 @@
|
|||
#endregion
|
||||
|
||||
private System.Windows.Forms.SplitContainer containerMain;
|
||||
private System.Windows.Forms.ToolTip toolTip1;
|
||||
private System.Windows.Forms.ToolTip Help;
|
||||
private System.Windows.Forms.GroupBox groupBox2;
|
||||
private System.Windows.Forms.Button btnLoadRealm;
|
||||
private System.Windows.Forms.Button btnSaveRealm;
|
||||
|
@ -166,6 +251,12 @@
|
|||
private System.Windows.Forms.Button btnNewRealm;
|
||||
private System.Windows.Forms.GroupBox groupBox1;
|
||||
private System.Windows.Forms.ListBox lstZones;
|
||||
private System.Windows.Forms.TabControl tabZoneBuilder;
|
||||
private System.Windows.Forms.TabPage tabZone;
|
||||
private System.Windows.Forms.TabPage tabPage2;
|
||||
private System.Windows.Forms.GroupBox groupBox3;
|
||||
private System.Windows.Forms.PropertyGrid propertyZone;
|
||||
private System.Windows.Forms.Button btnSelectRealm;
|
||||
|
||||
}
|
||||
}
|
|
@ -117,7 +117,7 @@
|
|||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<metadata name="Help.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
</root>
|
|
@ -22,7 +22,7 @@ namespace MudDesigner.MudEngine.GameObjects
|
|||
set
|
||||
{
|
||||
this._Name = value;
|
||||
this.Filename = value + ".realm";
|
||||
this.Filename = value + "." + this.GetType().Name.ToLower();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -37,7 +37,6 @@ namespace MudDesigner.MudEngine.GameObjects
|
|||
public string Script { get; set; }
|
||||
|
||||
[Category("Object Setup")]
|
||||
[DefaultValue("New Realm.realm")]
|
||||
public string Filename
|
||||
{
|
||||
//Returns the name of the object + the objects Type as it's extension.
|
||||
|
@ -48,21 +47,60 @@ namespace MudDesigner.MudEngine.GameObjects
|
|||
}
|
||||
set
|
||||
{
|
||||
if (!value.EndsWith(".realm"))
|
||||
value += ".realm";
|
||||
string extension = "." + this.GetType().Name.ToLower();
|
||||
if (!value.EndsWith(extension))
|
||||
value += extension;
|
||||
|
||||
this._Filename = value;
|
||||
}
|
||||
}
|
||||
|
||||
private string _Filename = "New Realm.realm";
|
||||
private string _Name = "New Realm";
|
||||
[Category("Senses")]
|
||||
[DefaultValue("You don't smell anything unsual.")]
|
||||
public string Smell
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
[Category("Senses")]
|
||||
[DefaultValue("You hear nothing of interest.")]
|
||||
public string Listen
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
[Category("Senses")]
|
||||
[DefaultValue("You feel nothing.")]
|
||||
public string Feel
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
[Category("Environment Information")]
|
||||
[DefaultValue(false)]
|
||||
public bool IsSafe
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
private string _Filename = "";
|
||||
private string _Name = "";
|
||||
/// <summary>
|
||||
/// Initializes the base object
|
||||
/// </summary>
|
||||
public BaseObject()
|
||||
{
|
||||
Script = "";
|
||||
_Name = "New " + this.GetType().Name;
|
||||
_Filename = _Name + "." + this.GetType().Name.ToLower();
|
||||
|
||||
this.Feel = "You feel nothing.";
|
||||
this.Listen = "You hear nothing of interest.";
|
||||
this.Smell = "You don't smell anything unsual.";
|
||||
this.Name = DefaultName();
|
||||
SetupScript();
|
||||
}
|
||||
|
|
|
@ -9,54 +9,6 @@ namespace MudDesigner.MudEngine.GameObjects.Environment
|
|||
{
|
||||
public class Room : BaseObject
|
||||
{
|
||||
[Category("Room Senses")]
|
||||
[DefaultValue("You don't smell anything unsual.")]
|
||||
public string Smell
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
[Category("Room Senses")]
|
||||
[DefaultValue("You hear nothing of interest.")]
|
||||
public string Listen
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
[Category("Room Senses")]
|
||||
[DefaultValue("You feel nothing.")]
|
||||
public string Feel
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
[Category("Room Information")]
|
||||
[DefaultValue(false)]
|
||||
public bool StatDrain
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
[Category("Room Information")]
|
||||
[DefaultValue(0)]
|
||||
public int StatDrainAmount
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
[Category("Room Information")]
|
||||
[DefaultValue(false)]
|
||||
public bool IsSafeRoom
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
[Category("Room Information")]
|
||||
[ReadOnly(true)]
|
||||
public string DoorList
|
||||
|
@ -93,10 +45,6 @@ namespace MudDesigner.MudEngine.GameObjects.Environment
|
|||
public Room()
|
||||
{
|
||||
InstalledDoors = new List<Door>();
|
||||
this.Feel = "You feel nothing.";
|
||||
this.Listen = "You hear nothing of interest.";
|
||||
this.Smell = "You don't smell anything unsual.";
|
||||
this.StatDrainAmount = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,20 +2,39 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.ComponentModel;
|
||||
|
||||
namespace MudDesigner.MudEngine.GameObjects.Environment
|
||||
{
|
||||
public class Zone : BaseObject
|
||||
{
|
||||
[System.ComponentModel.Browsable(false)]
|
||||
public string Realm
|
||||
|
||||
[Category("Environment Information")]
|
||||
[DefaultValue(0)]
|
||||
public int StatDrainAmount
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
[System.ComponentModel.Browsable(false)]
|
||||
public List<Room> Rooms { get; set; }
|
||||
[Category("Environment Information")]
|
||||
[DefaultValue(false)]
|
||||
public bool StatDrain
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
[ReadOnly(true)]
|
||||
[Category("Environment Information")]
|
||||
public string Realm
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
internal List<Room> Rooms { get; set; }
|
||||
|
||||
|
||||
|
||||
public Zone()
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue