From f5c8ce9466305a554996ff39258c81e8847a7c55 Mon Sep 17 00:00:00 2001
From: boris_i <boris_i@e0d998f2-2e9b-42fe-843d-47128df60a06>
Date: Sat, 14 Apr 2012 12:22:19 +0000
Subject: [PATCH] Improved "make door" functionality. It now actually creates
 usable doors in Hexen and UDMF maps.

---
 Build/Configurations/Hexen.cfg                | 10 ++--
 Build/Configurations/Skulltag_DoomHexen.cfg   |  9 ++-
 Build/Configurations/ZDoom_DoomHexen.cfg      |  8 ++-
 Build/Configurations/ZDoom_DoomUDMF.cfg       |  7 ++-
 Build/Configurations/ZDoom_HereticHexen.cfg   | 11 ++--
 Build/Configurations/ZDoom_Hexen.cfg          | 10 ++--
 Build/Configurations/ZDoom_StrifeHexen.cfg    |  8 ++-
 Source/Core/Config/GameConfiguration.cs       | 31 +++++++++-
 .../BuilderModes/ClassicModes/SectorsMode.cs  | 28 ++++++++-
 .../Interface/MakeDoorForm.Designer.cs        | 58 ++++++++++++++++---
 .../BuilderModes/Interface/MakeDoorForm.cs    |  6 +-
 .../BuilderModes/Interface/MakeDoorForm.resx  | 27 ---------
 12 files changed, 149 insertions(+), 64 deletions(-)

diff --git a/Build/Configurations/Hexen.cfg b/Build/Configurations/Hexen.cfg
index ea314fd7..af407892 100644
--- a/Build/Configurations/Hexen.cfg
+++ b/Build/Configurations/Hexen.cfg
@@ -43,11 +43,13 @@ upperunpeggedflag = 8;
 lowerunpeggedflag = 16;
 
 // Door making
-makedoortrack = "DOORTRAK";
-makedooraction = 11;			// See linedeftypes
-makedoorarg0= -1;				// -1 can be used for a new sector tag here
+makedoortrack = "D_END2";
+makedooraction = 12;			// See linedeftypes
+makedooractivate = 1024;		// See linedefactivations
+makedoorflags = "512";			// see linedefflags, as string, CSV
+makedoorarg0 = 0;
 makedoorarg1 = 16;
-makedoorarg2 = 0;
+makedoorarg2 = 150;
 makedoorarg3 = 0;
 makedoorarg4 = 0;
 
diff --git a/Build/Configurations/Skulltag_DoomHexen.cfg b/Build/Configurations/Skulltag_DoomHexen.cfg
index 7e6fac37..23002c23 100644
--- a/Build/Configurations/Skulltag_DoomHexen.cfg
+++ b/Build/Configurations/Skulltag_DoomHexen.cfg
@@ -46,13 +46,16 @@ lowerunpeggedflag = 16;
 
 // Door making
 makedoortrack = "DOORTRAK";
-makedooraction = 202;			// See linedeftypes
+makedooraction = 12;		// See linedeftypes
+makedooractivate = 1024;	// See linedefactivations
+makedoorflags = { 512; }	// see linedefflags, as string, CSV
 makedoorarg0 = 0;
 makedoorarg1 = 16;
-makedoorarg2 = 0;
-makedoorarg3 = 3;
+makedoorarg2 = 150;
+makedoorarg3 = 0;
 makedoorarg4 = 0;
 
+
 // Generalized actions
 generalizedlinedefs = false;
 generalizedsectors = false;
diff --git a/Build/Configurations/ZDoom_DoomHexen.cfg b/Build/Configurations/ZDoom_DoomHexen.cfg
index 964e91f4..935feccf 100644
--- a/Build/Configurations/ZDoom_DoomHexen.cfg
+++ b/Build/Configurations/ZDoom_DoomHexen.cfg
@@ -46,11 +46,13 @@ lowerunpeggedflag = 16;
 
 // Door making
 makedoortrack = "DOORTRAK";
-makedooraction = 202;			// See linedeftypes
+makedooraction = 12;		// See linedeftypes
+makedooractivate = 1024;	// See linedefactivations
+makedoorflags { 512; }		// see linedefflags
 makedoorarg0 = 0;
 makedoorarg1 = 16;
-makedoorarg2 = 0;
-makedoorarg3 = 3;
+makedoorarg2 = 150;
+makedoorarg3 = 0;
 makedoorarg4 = 0;
 
 // Generalized actions
diff --git a/Build/Configurations/ZDoom_DoomUDMF.cfg b/Build/Configurations/ZDoom_DoomUDMF.cfg
index 1c7c6ea1..e1e5d981 100644
--- a/Build/Configurations/ZDoom_DoomUDMF.cfg
+++ b/Build/Configurations/ZDoom_DoomUDMF.cfg
@@ -47,11 +47,12 @@ lowerunpeggedflag = "dontpegbottom";
 
 // Door making
 makedoortrack = "DOORTRAK";
-makedooraction = 202;			// See linedeftypes
+makedooraction = 12;						// See linedeftypes
+makedoorflags { repeatspecial; playeruse; monsteractivate; }	// see linedefflags
 makedoorarg0 = 0;
 makedoorarg1 = 16;
-makedoorarg2 = 0;
-makedoorarg3 = 3;
+makedoorarg2 = 150;
+makedoorarg3 = 0;
 makedoorarg4 = 0;
 
 // Generalized actions
diff --git a/Build/Configurations/ZDoom_HereticHexen.cfg b/Build/Configurations/ZDoom_HereticHexen.cfg
index d323067c..bf183938 100644
--- a/Build/Configurations/ZDoom_HereticHexen.cfg
+++ b/Build/Configurations/ZDoom_HereticHexen.cfg
@@ -45,14 +45,17 @@ upperunpeggedflag = 8;
 lowerunpeggedflag = 16;
 
 // Door making
-makedoortrack = "DOORTRAK";
-makedooraction = 202;			// See linedeftypes
+makedoortrack = "METL2";
+makedooraction = 12;		// See linedeftypes
+makedooractivate = 1024;	// See linedefactivations
+makedoorflags = { 512; }	// see linedefflags
 makedoorarg0 = 0;
 makedoorarg1 = 16;
-makedoorarg2 = 0;
-makedoorarg3 = 3;
+makedoorarg2 = 150;
+makedoorarg3 = 0;
 makedoorarg4 = 0;
 
+
 // Generalized actions
 generalizedlinedefs = false;
 generalizedsectors = true;
diff --git a/Build/Configurations/ZDoom_Hexen.cfg b/Build/Configurations/ZDoom_Hexen.cfg
index 29a027d4..1dc7803a 100644
--- a/Build/Configurations/ZDoom_Hexen.cfg
+++ b/Build/Configurations/ZDoom_Hexen.cfg
@@ -45,11 +45,13 @@ upperunpeggedflag = 8;
 lowerunpeggedflag = 16;
 
 // Door making
-makedoortrack = "DOORTRAK";
-makedooraction = 11;			// See linedeftypes
-makedoorarg0 = -1;				// -1 can be used for a new sector tag here
+makedoortrack = "D_END2";
+makedooraction = 12;		// See linedeftypes
+makedooractivate = 1024;	// See linedefactivations
+makedoorflags = { 512; }	// see linedefflags
+makedoorarg0 = 0;
 makedoorarg1 = 16;
-makedoorarg2 = 0;
+makedoorarg2 = 150;
 makedoorarg3 = 0;
 makedoorarg4 = 0;
 
diff --git a/Build/Configurations/ZDoom_StrifeHexen.cfg b/Build/Configurations/ZDoom_StrifeHexen.cfg
index 43289c2e..b917552f 100644
--- a/Build/Configurations/ZDoom_StrifeHexen.cfg
+++ b/Build/Configurations/ZDoom_StrifeHexen.cfg
@@ -46,11 +46,13 @@ lowerunpeggedflag = 16;
 
 // Door making
 makedoortrack = "DOORTRAK";
-makedooraction = 202;			// See linedeftypes
+makedooraction = 12;		// See linedeftypes
+makedooractivate = 1024;	// See linedefactivations
+makedoorflags { 512; }		// see linedefflags
 makedoorarg0 = 0;
 makedoorarg1 = 16;
-makedoorarg2 = 0;
-makedoorarg3 = 3;
+makedoorarg2 = 150;
+makedoorarg3 = 0;
 makedoorarg4 = 0;
 
 // Generalized actions
diff --git a/Source/Core/Config/GameConfiguration.cs b/Source/Core/Config/GameConfiguration.cs
index cf2dac01..b5912efc 100644
--- a/Source/Core/Config/GameConfiguration.cs
+++ b/Source/Core/Config/GameConfiguration.cs
@@ -68,7 +68,9 @@ namespace CodeImp.DoomBuilder.Config
 		private bool testshortpaths;
 		private string makedoortrack;
 		private int makedooraction;
+		private int makedooractivate;
 		private int[] makedoorargs;
+		private Dictionary<string, bool> makedoorflags;
 		private bool linetagindicatesectors;
 		private string decorategames;
         private string skyflatname;
@@ -158,6 +160,8 @@ namespace CodeImp.DoomBuilder.Config
 		public bool TestShortPaths { get { return testshortpaths; } }
 		public string MakeDoorTrack { get { return makedoortrack; } }
 		public int MakeDoorAction { get { return makedooraction; } }
+		public int MakeDoorActivate { get { return makedooractivate; } }
+		public Dictionary<string, bool> MakeDoorFlags { get { return makedoorflags; } }
 		public int[] MakeDoorArgs { get { return makedoorargs; } }
 		public bool LineTagIndicatesSectors { get { return linetagindicatesectors ; } }
 		public string DecorateGames { get { return decorategames; } }
@@ -252,6 +256,7 @@ namespace CodeImp.DoomBuilder.Config
 			this.linedefflagstranslation = new List<FlagTranslation>();
 			this.thingfilters = new List<ThingsFilter>();
 			this.brightnesslevels = new StepsList();
+			this.makedoorflags = new Dictionary<string, bool>();
 			
 			// Read general settings
 			configname = cfg.ReadSetting("game", "<unnamed game>");
@@ -271,6 +276,7 @@ namespace CodeImp.DoomBuilder.Config
 			testshortpaths = cfg.ReadSetting("testshortpaths", false);
 			makedoortrack = cfg.ReadSetting("makedoortrack", "-");
 			makedooraction = cfg.ReadSetting("makedooraction", 0);
+			makedooractivate = cfg.ReadSetting("makedooractivate", 0);
 			linetagindicatesectors = cfg.ReadSetting("linetagindicatesectors", false);
 			decorategames = cfg.ReadSetting("decorategames", "");
             skyflatname = cfg.ReadSetting("skyflatname", "F_SKY1");
@@ -281,7 +287,7 @@ namespace CodeImp.DoomBuilder.Config
 			bottomboundary = cfg.ReadSetting("bottomboundary", -32768);
 			doomlightlevels = cfg.ReadSetting("doomlightlevels", true);
 			for(int i = 0; i < Linedef.NUM_ARGS; i++) makedoorargs[i] = cfg.ReadSetting("makedoorarg" + i.ToString(CultureInfo.InvariantCulture), 0);
-			
+
 			// Flags have special (invariant culture) conversion
 			// because they are allowed to be written as integers in the configs
 			obj = cfg.ReadSettingObject("soundlinedefflag", 0);
@@ -342,6 +348,9 @@ namespace CodeImp.DoomBuilder.Config
 			// Defaults
 			LoadTextureSets();
 			LoadThingFilters();
+
+			// Make door flags
+			LoadMakeDoorFlags();
 		}
 
 		// Destructor
@@ -764,6 +773,26 @@ namespace CodeImp.DoomBuilder.Config
 				thingfilters.Add(f);
 			}
 		}
+
+		// Make door flags
+		private void LoadMakeDoorFlags()
+		{
+			IDictionary dic;
+
+			dic = cfg.ReadSetting("makedoorflags", new Hashtable());
+			foreach (DictionaryEntry de in dic)
+			{
+				// Using minus will unset the flag
+				if (de.Key.ToString()[0] == '-')
+				{
+					makedoorflags[de.Key.ToString().TrimStart('-')] = false;
+				}
+				else
+				{
+					makedoorflags[de.Key.ToString()] = true;
+				}
+			}
+		}
 		
 		#endregion
 
diff --git a/Source/Plugins/BuilderModes/ClassicModes/SectorsMode.cs b/Source/Plugins/BuilderModes/ClassicModes/SectorsMode.cs
index bfdda646..13ea6bff 100644
--- a/Source/Plugins/BuilderModes/ClassicModes/SectorsMode.cs
+++ b/Source/Plugins/BuilderModes/ClassicModes/SectorsMode.cs
@@ -953,8 +953,10 @@ namespace CodeImp.DoomBuilder.BuilderModes
 			if(orderedselection.Count > 0)
 			{
 				string doortex = "";
+				string tracktex = General.Map.Config.MakeDoorTrack;
 				string floortex = null;
 				string ceiltex = null;
+				bool resetoffsets = true;
 				
 				// Find ceiling and floor textures
 				foreach(Sector s in orderedselection)
@@ -965,11 +967,13 @@ namespace CodeImp.DoomBuilder.BuilderModes
 				
 				// Show the dialog
 				MakeDoorForm form = new MakeDoorForm();
-				if(form.Show(General.Interface, doortex, ceiltex, floortex) == DialogResult.OK)
+				if(form.Show(General.Interface, doortex, tracktex, ceiltex, floortex, resetoffsets) == DialogResult.OK)
 				{
 					doortex = form.DoorTexture;
+					tracktex = form.TrackTexture;
 					ceiltex = form.CeilingTexture;
 					floortex = form.FloorTexture;
+					resetoffsets = form.ResetOffsets;
 					
 					// Create undo
 					General.Map.UndoRedo.CreateUndo("Make door (" + doortex + ")");
@@ -992,7 +996,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
 							{
 								// Make this a doortrak
 								sd.SetTextureHigh("-");
-								sd.SetTextureMid(General.Map.Config.MakeDoorTrack);
+								sd.SetTextureMid(tracktex);
 								sd.SetTextureLow("-");
 
 								// Set upper/lower unpegged flags
@@ -1013,6 +1017,13 @@ namespace CodeImp.DoomBuilder.BuilderModes
 								// Get door linedef type from config
 								sd.Line.Action = General.Map.Config.MakeDoorAction;
 
+								// Set activation type
+								sd.Line.Activate = General.Map.Config.MakeDoorActivate;
+
+								// Set the flags
+								foreach(var flagpair in General.Map.Config.MakeDoorFlags)
+									sd.Line.SetFlag(flagpair.Key, flagpair.Value);
+
 								// Set the linedef args
 								for(int i = 0; i < Linedef.NUM_ARGS; i++)
 								{
@@ -1037,6 +1048,19 @@ namespace CodeImp.DoomBuilder.BuilderModes
 									sd.Line.FlipSidedefs();
 								}
 							}
+
+							// Reset the texture offsets if required
+							if (resetoffsets)
+							{
+								sd.OffsetX = 0;
+								sd.OffsetY = 0;
+
+								if (sd.Other != null)
+								{
+									sd.Other.OffsetX = 0;
+									sd.Other.OffsetY = 0;
+								}
+							}
 						}
 					}
 					
diff --git a/Source/Plugins/BuilderModes/Interface/MakeDoorForm.Designer.cs b/Source/Plugins/BuilderModes/Interface/MakeDoorForm.Designer.cs
index 45b26c62..5f9bf417 100644
--- a/Source/Plugins/BuilderModes/Interface/MakeDoorForm.Designer.cs
+++ b/Source/Plugins/BuilderModes/Interface/MakeDoorForm.Designer.cs
@@ -36,11 +36,14 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
 			this.label3 = new System.Windows.Forms.Label();
 			this.cancel = new System.Windows.Forms.Button();
 			this.apply = new System.Windows.Forms.Button();
+			this.resetoffsets = new System.Windows.Forms.CheckBox();
+			this.tracktexture = new CodeImp.DoomBuilder.Controls.TextureSelectorControl();
+			this.label4 = new System.Windows.Forms.Label();
 			this.SuspendLayout();
 			// 
 			// doortexture
 			// 
-			this.doortexture.Location = new System.Drawing.Point(22, 34);
+			this.doortexture.Location = new System.Drawing.Point(21, 34);
 			this.doortexture.Name = "doortexture";
 			this.doortexture.Required = false;
 			this.doortexture.Size = new System.Drawing.Size(96, 115);
@@ -49,7 +52,7 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
 			// 
 			// label1
 			// 
-			this.label1.Location = new System.Drawing.Point(22, 15);
+			this.label1.Location = new System.Drawing.Point(21, 15);
 			this.label1.Name = "label1";
 			this.label1.Size = new System.Drawing.Size(96, 21);
 			this.label1.TabIndex = 1;
@@ -58,7 +61,7 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
 			// 
 			// label2
 			// 
-			this.label2.Location = new System.Drawing.Point(132, 15);
+			this.label2.Location = new System.Drawing.Point(247, 15);
 			this.label2.Name = "label2";
 			this.label2.Size = new System.Drawing.Size(99, 21);
 			this.label2.TabIndex = 2;
@@ -67,7 +70,7 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
 			// 
 			// ceilingtexture
 			// 
-			this.ceilingtexture.Location = new System.Drawing.Point(135, 34);
+			this.ceilingtexture.Location = new System.Drawing.Point(247, 34);
 			this.ceilingtexture.Name = "ceilingtexture";
 			this.ceilingtexture.Size = new System.Drawing.Size(96, 115);
 			this.ceilingtexture.TabIndex = 1;
@@ -75,7 +78,7 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
 			// 
 			// floortexture
 			// 
-			this.floortexture.Location = new System.Drawing.Point(248, 34);
+			this.floortexture.Location = new System.Drawing.Point(360, 34);
 			this.floortexture.Name = "floortexture";
 			this.floortexture.Size = new System.Drawing.Size(96, 115);
 			this.floortexture.TabIndex = 2;
@@ -83,7 +86,7 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
 			// 
 			// label3
 			// 
-			this.label3.Location = new System.Drawing.Point(245, 15);
+			this.label3.Location = new System.Drawing.Point(360, 15);
 			this.label3.Name = "label3";
 			this.label3.Size = new System.Drawing.Size(99, 21);
 			this.label3.TabIndex = 4;
@@ -94,7 +97,7 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
 			// 
 			this.cancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
 			this.cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
-			this.cancel.Location = new System.Drawing.Point(187, 180);
+			this.cancel.Location = new System.Drawing.Point(243, 180);
 			this.cancel.Name = "cancel";
 			this.cancel.Size = new System.Drawing.Size(112, 25);
 			this.cancel.TabIndex = 4;
@@ -105,7 +108,7 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
 			// apply
 			// 
 			this.apply.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-			this.apply.Location = new System.Drawing.Point(69, 180);
+			this.apply.Location = new System.Drawing.Point(125, 180);
 			this.apply.Name = "apply";
 			this.apply.Size = new System.Drawing.Size(112, 25);
 			this.apply.TabIndex = 3;
@@ -113,13 +116,46 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
 			this.apply.UseVisualStyleBackColor = true;
 			this.apply.Click += new System.EventHandler(this.apply_Click);
 			// 
+			// resetoffsets
+			// 
+			this.resetoffsets.AutoSize = true;
+			this.resetoffsets.Checked = true;
+			this.resetoffsets.CheckState = System.Windows.Forms.CheckState.Checked;
+			this.resetoffsets.Location = new System.Drawing.Point(21, 156);
+			this.resetoffsets.Name = "resetoffsets";
+			this.resetoffsets.Size = new System.Drawing.Size(129, 18);
+			this.resetoffsets.TabIndex = 5;
+			this.resetoffsets.Text = "Reset texture offsets";
+			this.resetoffsets.UseVisualStyleBackColor = true;
+			// 
+			// tracktexture
+			// 
+			this.tracktexture.Location = new System.Drawing.Point(134, 34);
+			this.tracktexture.Name = "tracktexture";
+			this.tracktexture.Required = false;
+			this.tracktexture.Size = new System.Drawing.Size(96, 115);
+			this.tracktexture.TabIndex = 6;
+			this.tracktexture.TextureName = "";
+			// 
+			// label4
+			// 
+			this.label4.Location = new System.Drawing.Point(134, 15);
+			this.label4.Name = "label4";
+			this.label4.Size = new System.Drawing.Size(96, 21);
+			this.label4.TabIndex = 7;
+			this.label4.Text = "Track";
+			this.label4.TextAlign = System.Drawing.ContentAlignment.TopCenter;
+			// 
 			// MakeDoorForm
 			// 
 			this.AcceptButton = this.apply;
 			this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
 			this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
 			this.CancelButton = this.cancel;
-			this.ClientSize = new System.Drawing.Size(368, 219);
+			this.ClientSize = new System.Drawing.Size(481, 219);
+			this.Controls.Add(this.tracktexture);
+			this.Controls.Add(this.label4);
+			this.Controls.Add(this.resetoffsets);
 			this.Controls.Add(this.cancel);
 			this.Controls.Add(this.apply);
 			this.Controls.Add(this.floortexture);
@@ -139,6 +175,7 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
 			this.Text = "Make Door";
 			this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.MakeDoorForm_HelpRequested);
 			this.ResumeLayout(false);
+			this.PerformLayout();
 
 		}
 
@@ -152,5 +189,8 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
 		private System.Windows.Forms.Label label3;
 		private System.Windows.Forms.Button cancel;
 		private System.Windows.Forms.Button apply;
+		private System.Windows.Forms.CheckBox resetoffsets;
+		private CodeImp.DoomBuilder.Controls.TextureSelectorControl tracktexture;
+		private System.Windows.Forms.Label label4;
 	}
 }
\ No newline at end of file
diff --git a/Source/Plugins/BuilderModes/Interface/MakeDoorForm.cs b/Source/Plugins/BuilderModes/Interface/MakeDoorForm.cs
index ab2c17c5..03d644dc 100644
--- a/Source/Plugins/BuilderModes/Interface/MakeDoorForm.cs
+++ b/Source/Plugins/BuilderModes/Interface/MakeDoorForm.cs
@@ -42,8 +42,10 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
 		#region ================== Properties
 
 		public string DoorTexture { get { return doortexture.TextureName; } }
+		public string TrackTexture { get { return tracktexture.TextureName; } }
 		public string CeilingTexture { get { return ceilingtexture.TextureName; } }
 		public string FloorTexture { get { return floortexture.TextureName; } }
+		public bool ResetOffsets { get { return resetoffsets.Checked; } }
 
 		#endregion
 		
@@ -56,11 +58,13 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
 		}
 
 		// This sets the properties and shows the form
-		public DialogResult Show(IWin32Window owner, string doortex, string ceilingtex, string floortex)
+		public DialogResult Show(IWin32Window owner, string doortex, string tracktex, string ceilingtex, string floortex, bool roffsets)
 		{
 			this.doortexture.TextureName = doortex;
+			this.tracktexture.TextureName = tracktex;
 			this.ceilingtexture.TextureName = ceilingtex;
 			this.floortexture.TextureName = floortex;
+			this.resetoffsets.Checked = roffsets;
 			return this.ShowDialog(owner);
 		}
 		
diff --git a/Source/Plugins/BuilderModes/Interface/MakeDoorForm.resx b/Source/Plugins/BuilderModes/Interface/MakeDoorForm.resx
index d52ac9f3..ff31a6db 100644
--- a/Source/Plugins/BuilderModes/Interface/MakeDoorForm.resx
+++ b/Source/Plugins/BuilderModes/Interface/MakeDoorForm.resx
@@ -117,31 +117,4 @@
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
-  <metadata name="doortexture.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="label1.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="label2.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="ceilingtexture.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="floortexture.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="label3.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="cancel.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="apply.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="$this.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
 </root>
\ No newline at end of file