Make Door action: door texture can now be defined in a game configuration.

Make Door action: door and track textures are now stored while the editor is running.
Edit Selection Mode: pasted geometry was not merged with the rest of the map if the selection was not modified before applying the mode.
This commit is contained in:
MaxED 2014-03-06 09:08:21 +00:00
parent f7f8c1e894
commit 6de11ea3b1
7 changed files with 16 additions and 3 deletions

View file

@ -13,6 +13,7 @@
// Door making
makedoortrack = "DOORTRAK";
makedoordoor = "BIGDOOR2";
// Default thing filters
// (these are not required, just useful for new users)

View file

@ -14,6 +14,7 @@
// Door making
makedoortrack = "D_END2";
makedoordoor = "D_WD07";
// Default thing filters
// (these are not required, just useful for new users)

View file

@ -64,6 +64,7 @@ namespace CodeImp.DoomBuilder.Config
private string testparameters;
private bool testshortpaths;
private string makedoortrack;
private string makedoordoor; //mxd
private int makedooraction;
private int makedooractivate;
private int[] makedoorargs;
@ -165,6 +166,7 @@ namespace CodeImp.DoomBuilder.Config
public string TestParameters { get { return testparameters; } }
public bool TestShortPaths { get { return testshortpaths; } }
public string MakeDoorTrack { get { return makedoortrack; } }
public string MakeDoorDoor { get { return makedoordoor; } } //mxd
public int MakeDoorAction { get { return makedooraction; } }
public int MakeDoorActivate { get { return makedooractivate; } }
public Dictionary<string, bool> MakeDoorFlags { get { return makedoorflags; } }
@ -296,6 +298,7 @@ namespace CodeImp.DoomBuilder.Config
testparameters = cfg.ReadSetting("testparameters", "");
testshortpaths = cfg.ReadSetting("testshortpaths", false);
makedoortrack = cfg.ReadSetting("makedoortrack", "-");
makedoordoor = cfg.ReadSetting("makedoordoor", "-"); //mxd
makedooraction = cfg.ReadSetting("makedooraction", 0);
makedooractivate = cfg.ReadSetting("makedooractivate", 0);
linetagindicatesectors = cfg.ReadSetting("linetagindicatesectors", false);

View file

@ -17,6 +17,7 @@
#region ================== Namespaces
using System;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
using SlimDX;
@ -45,6 +46,8 @@ namespace CodeImp.DoomBuilder.Controls
#region ================== Properties
public string TextureName { get { return name.Text; } set { name.Text = value; } }
[Browsable(false)]
public bool MultipleTextures { get { return multipletextures; } set { multipletextures = value; } }
#endregion

View file

@ -881,6 +881,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
base.OnEngage();
bool autodrag = (pasting && mouseinside && BuilderPlug.Me.AutoDragOnPaste);
snaptonearest = General.Interface.AutoMerge; //mxd
// Add toolbar buttons
General.Interface.AddButton(BuilderPlug.Me.MenusForm.FlipSelectionH);

View file

@ -69,6 +69,10 @@ namespace CodeImp.DoomBuilder.BuilderModes
private Dictionary<Sector, string[]> selectedEffectLabels;
private Dictionary<Sector, string[]> unselectedEffectLabels;
//mxd. "Make Door" textures
private static string doortex = "-";
private static string tracktex = "-";
#endregion
#region ================== Properties
@ -1303,8 +1307,8 @@ namespace CodeImp.DoomBuilder.BuilderModes
ICollection<Sector> orderedselection = General.Map.Map.GetSelectedSectors(true);
if(orderedselection.Count > 0)
{
string doortex = "";
string tracktex = General.Map.Config.MakeDoorTrack;
if(doortex == "-") doortex = General.Map.Config.MakeDoorDoor; //mxd
if(tracktex == "-") tracktex = General.Map.Config.MakeDoorTrack; //mxd
string floortex = null;
string ceiltex = null;
bool resetoffsets = true;

View file

@ -72,7 +72,7 @@ namespace CodeImp.DoomBuilder.BuilderModes.Interface
// No door texture selected?
if(doortexture.TextureName.Length == 0)
{
MessageBox.Show(this, "You have to select at least a texture for the door!", "Make Door", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
MessageBox.Show(this, "Please select a door texture!", "Make Door", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
doortexture.Focus();
}
else