mirror of
https://git.do.srb2.org/STJr/UltimateZoneBuilder.git
synced 2024-11-26 22:01:45 +00:00
Game Configurations: added "requiresactivation" linedef property (defaults to "true").
Linedef Edit Form, UDMF: missing activation flags warning is now displayed only for linedef actions with "requiresactivation" property set in a game configuration. Game configurations: fixed a couple of property names, added more enums & default values. Updated BCC compiler to rev. 20140818r2.
This commit is contained in:
parent
70db005f12
commit
33ec020dca
7 changed files with 1642 additions and 1438 deletions
Binary file not shown.
File diff suppressed because it is too large
Load diff
|
@ -45,11 +45,16 @@ polyobj
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Target Angle";
|
||||
type = 11;
|
||||
enum = "polyobj_angles";
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -65,11 +70,16 @@ polyobj
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Target Angle";
|
||||
type = 11;
|
||||
enum = "polyobj_angles";
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -85,16 +95,22 @@ polyobj
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Movement Angle";
|
||||
type = 11;
|
||||
enum = "angles";
|
||||
}
|
||||
|
||||
arg3
|
||||
{
|
||||
title = "Movement Length";
|
||||
title = "Movement Distance";
|
||||
default = 64;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -135,16 +151,22 @@ polyobj
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Movement Angle";
|
||||
type = 11;
|
||||
enum = "angles";
|
||||
}
|
||||
|
||||
arg3
|
||||
{
|
||||
title = "Movement Distance * 8";
|
||||
default = 8;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -160,16 +182,24 @@ polyobj
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Movement Angle";
|
||||
type = 11;
|
||||
enum = "angles";
|
||||
}
|
||||
|
||||
arg3
|
||||
{
|
||||
title = "Delay";
|
||||
title = "Delay (tics)";
|
||||
type = 11;
|
||||
enum = "delay_tics";
|
||||
default = 105;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -185,21 +215,30 @@ polyobj
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Movement Angle";
|
||||
type = 11;
|
||||
enum = "angles";
|
||||
}
|
||||
|
||||
arg3
|
||||
{
|
||||
title = "Movement Length";
|
||||
title = "Movement Distance";
|
||||
default = 64;
|
||||
}
|
||||
|
||||
arg4
|
||||
{
|
||||
title = "Delay";
|
||||
type = 11;
|
||||
enum = "delay_tics";
|
||||
default = 105;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -215,11 +254,16 @@ polyobj
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Target Angle";
|
||||
type = 11;
|
||||
enum = "polyobj_angles";
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -235,11 +279,16 @@ polyobj
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Target Angle";
|
||||
type = 11;
|
||||
enum = "polyobj_angles";
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -255,16 +304,22 @@ polyobj
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Movement Angle";
|
||||
type = 11;
|
||||
enum = "angles";
|
||||
}
|
||||
|
||||
arg3
|
||||
{
|
||||
title = "Movement Length";
|
||||
title = "Movement Distance";
|
||||
default = 64;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -280,16 +335,22 @@ polyobj
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Movement Angle";
|
||||
type = 11;
|
||||
enum = "angles";
|
||||
}
|
||||
|
||||
arg3
|
||||
{
|
||||
title = "Movement Distance * 8";
|
||||
default = 8;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -328,6 +389,9 @@ door
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "door_speeds";
|
||||
default = 32;
|
||||
}
|
||||
|
||||
arg2
|
||||
|
@ -350,6 +414,9 @@ door
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "door_speeds";
|
||||
default = 32;
|
||||
}
|
||||
|
||||
arg2
|
||||
|
@ -372,11 +439,17 @@ door
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "door_speeds";
|
||||
default = 32;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Close Delay";
|
||||
type = 11;
|
||||
enum = "delay_tics";
|
||||
default = 105;
|
||||
}
|
||||
|
||||
arg3
|
||||
|
@ -399,11 +472,17 @@ door
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "door_speeds";
|
||||
default = 32;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Close Delay";
|
||||
type = 11;
|
||||
enum = "delay_tics";
|
||||
default = 105;
|
||||
}
|
||||
|
||||
arg3
|
||||
|
@ -428,7 +507,7 @@ floor
|
|||
|
||||
20
|
||||
{
|
||||
title = "Floor Lower";
|
||||
title = "Floor Lower By Value";
|
||||
|
||||
arg0
|
||||
{
|
||||
|
@ -439,6 +518,9 @@ floor
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "flat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
|
@ -460,6 +542,9 @@ floor
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "flat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -476,12 +561,15 @@ floor
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "flat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
}
|
||||
|
||||
23
|
||||
{
|
||||
title = "Floor Raise";
|
||||
title = "Floor Raise By Value";
|
||||
|
||||
arg0
|
||||
{
|
||||
|
@ -492,6 +580,9 @@ floor
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "flat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
|
@ -513,6 +604,9 @@ floor
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "flat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -529,6 +623,9 @@ floor
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "flat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -545,12 +642,22 @@ floor
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "flat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Crush Damage";
|
||||
}
|
||||
|
||||
arg3
|
||||
{
|
||||
title = "Crush Mode";
|
||||
type = 11;
|
||||
enum = "crush_mode";
|
||||
}
|
||||
}
|
||||
|
||||
35
|
||||
|
@ -566,6 +673,9 @@ floor
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "flat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
|
@ -587,6 +697,9 @@ floor
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "flat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
|
@ -651,6 +764,9 @@ floor
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "flat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
|
@ -668,7 +784,7 @@ floor
|
|||
|
||||
95
|
||||
{
|
||||
title = "Floor and Ceiling Lower";
|
||||
title = "Floor and Ceiling Lower by Value";
|
||||
|
||||
arg0
|
||||
{
|
||||
|
@ -679,6 +795,9 @@ floor
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "flat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
|
@ -689,7 +808,7 @@ floor
|
|||
|
||||
96
|
||||
{
|
||||
title = "Floor and Ceiling Raise";
|
||||
title = "Floor and Ceiling Raise by Value";
|
||||
|
||||
arg0
|
||||
{
|
||||
|
@ -700,6 +819,9 @@ floor
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "flat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
|
@ -727,11 +849,15 @@ stairs
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 4;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Step Amount";
|
||||
title = "Step Height";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg3
|
||||
|
@ -758,11 +884,15 @@ stairs
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 4;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Step Amount";
|
||||
title = "Step Height";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg3
|
||||
|
@ -789,11 +919,15 @@ stairs
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 4;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Step Amount";
|
||||
title = "Step Height";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg3
|
||||
|
@ -815,11 +949,15 @@ stairs
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "stair_speeds";
|
||||
default = 4;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Step Amount";
|
||||
title = "Step Height";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg3
|
||||
|
@ -847,11 +985,14 @@ pillar
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "plat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
{
|
||||
title = "Movement Amount";
|
||||
title = "Target Height (rel.)";
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -868,6 +1009,9 @@ pillar
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "plat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
|
@ -894,6 +1038,9 @@ pillar
|
|||
arg1
|
||||
{
|
||||
title = "Movement Speed";
|
||||
type = 11;
|
||||
enum = "plat_speeds";
|
||||
default = 16;
|
||||
}
|
||||
|
||||
arg2
|
||||
|
@ -1323,10 +1470,10 @@ thing
|
|||
{
|
||||
title = "Extreme";
|
||||
enum
|
||||
{
|
||||
0 = "No";
|
||||
1 = "Yes";
|
||||
}
|
||||
{
|
||||
0 = "No";
|
||||
1 = "Yes";
|
||||
}
|
||||
}
|
||||
arg2
|
||||
{
|
||||
|
|
|
@ -519,7 +519,7 @@ zdoom
|
|||
}
|
||||
arg3
|
||||
{
|
||||
title = "Target X Pos";
|
||||
title = "Target Y Pos";
|
||||
}
|
||||
}
|
||||
89
|
||||
|
@ -539,7 +539,7 @@ zdoom
|
|||
}
|
||||
arg3
|
||||
{
|
||||
title = "Target X Pos";
|
||||
title = "Target Y Pos";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -551,6 +551,7 @@ zdoom
|
|||
9
|
||||
{
|
||||
title = "Line Horizon";
|
||||
requiresactivation = false;
|
||||
}
|
||||
121 // Line Identification
|
||||
{
|
||||
|
@ -2887,6 +2888,7 @@ zdoom
|
|||
160
|
||||
{
|
||||
title = "Sector 3D Floor (OpenGL only)";
|
||||
requiresactivation = false;
|
||||
|
||||
arg0
|
||||
{
|
||||
|
@ -2976,7 +2978,7 @@ zdoom
|
|||
}
|
||||
185
|
||||
{
|
||||
title = "Sector Rotate Alignment";
|
||||
title = "Sector Rotate Flat";
|
||||
|
||||
arg0
|
||||
{
|
||||
|
@ -2986,10 +2988,12 @@ zdoom
|
|||
arg1
|
||||
{
|
||||
title = "Floor Angle";
|
||||
type = 8;
|
||||
}
|
||||
arg2
|
||||
{
|
||||
title = "Ceiling Angle";
|
||||
type = 8;
|
||||
}
|
||||
}
|
||||
186
|
||||
|
|
|
@ -493,6 +493,19 @@ enums
|
|||
224 = "224: Southest";
|
||||
}
|
||||
|
||||
polyobj_angles
|
||||
{
|
||||
0 = "0: East";
|
||||
32 = "32: Northeast";
|
||||
64 = "64: North";
|
||||
96 = "96: Northwest";
|
||||
128 = "128: West";
|
||||
160 = "160: Southwest";
|
||||
192 = "192: South";
|
||||
224 = "224: Southest";
|
||||
255 = "255: Constant Rotation";
|
||||
}
|
||||
|
||||
frontback
|
||||
{
|
||||
0 = "Front";
|
||||
|
@ -580,6 +593,13 @@ enums
|
|||
16 = "16: Fast";
|
||||
32 = "32: Turbo";
|
||||
}
|
||||
|
||||
crush_mode
|
||||
{
|
||||
0 = "0: Game default";
|
||||
1 = "1: Doom mode";
|
||||
2 = "2: Hexen mode";
|
||||
}
|
||||
|
||||
generic_floor_target
|
||||
{
|
||||
|
@ -659,6 +679,21 @@ enums
|
|||
6 = "6: Orange Team";
|
||||
7 = "7: Purple Team";
|
||||
}
|
||||
|
||||
delay_tics
|
||||
{
|
||||
0 = "0: No delay";
|
||||
35 = "35: 1 Second";
|
||||
70 = "70: 2 Seconds";
|
||||
105 = "105: 3 Seconds";
|
||||
140 = "140: 4 Seconds";
|
||||
175 = "175: 5 Seconds";
|
||||
210 = "210: 6 Seconds";
|
||||
245 = "245: 7 Seconds";
|
||||
280 = "280: 8 Seconds";
|
||||
315 = "315: 9 Seconds";
|
||||
350 = "350: 10 Seconds";
|
||||
}
|
||||
}
|
||||
|
||||
enums_doom
|
||||
|
|
|
@ -35,14 +35,15 @@ namespace CodeImp.DoomBuilder.Config
|
|||
#region ================== Variables
|
||||
|
||||
// Properties
|
||||
private int index;
|
||||
private string prefix;
|
||||
private string category;
|
||||
private string name;
|
||||
private string title;
|
||||
private ArgumentInfo[] args;
|
||||
private bool isgeneralized;
|
||||
private bool isknown;
|
||||
private readonly int index;
|
||||
private readonly string prefix;
|
||||
private readonly string category;
|
||||
private readonly string name;
|
||||
private readonly string title;
|
||||
private readonly ArgumentInfo[] args;
|
||||
private readonly bool isgeneralized;
|
||||
private readonly bool isknown;
|
||||
private readonly bool requiresactivation; //mxd
|
||||
|
||||
#endregion
|
||||
|
||||
|
@ -56,6 +57,7 @@ namespace CodeImp.DoomBuilder.Config
|
|||
public bool IsGeneralized { get { return isgeneralized; } }
|
||||
public bool IsKnown { get { return isknown; } }
|
||||
public bool IsNull { get { return (index == 0); } }
|
||||
public bool RequiresActivation { get { return requiresactivation; } } //mxd
|
||||
public ArgumentInfo[] Args { get { return args; } }
|
||||
|
||||
#endregion
|
||||
|
@ -77,6 +79,7 @@ namespace CodeImp.DoomBuilder.Config
|
|||
// Read settings
|
||||
this.name = cfg.ReadSetting(actionsetting + ".title", "Unnamed");
|
||||
this.prefix = cfg.ReadSetting(actionsetting + ".prefix", "");
|
||||
this.requiresactivation = cfg.ReadSetting(actionsetting + ".requiresactivation", true); //mxd
|
||||
this.title = this.prefix + " " + this.name;
|
||||
this.title = this.title.Trim();
|
||||
|
||||
|
@ -94,6 +97,7 @@ namespace CodeImp.DoomBuilder.Config
|
|||
this.index = index;
|
||||
this.isgeneralized = isgeneralized;
|
||||
this.isknown = isknown;
|
||||
this.requiresactivation = true; //mxd. Unused, set for consistency sake.
|
||||
this.title = title;
|
||||
this.args = new ArgumentInfo[Linedef.NUM_ARGS];
|
||||
for(int i = 0; i < Linedef.NUM_ARGS; i++)
|
||||
|
|
|
@ -188,7 +188,6 @@ namespace CodeImp.DoomBuilder.Windows
|
|||
}
|
||||
|
||||
// Fill actions list
|
||||
action.GeneralizedCategories = General.Map.Config.GenActionCategories;
|
||||
action.AddInfo(General.Map.Config.SortedLinedefActions.ToArray());
|
||||
|
||||
// Fill activations list
|
||||
|
@ -674,7 +673,9 @@ namespace CodeImp.DoomBuilder.Windows
|
|||
private void CheckActivationFlagsRequired()
|
||||
{
|
||||
// Display a warning if we have an action and no activation flags
|
||||
if(action.Value != 0)
|
||||
if(action.Value != 0
|
||||
&& General.Map.Config.LinedefActions.ContainsKey(action.Value)
|
||||
&& General.Map.Config.LinedefActions[action.Value].RequiresActivation)
|
||||
{
|
||||
bool haveactivationflag = false;
|
||||
foreach(CheckBox c in udmfactivates.Checkboxes)
|
||||
|
@ -686,7 +687,6 @@ namespace CodeImp.DoomBuilder.Windows
|
|||
}
|
||||
}
|
||||
|
||||
//TODO: check if action actually requires activation :)
|
||||
missingactivation.Visible = !haveactivationflag;
|
||||
activationGroup.ForeColor = (!haveactivationflag ? Color.DarkRed : SystemColors.ControlText);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue