Add config parameters for disabling certain Doom-related modes (that don't make sense for SRB2)

This commit is contained in:
spherallic 2023-06-12 11:06:13 +02:00
parent ac9b6137b2
commit 8f7da9ac1c
6 changed files with 21 additions and 2 deletions

View file

@ -93,6 +93,10 @@ mapformat_udmf
{
include("SRB222_misc.cfg", "universalfields");
}
// Disable Doom-related modes that don't make sense for SRB2
soundsupport = false;
automapsupport = false;
// When this is set to true, sectors with the same tag will light up when a line is highlighted
linetagindicatesectors = false;

View file

@ -119,6 +119,10 @@ namespace CodeImp.DoomBuilder.Config
private readonly bool sectormultitag;
private readonly int maxcolormapalpha;
private readonly int numbrightnesslevels;
private readonly bool soundsupport;
private readonly bool automapsupport;
private readonly bool dynamiclightsupport;
private readonly bool modelrendersupport;
// Skills
private readonly List<SkillInfo> skills;
@ -307,6 +311,10 @@ namespace CodeImp.DoomBuilder.Config
public bool SectorMultiTag { get { return sectormultitag; } }
public int MaxColormapAlpha { get { return maxcolormapalpha; } }
public int NumBrightnessLevels { get { return numbrightnesslevels; } }
public bool SoundSupport { get { return soundsupport; } }
public bool AutomapSupport { get { return automapsupport; } }
public bool DynamicLightSupport { get { return dynamiclightsupport; } }
public bool ModelRenderSupport { get { return modelrendersupport; } }
// Texture/flat/voxel sources
public IDictionary TextureRanges { get { return textureranges; } }
@ -497,6 +505,10 @@ namespace CodeImp.DoomBuilder.Config
maxcolormapalpha = cfg.ReadSetting("maxcolormapalpha", 25);
numbrightnesslevels = cfg.ReadSetting("numbrightnesslevels", 32);
for (int i = 0; i < makedoorargs.Length; i++) makedoorargs[i] = cfg.ReadSetting("makedoorarg" + i.ToString(CultureInfo.InvariantCulture), 0);
soundsupport = cfg.ReadSetting("soundsupport", true);
automapsupport = cfg.ReadSetting("automapsupport", true);
dynamiclightsupport = cfg.ReadSetting("dynamiclightsupport", false);
modelrendersupport = cfg.ReadSetting("modelrendersupport", false);
//mxd. Update map format flags
universalmapformat = (formatinterface == "UniversalMapSetIO");

View file

@ -2201,8 +2201,8 @@ namespace CodeImp.DoomBuilder.Windows
buttontogglerenderpolyobjects.Visible = General.Settings.ToolbarViewModes && maploaded;
//mxd
modelrendermode.Visible = General.Settings.GZToolbarGZDoom && maploaded;
dynamiclightmode.Visible = General.Settings.GZToolbarGZDoom && maploaded;
modelrendermode.Visible = maploaded && General.Map.Config.ModelRenderSupport;
dynamiclightmode.Visible = maploaded && General.Map.Config.DynamicLightSupport;
buttontogglefog.Visible = General.Settings.GZToolbarGZDoom && maploaded;
buttontogglesky.Visible = General.Settings.GZToolbarGZDoom && maploaded;
buttontoggleeventlines.Visible = General.Settings.GZToolbarGZDoom && maploaded;

View file

@ -34,6 +34,7 @@ namespace CodeImp.DoomBuilder.AutomapMode
ButtonImage = "automap.png", // Image resource name for the button
ButtonOrder = int.MinValue + 503, // Position of the button (lower is more to the bottom)
ButtonGroup = "000_editing",
RequiredMapFeatures = new[] { "AutomapSupport" },
UseByDefault = true)]
public class AutomapMode : ClassicMode

View file

@ -40,6 +40,7 @@ namespace CodeImp.DoomBuilder.SoundPropagationMode
UseByDefault = true,
SafeStartMode = false,
SupportedMapFormats = new[] { "UniversalMapSetIO" }, //mxd
RequiredMapFeatures = new[] { "SoundSupport" },
Volatile = false)]
public class SoundEnvironmentMode : ClassicMode

View file

@ -37,6 +37,7 @@ namespace CodeImp.DoomBuilder.SoundPropagationMode
ButtonGroup = "000_editing",
UseByDefault = true,
SafeStartMode = false,
RequiredMapFeatures = new[] { "SoundSupport" },
Volatile = false)]
public class SoundPropagationMode : ClassicMode