mirror of
https://git.do.srb2.org/STJr/UltimateZoneBuilder.git
synced 2024-11-26 22:01:45 +00:00
Added Doom and Doom 2 game configurations for vanilla Doom and Boom engines.
When you try to change floor/ceiling texture offsets in Doom/Hexen map formats, a warning is displayed in status bar (instead of spamming you with message windows). Mode actions toolbar is now auto-hidden when there are no buttons to display.
This commit is contained in:
parent
0369c969d1
commit
4ad9ad78eb
8 changed files with 488 additions and 2 deletions
65
Build/Configurations/Boom_Doom2Doom.cfg
Normal file
65
Build/Configurations/Boom_Doom2Doom.cfg
Normal file
|
@ -0,0 +1,65 @@
|
|||
/*************************************************************\
|
||||
Doom Builder 2 Game Configuration for ZDoom-compatible port
|
||||
\*************************************************************/
|
||||
|
||||
// This is required to prevent accidental use of a different configuration
|
||||
type = "Doom Builder 2 Game Configuration";
|
||||
|
||||
// This is the title to show for this game
|
||||
game = "Boom: Doom 2 (Doom format)";
|
||||
|
||||
// This is the simplified game engine/sourceport name
|
||||
engine = "boom";
|
||||
|
||||
// *******************************************************
|
||||
// * *
|
||||
// * Note: all the elements that could be factorized *
|
||||
// * because they were common to ZDoom, GZDoom and *
|
||||
// * Zandronum have been moved to ZDoom_common.cfg. *
|
||||
// * *
|
||||
// *******************************************************
|
||||
|
||||
// STANDARD DOOM SETTINGS
|
||||
// Settings common to all games and all map formats
|
||||
include("Includes\\Doom_common.cfg", "common");
|
||||
|
||||
// Settings common to Doom map format
|
||||
include("Includes\\Boom_common.cfg", "mapformat_doom");
|
||||
|
||||
// Settings common to Doom games
|
||||
include("Includes\\Game_Doom.cfg");
|
||||
|
||||
// Default thing filters
|
||||
// (these are not required, just useful for new users)
|
||||
thingsfilters
|
||||
{
|
||||
include("Includes\\Doom_misc.cfg", "thingsfilters");
|
||||
}
|
||||
|
||||
// Depends on both game and map format
|
||||
gamedetect
|
||||
{
|
||||
// Map format
|
||||
include("Includes\\ZDoom_misc.cfg", "gamedetect_doom");
|
||||
// Game scheme
|
||||
include("Includes\\Doom_misc.cfg", "gamedetect_mapxx");
|
||||
}
|
||||
|
||||
// THING TYPES
|
||||
// Each engine has its own additional thing types
|
||||
// Order should always be 1: Game; 2: ZDoom/game; 3: ZDoom/zdoom
|
||||
thingtypes
|
||||
{
|
||||
// Basic game actors
|
||||
include("Includes\\Doom_things.cfg");
|
||||
include("Includes\\Doom2_things.cfg");
|
||||
}
|
||||
|
||||
// ENUMERATIONS
|
||||
// Each engine has its own additional thing types
|
||||
// These are enumerated lists for linedef types and UDMF fields.
|
||||
enums
|
||||
{
|
||||
// Basic game enums
|
||||
include("Includes\\Doom_misc.cfg", "enums");
|
||||
}
|
64
Build/Configurations/Boom_DoomDoom.cfg
Normal file
64
Build/Configurations/Boom_DoomDoom.cfg
Normal file
|
@ -0,0 +1,64 @@
|
|||
/*************************************************************\
|
||||
Doom Builder 2 Game Configuration for ZDoom-compatible port
|
||||
\*************************************************************/
|
||||
|
||||
// This is required to prevent accidental use of a different configuration
|
||||
type = "Doom Builder 2 Game Configuration";
|
||||
|
||||
// This is the title to show for this game
|
||||
game = "Boom: Doom (Doom format)";
|
||||
|
||||
// This is the simplified game engine/sourceport name
|
||||
engine = "boom";
|
||||
|
||||
// *******************************************************
|
||||
// * *
|
||||
// * Note: all the elements that could be factorized *
|
||||
// * because they were common to ZDoom, GZDoom and *
|
||||
// * Zandronum have been moved to ZDoom_common.cfg. *
|
||||
// * *
|
||||
// *******************************************************
|
||||
|
||||
// STANDARD DOOM SETTINGS
|
||||
// Settings common to all games and all map formats
|
||||
include("Includes\\Doom_common.cfg", "common");
|
||||
|
||||
// Settings common to Doom map format
|
||||
include("Includes\\Boom_common.cfg", "mapformat_doom");
|
||||
|
||||
// Settings common to Doom games
|
||||
include("Includes\\Game_Doom.cfg");
|
||||
|
||||
// Default thing filters
|
||||
// (these are not required, just useful for new users)
|
||||
thingsfilters
|
||||
{
|
||||
include("Includes\\Doom_misc.cfg", "thingsfilters");
|
||||
}
|
||||
|
||||
// Depends on both game and map format
|
||||
gamedetect
|
||||
{
|
||||
// Map format
|
||||
include("Includes\\ZDoom_misc.cfg", "gamedetect_doom");
|
||||
// Game scheme
|
||||
include("Includes\\Doom_misc.cfg", "gamedetect_exmx");
|
||||
}
|
||||
|
||||
// THING TYPES
|
||||
// Each engine has its own additional thing types
|
||||
// Order should always be 1: Game; 2: ZDoom/game; 3: ZDoom/zdoom
|
||||
thingtypes
|
||||
{
|
||||
// Basic game actors
|
||||
include("Includes\\Doom_things.cfg");
|
||||
}
|
||||
|
||||
// ENUMERATIONS
|
||||
// Each engine has its own additional thing types
|
||||
// These are enumerated lists for linedef types and UDMF fields.
|
||||
enums
|
||||
{
|
||||
// Basic game enums
|
||||
include("Includes\\Doom_misc.cfg", "enums");
|
||||
}
|
65
Build/Configurations/Doom_Doom2Doom.cfg
Normal file
65
Build/Configurations/Doom_Doom2Doom.cfg
Normal file
|
@ -0,0 +1,65 @@
|
|||
/*************************************************************\
|
||||
Doom Builder 2 Game Configuration for ZDoom-compatible port
|
||||
\*************************************************************/
|
||||
|
||||
// This is required to prevent accidental use of a different configuration
|
||||
type = "Doom Builder 2 Game Configuration";
|
||||
|
||||
// This is the title to show for this game
|
||||
game = "Doom: Doom 2 (Doom format)";
|
||||
|
||||
// This is the simplified game engine/sourceport name
|
||||
engine = "doom2";
|
||||
|
||||
// *******************************************************
|
||||
// * *
|
||||
// * Note: all the elements that could be factorized *
|
||||
// * because they were common to ZDoom, GZDoom and *
|
||||
// * Zandronum have been moved to ZDoom_common.cfg. *
|
||||
// * *
|
||||
// *******************************************************
|
||||
|
||||
// STANDARD DOOM SETTINGS
|
||||
// Settings common to all games and all map formats
|
||||
include("Includes\\Doom_common.cfg", "common");
|
||||
|
||||
// Settings common to Doom map format
|
||||
include("Includes\\Doom_common.cfg", "mapformat_doom");
|
||||
|
||||
// Settings common to Doom games
|
||||
include("Includes\\Game_Doom.cfg");
|
||||
|
||||
// Default thing filters
|
||||
// (these are not required, just useful for new users)
|
||||
thingsfilters
|
||||
{
|
||||
include("Includes\\Doom_misc.cfg", "thingsfilters");
|
||||
}
|
||||
|
||||
// Depends on both game and map format
|
||||
gamedetect
|
||||
{
|
||||
// Map format
|
||||
include("Includes\\ZDoom_misc.cfg", "gamedetect_doom");
|
||||
// Game scheme
|
||||
include("Includes\\Doom_misc.cfg", "gamedetect_mapxx");
|
||||
}
|
||||
|
||||
// THING TYPES
|
||||
// Each engine has its own additional thing types
|
||||
// Order should always be 1: Game; 2: ZDoom/game; 3: ZDoom/zdoom
|
||||
thingtypes
|
||||
{
|
||||
// Basic game actors
|
||||
include("Includes\\Doom_things.cfg");
|
||||
include("Includes\\Doom2_things.cfg");
|
||||
}
|
||||
|
||||
// ENUMERATIONS
|
||||
// Each engine has its own additional thing types
|
||||
// These are enumerated lists for linedef types and UDMF fields.
|
||||
enums
|
||||
{
|
||||
// Basic game enums
|
||||
include("Includes\\Doom_misc.cfg", "enums");
|
||||
}
|
64
Build/Configurations/Doom_DoomDoom.cfg
Normal file
64
Build/Configurations/Doom_DoomDoom.cfg
Normal file
|
@ -0,0 +1,64 @@
|
|||
/*************************************************************\
|
||||
Doom Builder 2 Game Configuration for ZDoom-compatible port
|
||||
\*************************************************************/
|
||||
|
||||
// This is required to prevent accidental use of a different configuration
|
||||
type = "Doom Builder 2 Game Configuration";
|
||||
|
||||
// This is the title to show for this game
|
||||
game = "Doom: Doom (Doom format)";
|
||||
|
||||
// This is the simplified game engine/sourceport name
|
||||
engine = "doom";
|
||||
|
||||
// *******************************************************
|
||||
// * *
|
||||
// * Note: all the elements that could be factorized *
|
||||
// * because they were common to ZDoom, GZDoom and *
|
||||
// * Zandronum have been moved to ZDoom_common.cfg. *
|
||||
// * *
|
||||
// *******************************************************
|
||||
|
||||
// STANDARD DOOM SETTINGS
|
||||
// Settings common to all games and all map formats
|
||||
include("Includes\\Doom_common.cfg", "common");
|
||||
|
||||
// Settings common to Doom map format
|
||||
include("Includes\\Doom_common.cfg", "mapformat_doom");
|
||||
|
||||
// Settings common to Doom games
|
||||
include("Includes\\Game_Doom.cfg");
|
||||
|
||||
// Default thing filters
|
||||
// (these are not required, just useful for new users)
|
||||
thingsfilters
|
||||
{
|
||||
include("Includes\\Doom_misc.cfg", "thingsfilters");
|
||||
}
|
||||
|
||||
// Depends on both game and map format
|
||||
gamedetect
|
||||
{
|
||||
// Map format
|
||||
include("Includes\\ZDoom_misc.cfg", "gamedetect_doom");
|
||||
// Game scheme
|
||||
include("Includes\\Doom_misc.cfg", "gamedetect_exmx");
|
||||
}
|
||||
|
||||
// THING TYPES
|
||||
// Each engine has its own additional thing types
|
||||
// Order should always be 1: Game; 2: ZDoom/game; 3: ZDoom/zdoom
|
||||
thingtypes
|
||||
{
|
||||
// Basic game actors
|
||||
include("Includes\\Doom_things.cfg");
|
||||
}
|
||||
|
||||
// ENUMERATIONS
|
||||
// Each engine has its own additional thing types
|
||||
// These are enumerated lists for linedef types and UDMF fields.
|
||||
enums
|
||||
{
|
||||
// Basic game enums
|
||||
include("Includes\\Doom_misc.cfg", "enums");
|
||||
}
|
95
Build/Configurations/Includes/Boom_common.cfg
Normal file
95
Build/Configurations/Includes/Boom_common.cfg
Normal file
|
@ -0,0 +1,95 @@
|
|||
mapformat_doom
|
||||
{
|
||||
// The format interface handles the map data format
|
||||
formatinterface = "DoomMapSetIO";
|
||||
|
||||
maplumpnames
|
||||
{
|
||||
include("Doom_misc.cfg", "doommaplumpnames");
|
||||
}
|
||||
|
||||
// When this is set to true, sectors with the same tag will light up when a line is highlighted
|
||||
linetagindicatesectors = true;
|
||||
|
||||
// Special linedefs
|
||||
include("ZDoom_misc.cfg", "speciallinedefs_doomhexen");
|
||||
|
||||
// Default flags for first new thing
|
||||
defaultthingflags
|
||||
{
|
||||
include("Doom_misc.cfg", "defaultthingflags");
|
||||
}
|
||||
|
||||
// Door making
|
||||
include("ZDoom_misc.cfg", "doormaking_doom");
|
||||
|
||||
// Generalized actions
|
||||
generalizedlinedefs = true;
|
||||
generalizedsectors = false;
|
||||
|
||||
// GENERALIZED LINEDEF TYPES
|
||||
gen_linedeftypes
|
||||
{
|
||||
include("Boom_generalized.cfg", "gen_linedeftypes");
|
||||
}
|
||||
|
||||
// DEFAULT SECTOR BRIGHTNESS LEVELS
|
||||
sectorbrightness
|
||||
{
|
||||
include("Doom_misc.cfg", "sectorbrightness");
|
||||
}
|
||||
|
||||
// SECTOR TYPES
|
||||
sectortypes
|
||||
{
|
||||
include("Doom_sectors.cfg");
|
||||
}
|
||||
|
||||
// LINEDEF FLAGS
|
||||
linedefflags
|
||||
{
|
||||
include("Doom_misc.cfg", "linedefflags");
|
||||
include("Boom_misc.cfg", "linedefflags");
|
||||
}
|
||||
|
||||
// LINEDEF ACTIVATIONS
|
||||
linedefactivations
|
||||
{
|
||||
}
|
||||
|
||||
// Linedef flags UDMF translation table
|
||||
// This is needed for copy/paste and prefabs to work properly
|
||||
// When the UDMF field name is prefixed with ! it is inverted
|
||||
linedefflagstranslation
|
||||
{
|
||||
include("Doom_misc.cfg", "linedefflagstranslation");
|
||||
include("Boom_misc.cfg", "linedefflagstranslation");
|
||||
}
|
||||
|
||||
// LINEDEF TYPES
|
||||
linedeftypes
|
||||
{
|
||||
include("Doom_linedefs.cfg");
|
||||
include("Boom_linedefs.cfg");
|
||||
}
|
||||
|
||||
// THING FLAGS
|
||||
thingflags
|
||||
{
|
||||
include("Doom_misc.cfg", "thingflags");
|
||||
include("Boom_misc.cfg", "thingflags");
|
||||
}
|
||||
|
||||
// Thing flags UDMF translation table
|
||||
// This is needed for copy/paste and prefabs to work properly
|
||||
// When the UDMF field name is prefixed with ! it is inverted
|
||||
thingflagstranslation
|
||||
{
|
||||
include("Doom_misc.cfg", "thingflagstranslation");
|
||||
include("Boom_misc.cfg", "thingflagstranslation");
|
||||
}
|
||||
|
||||
// Things flags masks
|
||||
include("Doom_misc.cfg", "thingflagsmasks");
|
||||
|
||||
}
|
128
Build/Configurations/Includes/Doom_common.cfg
Normal file
128
Build/Configurations/Includes/Doom_common.cfg
Normal file
|
@ -0,0 +1,128 @@
|
|||
common
|
||||
{
|
||||
// Some common settings
|
||||
include("Common.cfg");
|
||||
|
||||
// Default testing parameters
|
||||
testparameters = "-iwad \"%WP\" -skill \"%S\" -file \"%AP\" \"%F\" +map %L %NM";
|
||||
testshortpaths = true;
|
||||
|
||||
// Default nodebuilder configurations
|
||||
defaultsavecompiler = "zennode_normal";
|
||||
defaulttestcompiler = "zennode_fast";
|
||||
|
||||
// Texture loading options
|
||||
mixtexturesflats = false;
|
||||
defaulttexturescale = 1.0f;
|
||||
defaultflatscale = 1.0f;
|
||||
scaledtextureoffsets = true;
|
||||
|
||||
// Texture sources
|
||||
textures
|
||||
{
|
||||
include("Doom_misc.cfg", "textures");
|
||||
}
|
||||
|
||||
// Patch sources
|
||||
patches
|
||||
{
|
||||
include("Doom_misc.cfg", "patches");
|
||||
}
|
||||
|
||||
// Sprite sources
|
||||
sprites
|
||||
{
|
||||
include("Doom_misc.cfg", "sprites");
|
||||
}
|
||||
|
||||
// Flat sources
|
||||
flats
|
||||
{
|
||||
include("Doom_misc.cfg", "flats");
|
||||
}
|
||||
}
|
||||
|
||||
mapformat_doom
|
||||
{
|
||||
// The format interface handles the map data format
|
||||
formatinterface = "DoomMapSetIO";
|
||||
|
||||
maplumpnames
|
||||
{
|
||||
include("Doom_misc.cfg", "doommaplumpnames");
|
||||
}
|
||||
|
||||
// When this is set to true, sectors with the same tag will light up when a line is highlighted
|
||||
linetagindicatesectors = true;
|
||||
|
||||
// Special linedefs
|
||||
include("ZDoom_misc.cfg", "speciallinedefs_doomhexen");
|
||||
|
||||
// Default flags for first new thing
|
||||
defaultthingflags
|
||||
{
|
||||
include("Doom_misc.cfg", "defaultthingflags");
|
||||
}
|
||||
|
||||
// Door making
|
||||
include("ZDoom_misc.cfg", "doormaking_doom");
|
||||
|
||||
// Generalized actions
|
||||
generalizedlinedefs = false;
|
||||
generalizedsectors = false;
|
||||
|
||||
// DEFAULT SECTOR BRIGHTNESS LEVELS
|
||||
sectorbrightness
|
||||
{
|
||||
include("Doom_misc.cfg", "sectorbrightness");
|
||||
}
|
||||
|
||||
// SECTOR TYPES
|
||||
sectortypes
|
||||
{
|
||||
include("Doom_sectors.cfg");
|
||||
}
|
||||
|
||||
// LINEDEF FLAGS
|
||||
linedefflags
|
||||
{
|
||||
include("Doom_misc.cfg", "linedefflags");
|
||||
}
|
||||
|
||||
// LINEDEF ACTIVATIONS
|
||||
linedefactivations
|
||||
{
|
||||
}
|
||||
|
||||
// Linedef flags UDMF translation table
|
||||
// This is needed for copy/paste and prefabs to work properly
|
||||
// When the UDMF field name is prefixed with ! it is inverted
|
||||
linedefflagstranslation
|
||||
{
|
||||
include("Doom_misc.cfg", "linedefflagstranslation");
|
||||
}
|
||||
|
||||
// LINEDEF TYPES
|
||||
linedeftypes
|
||||
{
|
||||
include("Doom_linedefs.cfg");
|
||||
}
|
||||
|
||||
// THING FLAGS
|
||||
thingflags
|
||||
{
|
||||
include("Doom_misc.cfg", "thingflags");
|
||||
}
|
||||
|
||||
// Thing flags UDMF translation table
|
||||
// This is needed for copy/paste and prefabs to work properly
|
||||
// When the UDMF field name is prefixed with ! it is inverted
|
||||
thingflagstranslation
|
||||
{
|
||||
include("Doom_misc.cfg", "thingflagstranslation");
|
||||
}
|
||||
|
||||
// Things flags masks
|
||||
include("Doom_misc.cfg", "thingflagsmasks");
|
||||
|
||||
}
|
|
@ -722,6 +722,9 @@ namespace CodeImp.DoomBuilder.Windows
|
|||
public void DisplayStatus(StatusType type, string message) { DisplayStatus(new StatusInfo(type, message)); }
|
||||
public void DisplayStatus(StatusInfo newstatus)
|
||||
{
|
||||
//mxd. New message is the same as the one being displayed?
|
||||
if(status.displayed && newstatus.type == status.type && newstatus.message == status.message) return;
|
||||
|
||||
// Stop timers
|
||||
if(newstatus.type != StatusType.Selection && !newstatus.displayed) //mxd
|
||||
{
|
||||
|
@ -1653,7 +1656,7 @@ namespace CodeImp.DoomBuilder.Windows
|
|||
case ToolbarSection.Geometry: toolbar.Items.Insert(toolbar.Items.IndexOf(seperatorgeometry), button); break;
|
||||
case ToolbarSection.Testing: toolbar.Items.Insert(toolbar.Items.IndexOf(seperatortesting), button); break;
|
||||
case ToolbarSection.Modes: modestoolbar.Items.Add(button); break; //mxd
|
||||
case ToolbarSection.Custom: modecontrolsloolbar.Items.Add(button); break; //mxd
|
||||
case ToolbarSection.Custom: modecontrolsloolbar.Items.Add(button); modecontrolsloolbar.Visible = true; break; //mxd
|
||||
}
|
||||
|
||||
UpdateToolbar();
|
||||
|
@ -1712,6 +1715,7 @@ namespace CodeImp.DoomBuilder.Windows
|
|||
break;
|
||||
case ToolbarSection.Custom:
|
||||
modecontrolsloolbar.Items.Remove(button);
|
||||
modecontrolsloolbar.Visible = (modecontrolsloolbar.Items.Count > 0);
|
||||
break;
|
||||
default:
|
||||
toolbar.Items.Remove(button);
|
||||
|
|
|
@ -27,6 +27,7 @@ using CodeImp.DoomBuilder.Rendering;
|
|||
using CodeImp.DoomBuilder.Geometry;
|
||||
using CodeImp.DoomBuilder.VisualModes;
|
||||
using CodeImp.DoomBuilder.GZBuilder.Tools;
|
||||
using CodeImp.DoomBuilder.Windows;
|
||||
|
||||
#endregion
|
||||
|
||||
|
@ -736,7 +737,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
|
|||
|
||||
//mxd
|
||||
if (!General.Map.UDMF) {
|
||||
General.ShowErrorMessage("Floor/ceiling texture offsets cannot be changed in this map format!", MessageBoxButtons.OK);
|
||||
General.Interface.DisplayStatus(StatusType.Warning, "Floor/ceiling texture offsets cannot be changed in this map format!");
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue