diff --git a/Build/Configurations/Hexen.cfg b/Build/Configurations/Hexen.cfg index 7b9e09b8..0e97c5d9 100644 --- a/Build/Configurations/Hexen.cfg +++ b/Build/Configurations/Hexen.cfg @@ -2430,6 +2430,11 @@ thingtypes { title = "Dragon Lich"; sprite = "DRAGC1"; + arg0 + { + title = "Destination Thing Tag"; + type = 14; + } arg1 { title = "Destination Thing Tag"; @@ -2450,11 +2455,6 @@ thingtypes title = "Destination Thing Tag"; type = 14; } - arg5 - { - title = "Destination Thing Tag"; - type = 14; - } } 10030 { @@ -3715,19 +3715,19 @@ thingtypes { title = "Spawn Bat"; sprite = "ABATC2C8"; - arg1 + arg0 { title = "Spawn Frequency"; } - arg2 + arg1 { title = "Spread Angle"; } - arg4 + arg3 { title = "Spawn Duration"; } - arg5 + arg4 { title = "Changing Angle"; } @@ -3735,19 +3735,19 @@ thingtypes 10000 { title = "Spawn Fog"; - arg1 + arg0 { title = "Movement Speed"; } - arg2 + arg1 { title = "Spread Angle"; } - arg3 + arg2 { title = "Spawn Frequency"; } - arg4 + arg3 { title = "Fog Lifetime"; } @@ -3755,15 +3755,15 @@ thingtypes 10001 { title = "Fog Patch (small)"; - arg1 + arg0 { title = "Movement Speed"; } - arg4 + arg3 { title = "Fog Lifetime"; } - arg5 + arg4 { title = "Moving Fog"; } @@ -3771,15 +3771,15 @@ thingtypes 10002 { title = "Fog Patch (medium)"; - arg1 + arg0 { title = "Movement Speed"; } - arg4 + arg3 { title = "Fog Lifetime"; } - arg5 + arg4 { title = "Moving Fog"; } @@ -3787,15 +3787,15 @@ thingtypes 10003 { title = "Fog Patch (large)"; - arg1 + arg0 { title = "Movement Speed"; } - arg4 + arg3 { title = "Fog Lifetime"; } - arg5 + arg4 { title = "Moving Fog"; } diff --git a/Build/Configurations/Skulltag_DoomHexen.cfg b/Build/Configurations/Skulltag_DoomHexen.cfg index b008eab7..333bc83b 100644 --- a/Build/Configurations/Skulltag_DoomHexen.cfg +++ b/Build/Configurations/Skulltag_DoomHexen.cfg @@ -4617,19 +4617,19 @@ thingtypes 9073 { title = "Aiming Camera"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Max Angle"; } - arg3 + arg2 { title = "Max Pitch"; } - arg4 + arg3 { title = "Thing"; type = 14; @@ -4639,7 +4639,7 @@ thingtypes 9081 { title = "Skybox Picker"; - arg1 + arg0 { title = "Thing"; type = 14; @@ -4648,15 +4648,15 @@ thingtypes 9074 { title = "Actor Mover"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -4669,7 +4669,7 @@ thingtypes 128 = "Nonsolid"; } } - arg4 + arg3 { title = "Thing"; type = 14; @@ -4678,23 +4678,23 @@ thingtypes 9070 { title = "Interpolation point"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Travel Time"; } - arg3 + arg2 { title = "Hold Time"; } - arg4 + arg3 { title = "Next"; } - arg5 + arg4 { title = "High Next"; } @@ -4703,15 +4703,15 @@ thingtypes 9072 { title = "Moving Camera"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -4724,7 +4724,7 @@ thingtypes 128 = "Everyone"; } } - arg4 + arg3 { title = "Thing"; type = 14; @@ -4733,15 +4733,15 @@ thingtypes 9071 { title = "Path Follower"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -4787,8 +4787,14 @@ thingtypes 9990 { title = "Bridge Custom"; - arg1 = "Radius"; - arg2 = "Thickness"; + arg0 + { + title = "Radius"; + } + arg1 + { + title = "Thickness"; + } } } @@ -6267,7 +6273,7 @@ thingtypes 1411 { title = "Sound Sequence"; - arg1 + arg0 { title = "Sound Sequence Number"; } @@ -6339,7 +6345,7 @@ thingtypes 14065 { title = "Ambient Sound"; - arg1 + arg0 { title = "Ambient Sound Number"; } @@ -6386,7 +6392,7 @@ thingtypes 9511 { title = "Copy ceiling plane"; - arg1 + arg0 { title = "Sector Tag"; type = 13; @@ -6395,7 +6401,7 @@ thingtypes 9510 { title = "Copy floor plane"; - arg1 + arg0 { title = "Sector Tag"; type = 13; @@ -6405,7 +6411,7 @@ thingtypes { title = "Set ceiling slope"; arrow = 1; - arg1 + arg0 { title = "Z-Angle"; } @@ -6414,7 +6420,7 @@ thingtypes { title = "Set floor slope"; arrow = 1; - arg1 + arg0 { title = "Z-Angle"; } @@ -6422,7 +6428,7 @@ thingtypes 9501 { title = "Slope ceiling to here"; - arg1 + arg0 { title = "Line"; type = 15; @@ -6431,7 +6437,7 @@ thingtypes 9500 { title = "Slope floor to here"; - arg1 + arg0 { title = "Line"; type = 15; @@ -6455,7 +6461,7 @@ thingtypes 9200 { title = "Decal"; - arg1 + arg0 { title = "Decal ID"; } @@ -6465,12 +6471,12 @@ thingtypes 9024 { title = "Path Node"; - arg1 + arg0 { title = "Next Node"; type = 14; } - arg2 + arg1 { title = "Delay"; } @@ -6478,7 +6484,7 @@ thingtypes 9026 { title = "Spark"; - arg1 + arg0 { title = "Particles Amount"; } diff --git a/Build/Configurations/ZDoom_DoomHexen.cfg b/Build/Configurations/ZDoom_DoomHexen.cfg index a777435b..9924b86a 100644 --- a/Build/Configurations/ZDoom_DoomHexen.cfg +++ b/Build/Configurations/ZDoom_DoomHexen.cfg @@ -5249,15 +5249,15 @@ thingtypes 9025 { title = "Camera"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Pan"; } - arg3 + arg2 { title = "Time"; } @@ -5265,15 +5265,15 @@ thingtypes 9073 { title = "Aiming Camera"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Max Angle"; } - arg3 + arg2 { title = "Max Pitch"; } @@ -5287,7 +5287,7 @@ thingtypes 9081 { title = "Skybox Picker"; - arg1 + arg0 { title = "Thing"; type = 14; @@ -5296,15 +5296,15 @@ thingtypes 9074 { title = "Actor Mover"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5326,23 +5326,23 @@ thingtypes 9070 { title = "Interpolation point"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Travel Time"; } - arg3 + arg2 { title = "Hold Time"; } - arg4 + arg3 { title = "Next"; } - arg5 + arg4 { title = "High Next"; } @@ -5351,15 +5351,15 @@ thingtypes 9072 { title = "Moving Camera"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5372,7 +5372,7 @@ thingtypes 128 = "Everyone"; } } - arg4 + arg3 { title = "Thing"; type = 14; @@ -5381,15 +5381,15 @@ thingtypes 9071 { title = "Path Follower"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5435,8 +5435,14 @@ thingtypes 9990 { title = "Bridge Custom"; - arg1 = "Radius"; - arg2 = "Thickness"; + arg0 + { + title = "Radius"; + } + arg1 + { + title = "Thickness"; + } } } @@ -6582,7 +6588,7 @@ thingtypes 1411 { title = "Sound Sequence"; - arg1 + arg0 { title = "Sound Sequence Number"; } @@ -6654,7 +6660,7 @@ thingtypes 14065 { title = "Ambient Sound"; - arg1 + arg0 { title = "Ambient Sound Number"; } @@ -6701,7 +6707,7 @@ thingtypes 9511 { title = "Copy ceiling plane"; - arg1 + arg0 { title = "Sector Tag"; type = 13; @@ -6710,7 +6716,7 @@ thingtypes 9510 { title = "Copy floor plane"; - arg1 + arg0 { title = "Sector Tag"; type = 13; @@ -6720,7 +6726,7 @@ thingtypes { title = "Set ceiling slope"; arrow = 1; - arg1 + arg0 { title = "Z-Angle"; } @@ -6729,7 +6735,7 @@ thingtypes { title = "Set floor slope"; arrow = 1; - arg1 + arg0 { title = "Z-Angle"; } @@ -6737,7 +6743,7 @@ thingtypes 9501 { title = "Slope ceiling to here"; - arg1 + arg0 { title = "Line"; type = 15; @@ -6746,7 +6752,7 @@ thingtypes 9500 { title = "Slope floor to here"; - arg1 + arg0 { title = "Line"; type = 15; @@ -6770,7 +6776,7 @@ thingtypes 9200 { title = "Decal"; - arg1 + arg0 { title = "Decal ID"; } @@ -6780,12 +6786,12 @@ thingtypes 9024 { title = "Path Node"; - arg1 + arg0 { title = "Next Node"; type = 14; } - arg2 + arg1 { title = "Delay"; } @@ -6793,7 +6799,7 @@ thingtypes 9026 { title = "Spark"; - arg1 + arg0 { title = "Particles Amount"; } @@ -6824,7 +6830,7 @@ thingtypes 9077 { title = "Upper Sector"; - arg1 + arg0 { title = "Flat Transparency"; } @@ -6833,7 +6839,7 @@ thingtypes 9078 { title = "Lower Sector"; - arg1 + arg0 { title = "Flat Transparency"; } diff --git a/Build/Configurations/ZDoom_DoomUDMF.cfg b/Build/Configurations/ZDoom_DoomUDMF.cfg index eda6a6e0..b5275b3f 100644 --- a/Build/Configurations/ZDoom_DoomUDMF.cfg +++ b/Build/Configurations/ZDoom_DoomUDMF.cfg @@ -5455,15 +5455,15 @@ thingtypes 9025 { title = "Camera"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Pan"; } - arg3 + arg2 { title = "Time"; } @@ -5471,19 +5471,19 @@ thingtypes 9073 { title = "Aiming Camera"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Max Angle"; } - arg3 + arg2 { title = "Max Pitch"; } - arg4 + arg3 { title = "Thing"; type = 14; @@ -5493,7 +5493,7 @@ thingtypes 9081 { title = "Skybox Picker"; - arg1 + arg0 { title = "Thing"; type = 14; @@ -5502,15 +5502,15 @@ thingtypes 9074 { title = "Actor Mover"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5523,7 +5523,7 @@ thingtypes 128 = "Nonsolid"; } } - arg4 + arg3 { title = "Thing"; type = 14; @@ -5532,23 +5532,23 @@ thingtypes 9070 { title = "Interpolation point"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Travel Time"; } - arg3 + arg2 { title = "Hold Time"; } - arg4 + arg3 { title = "Next"; } - arg5 + arg4 { title = "High Next"; } @@ -5557,15 +5557,15 @@ thingtypes 9072 { title = "Moving Camera"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5578,7 +5578,7 @@ thingtypes 128 = "Everyone"; } } - arg4 + arg3 { title = "Thing"; type = 14; @@ -5587,15 +5587,15 @@ thingtypes 9071 { title = "Path Follower"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5641,8 +5641,14 @@ thingtypes 9990 { title = "Bridge Custom"; - arg1 = "Radius"; - arg2 = "Thickness"; + arg0 + { + title = "Radius"; + } + arg1 + { + title = "Thickness"; + } } } @@ -6788,7 +6794,7 @@ thingtypes 1411 { title = "Sound Sequence"; - arg1 + arg0 { title = "Sound Sequence Number"; } @@ -6860,7 +6866,7 @@ thingtypes 14065 { title = "Ambient Sound"; - arg1 + arg0 { title = "Ambient Sound Number"; } @@ -6907,7 +6913,7 @@ thingtypes 9511 { title = "Copy ceiling plane"; - arg1 + arg0 { title = "Sector Tag"; type = 13; @@ -6916,7 +6922,7 @@ thingtypes 9510 { title = "Copy floor plane"; - arg1 + arg0 { title = "Sector Tag"; type = 13; @@ -6926,7 +6932,7 @@ thingtypes { title = "Set ceiling slope"; arrow = 1; - arg1 + arg0 { title = "Z-Angle"; } @@ -6935,7 +6941,7 @@ thingtypes { title = "Set floor slope"; arrow = 1; - arg1 + arg0 { title = "Z-Angle"; } @@ -6943,7 +6949,7 @@ thingtypes 9501 { title = "Slope ceiling to here"; - arg1 + arg0 { title = "Line"; type = 15; @@ -6952,7 +6958,7 @@ thingtypes 9500 { title = "Slope floor to here"; - arg1 + arg0 { title = "Line"; type = 15; @@ -6976,7 +6982,7 @@ thingtypes 9200 { title = "Decal"; - arg1 + arg0 { title = "Decal ID"; } @@ -6986,12 +6992,12 @@ thingtypes 9024 { title = "Path Node"; - arg1 + arg0 { title = "Next Node"; type = 14; } - arg2 + arg1 { title = "Delay"; } @@ -6999,7 +7005,7 @@ thingtypes 9026 { title = "Spark"; - arg1 + arg0 { title = "Particles Amount"; } @@ -7030,7 +7036,7 @@ thingtypes 9077 { title = "Upper Sector"; - arg1 + arg0 { title = "Flat Transparency"; } @@ -7039,7 +7045,7 @@ thingtypes 9078 { title = "Lower Sector"; - arg1 + arg0 { title = "Flat Transparency"; } diff --git a/Build/Configurations/ZDoom_HereticHexen.cfg b/Build/Configurations/ZDoom_HereticHexen.cfg index 0cc02dd1..6f622668 100644 --- a/Build/Configurations/ZDoom_HereticHexen.cfg +++ b/Build/Configurations/ZDoom_HereticHexen.cfg @@ -5243,15 +5243,15 @@ thingtypes 9025 { title = "Camera"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Pan"; } - arg3 + arg2 { title = "Time"; } @@ -5259,19 +5259,19 @@ thingtypes 9073 { title = "Aiming Camera"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Max Angle"; } - arg3 + arg2 { title = "Max Pitch"; } - arg4 + arg3 { title = "Thing"; type = 14; @@ -5281,7 +5281,7 @@ thingtypes 9081 { title = "Skybox Picker"; - arg1 + arg0 { title = "Thing"; type = 14; @@ -5290,15 +5290,15 @@ thingtypes 9074 { title = "Actor Mover"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5311,7 +5311,7 @@ thingtypes 128 = "Nonsolid"; } } - arg4 + arg3 { title = "Thing"; type = 14; @@ -5320,23 +5320,23 @@ thingtypes 9070 { title = "Interpolation point"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Travel Time"; } - arg3 + arg2 { title = "Hold Time"; } - arg4 + arg3 { title = "Next"; } - arg5 + arg4 { title = "High Next"; } @@ -5345,15 +5345,15 @@ thingtypes 9072 { title = "Moving Camera"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5366,7 +5366,7 @@ thingtypes 128 = "Everyone"; } } - arg4 + arg3 { title = "Thing"; type = 14; @@ -5375,15 +5375,15 @@ thingtypes 9071 { title = "Path Follower"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5429,11 +5429,11 @@ thingtypes 9990 { title = "Bridge Custom"; - arg1 + arg0 { title = "Radius"; } - arg2 + arg1 { title = "Thickness"; } @@ -5513,7 +5513,7 @@ thingtypes 1411 { title = "Sound Sequence"; - arg1 + arg0 { title = "Sound Sequence Number"; } @@ -5585,7 +5585,7 @@ thingtypes 14065 { title = "Ambient Sound"; - arg1 + arg0 { title = "Ambient Sound Number"; } @@ -5848,7 +5848,7 @@ thingtypes 9511 { title = "Copy ceiling plane"; - arg1 + arg0 { title = "Sector Tag"; type = 13; @@ -5857,7 +5857,7 @@ thingtypes 9510 { title = "Copy floor plane"; - arg1 + arg0 { title = "Sector Tag"; type = 13; @@ -5867,7 +5867,7 @@ thingtypes { title = "Set ceiling slope"; arrow = 1; - arg1 + arg0 { title = "Z-Angle"; } @@ -5876,7 +5876,7 @@ thingtypes { title = "Set floor slope"; arrow = 1; - arg1 + arg0 { title = "Z-Angle"; } @@ -5884,7 +5884,7 @@ thingtypes 9501 { title = "Slope ceiling to here"; - arg1 + arg0 { title = "Line"; type = 15; @@ -5893,7 +5893,7 @@ thingtypes 9500 { title = "Slope floor to here"; - arg1 + arg0 { title = "Line"; type = 15; @@ -5917,7 +5917,7 @@ thingtypes 9200 { title = "Decal"; - arg1 + arg0 { title = "Decal ID"; } @@ -5927,12 +5927,12 @@ thingtypes 9024 { title = "Path Node"; - arg1 + arg0 { title = "Next Node"; type = 14; } - arg2 + arg1 { title = "Delay"; } @@ -5940,7 +5940,7 @@ thingtypes 9026 { title = "Spark"; - arg1 + arg0 { title = "Particles Amount"; } @@ -5971,7 +5971,7 @@ thingtypes 9077 { title = "Upper Sector"; - arg1 + arg0 { title = "Flat Transparency"; } @@ -5980,7 +5980,7 @@ thingtypes 9078 { title = "Lower Sector"; - arg1 + arg0 { title = "Flat Transparency"; } diff --git a/Build/Configurations/ZDoom_Hexen.cfg b/Build/Configurations/ZDoom_Hexen.cfg index 6f377823..35a700ba 100644 --- a/Build/Configurations/ZDoom_Hexen.cfg +++ b/Build/Configurations/ZDoom_Hexen.cfg @@ -5242,15 +5242,15 @@ thingtypes 9025 { title = "Camera"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Pan"; } - arg3 + arg2 { title = "Time"; } @@ -5258,19 +5258,19 @@ thingtypes 9073 { title = "Aiming Camera"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Max Angle"; } - arg3 + arg2 { title = "Max Pitch"; } - arg4 + arg3 { title = "Thing"; type = 14; @@ -5280,7 +5280,7 @@ thingtypes 9081 { title = "Skybox Picker"; - arg1 + arg0 { title = "Thing"; type = 14; @@ -5289,15 +5289,15 @@ thingtypes 9074 { title = "Actor Mover"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5310,7 +5310,7 @@ thingtypes 128 = "Nonsolid"; } } - arg4 + arg3 { title = "Thing"; type = 14; @@ -5319,23 +5319,23 @@ thingtypes 9070 { title = "Interpolation point"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Travel Time"; } - arg3 + arg2 { title = "Hold Time"; } - arg4 + arg3 { title = "Next"; } - arg5 + arg4 { title = "High Next"; } @@ -5344,15 +5344,15 @@ thingtypes 9072 { title = "Moving Camera"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5365,7 +5365,7 @@ thingtypes 128 = "Everyone"; } } - arg4 + arg3 { title = "Thing"; type = 14; @@ -5374,15 +5374,15 @@ thingtypes 9071 { title = "Path Follower"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5428,11 +5428,11 @@ thingtypes 9990 { title = "Bridge Custom"; - arg1 + arg0 { title = "Radius"; } - arg2 + arg1 { title = "Thickness"; } @@ -5559,6 +5559,11 @@ thingtypes { title = "Dragon Lich"; sprite = "DRAGC1"; + arg0 + { + title = "Destination Thing Tag"; + type = 14; + } arg1 { title = "Destination Thing Tag"; @@ -5579,11 +5584,6 @@ thingtypes title = "Destination Thing Tag"; type = 14; } - arg5 - { - title = "Destination Thing Tag"; - type = 14; - } } 10030 { @@ -6833,7 +6833,7 @@ thingtypes 1411 { title = "Sound Sequence"; - arg1 + arg0 { title = "Sound Sequence Number"; } @@ -6905,7 +6905,7 @@ thingtypes 14065 { title = "Ambient Sound"; - arg1 + arg0 { title = "Ambient Sound Number"; } @@ -6933,19 +6933,19 @@ thingtypes 10225 { title = "Spawn Bat"; - arg1 + arg0 { title = "Spawn Frequency"; } - arg2 + arg1 { title = "Spread Angle"; } - arg4 + arg3 { title = "Spawn Duration"; } - arg5 + arg4 { title = "Changing Angle"; } @@ -6953,19 +6953,19 @@ thingtypes 10000 { title = "Spawn Fog"; - arg1 + arg0 { title = "Movement Speed"; } - arg2 + arg1 { title = "Spread Angle"; } - arg3 + arg2 { title = "Spawn Frequency"; } - arg4 + arg3 { title = "Fog Lifetime"; } @@ -6973,15 +6973,15 @@ thingtypes 10001 { title = "Fog Patch (small)"; - arg1 + arg0 { title = "Movement Speed"; } - arg4 + arg3 { title = "Fog Lifetime"; } - arg5 + arg4 { title = "Moving Fog"; } @@ -6989,15 +6989,15 @@ thingtypes 10002 { title = "Fog Patch (medium)"; - arg1 + arg0 { title = "Movement Speed"; } - arg4 + arg3 { title = "Fog Lifetime"; } - arg5 + arg4 { title = "Moving Fog"; } @@ -7005,15 +7005,15 @@ thingtypes 10003 { title = "Fog Patch (large)"; - arg1 + arg0 { title = "Movement Speed"; } - arg4 + arg3 { title = "Fog Lifetime"; } - arg5 + arg4 { title = "Moving Fog"; } @@ -7037,12 +7037,12 @@ thingtypes 9024 { title = "Path Node"; - arg1 + arg0 { title = "Next Node"; type = 14; } - arg2 + arg1 { title = "Delay"; } @@ -7051,7 +7051,7 @@ thingtypes 9026 { title = "Spark"; - arg1 + arg0 { title = "Particles Amount"; } @@ -7080,7 +7080,7 @@ thingtypes 9077 { title = "Upper Sector"; - arg1 + arg0 { title = "Flat Transparency"; } @@ -7089,7 +7089,7 @@ thingtypes 9078 { title = "Lower Sector"; - arg1 + arg0 { title = "Flat Transparency"; } diff --git a/Build/Configurations/ZDoom_StrifeHexen.cfg b/Build/Configurations/ZDoom_StrifeHexen.cfg index ddac3f98..2e6cbcc1 100644 --- a/Build/Configurations/ZDoom_StrifeHexen.cfg +++ b/Build/Configurations/ZDoom_StrifeHexen.cfg @@ -5242,15 +5242,15 @@ thingtypes 9025 { title = "Camera"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Pan"; } - arg3 + arg2 { title = "Time"; } @@ -5258,19 +5258,19 @@ thingtypes 9073 { title = "Aiming Camera"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Max Angle"; } - arg3 + arg2 { title = "Max Pitch"; } - arg4 + arg3 { title = "Thing"; type = 14; @@ -5280,7 +5280,7 @@ thingtypes 9081 { title = "Skybox Picker"; - arg1 + arg0 { title = "Thing"; type = 14; @@ -5289,15 +5289,15 @@ thingtypes 9074 { title = "Actor Mover"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5310,7 +5310,7 @@ thingtypes 128 = "Nonsolid"; } } - arg4 + arg3 { title = "Thing"; type = 14; @@ -5319,23 +5319,23 @@ thingtypes 9070 { title = "Interpolation point"; - arg1 + arg0 { title = "Pitch"; } - arg2 + arg1 { title = "Travel Time"; } - arg3 + arg2 { title = "Hold Time"; } - arg4 + arg3 { title = "Next"; } - arg5 + arg4 { title = "High Next"; } @@ -5344,15 +5344,15 @@ thingtypes 9072 { title = "Moving Camera"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5365,7 +5365,7 @@ thingtypes 128 = "Everyone"; } } - arg4 + arg3 { title = "Thing"; type = 14; @@ -5374,15 +5374,15 @@ thingtypes 9071 { title = "Path Follower"; - arg1 + arg0 { title = "Point"; } - arg2 + arg1 { title = "High Point"; } - arg3 + arg2 { title = "Options"; type = 12; @@ -5428,11 +5428,11 @@ thingtypes 9990 { title = "Bridge Custom"; - arg1 + arg0 { title = "Radius"; } - arg2 + arg1 { title = "Thickness"; } @@ -6133,7 +6133,7 @@ thingtypes 1411 { title = "Sound Sequence"; - arg1 + arg0 { title = "Sound Sequence Number"; } @@ -6205,7 +6205,7 @@ thingtypes 14065 { title = "Ambient Sound"; - arg1 + arg0 { title = "Ambient Sound Number"; } @@ -6252,7 +6252,7 @@ thingtypes 9511 { title = "Copy ceiling plane"; - arg1 + arg0 { title = "Sector Tag"; type = 13; @@ -6261,7 +6261,7 @@ thingtypes 9510 { title = "Copy floor plane"; - arg1 + arg0 { title = "Sector Tag"; type = 13; @@ -6271,7 +6271,7 @@ thingtypes { title = "Set ceiling slope"; arrow = 1; - arg1 + arg0 { title = "Z-Angle"; } @@ -6280,7 +6280,7 @@ thingtypes { title = "Set floor slope"; arrow = 1; - arg1 + arg0 { title = "Z-Angle"; } @@ -6288,7 +6288,7 @@ thingtypes 9501 { title = "Slope ceiling to here"; - arg1 + arg0 { title = "Line"; type = 15; @@ -6297,7 +6297,7 @@ thingtypes 9500 { title = "Slope floor to here"; - arg1 + arg0 { title = "Line"; type = 15; @@ -6321,7 +6321,7 @@ thingtypes 9200 { title = "Decal"; - arg1 + arg0 { title = "Decal ID"; } @@ -6331,12 +6331,12 @@ thingtypes 9024 { title = "Path Node"; - arg1 + arg0 { title = "Next Node"; type = 14; } - arg2 + arg1 { title = "Delay"; } @@ -6344,7 +6344,7 @@ thingtypes 9026 { title = "Spark"; - arg1 + arg0 { title = "Particles Amount"; } @@ -6375,7 +6375,7 @@ thingtypes 9077 { title = "Upper Sector"; - arg1 + arg0 { title = "Flat Transparency"; } @@ -6384,7 +6384,7 @@ thingtypes 9078 { title = "Lower Sector"; - arg1 + arg0 { title = "Flat Transparency"; } diff --git a/Source/Config/ArgumentInfo.cs b/Source/Config/ArgumentInfo.cs index c32855db..5d753652 100644 --- a/Source/Config/ArgumentInfo.cs +++ b/Source/Config/ArgumentInfo.cs @@ -92,6 +92,16 @@ namespace CodeImp.DoomBuilder.Config } } + // Constructor for unknown argument info + internal ArgumentInfo(int argindex) + { + // Read + this.used = false; + this.title = "Argument " + (argindex + 1); + this.type = 0; + this.enumlist = new EnumList(); + } + #endregion #region ================== Methods diff --git a/Source/Config/GameConfiguration.cs b/Source/Config/GameConfiguration.cs index c567ae6a..ff4ee345 100644 --- a/Source/Config/GameConfiguration.cs +++ b/Source/Config/GameConfiguration.cs @@ -389,7 +389,7 @@ namespace CodeImp.DoomBuilder.Config foreach(DictionaryEntry de in dic) { // Make a category - thingcat = new ThingCategory(cfg, de.Key.ToString()); + thingcat = new ThingCategory(cfg, de.Key.ToString(), enums); // Add all things in category to the big list foreach(ThingTypeInfo t in thingcat.Things) diff --git a/Source/Config/ThingCategory.cs b/Source/Config/ThingCategory.cs index d74c9488..61020593 100644 --- a/Source/Config/ThingCategory.cs +++ b/Source/Config/ThingCategory.cs @@ -110,7 +110,7 @@ namespace CodeImp.DoomBuilder.Config } // Constructor - internal ThingCategory(Configuration cfg, string name) + internal ThingCategory(Configuration cfg, string name, IDictionary enums) { IDictionary dic; int index; @@ -146,7 +146,7 @@ namespace CodeImp.DoomBuilder.Config if(de.Value is IDictionary) { // Create this thing - things.Add(new ThingTypeInfo(this, index, cfg)); + things.Add(new ThingTypeInfo(this, index, cfg, enums)); } // Check if the item value is a string else if(de.Value is string) diff --git a/Source/Config/ThingTypeInfo.cs b/Source/Config/ThingTypeInfo.cs index 4005ea53..d0a9987f 100644 --- a/Source/Config/ThingTypeInfo.cs +++ b/Source/Config/ThingTypeInfo.cs @@ -27,6 +27,7 @@ using System.IO; using System.Diagnostics; using System.Windows.Forms; using CodeImp.DoomBuilder.ZDoom; +using CodeImp.DoomBuilder.Map; #endregion @@ -61,6 +62,7 @@ namespace CodeImp.DoomBuilder.Config private int errorcheck; private bool fixedsize; private ThingCategory category; + private ArgumentInfo[] args; #endregion @@ -79,6 +81,7 @@ namespace CodeImp.DoomBuilder.Config public int ErrorCheck { get { return errorcheck; } } public bool FixedSize { get { return fixedsize; } } public ThingCategory Category { get { return category; } } + public ArgumentInfo[] Args { get { return args; } } #endregion @@ -101,20 +104,22 @@ namespace CodeImp.DoomBuilder.Config this.errorcheck = 0; this.fixedsize = false; this.spritelongname = long.MaxValue; + this.args = new ArgumentInfo[Linedef.NUM_ARGS]; // We have no destructor GC.SuppressFinalize(this); } // Constructor - internal ThingTypeInfo(ThingCategory cat, int index, Configuration cfg) + internal ThingTypeInfo(ThingCategory cat, int index, Configuration cfg, IDictionary enums) { string key = index.ToString(CultureInfo.InvariantCulture); // Initialize this.index = index; this.category = cat; - + this.args = new ArgumentInfo[Linedef.NUM_ARGS]; + // Read properties this.title = cfg.ReadSetting("thingtypes." + cat.Name + "." + key + ".title", "<" + key + ">"); this.sprite = cfg.ReadSetting("thingtypes." + cat.Name + "." + key + ".sprite", cat.Sprite); @@ -127,6 +132,10 @@ namespace CodeImp.DoomBuilder.Config this.errorcheck = cfg.ReadSetting("thingtypes." + cat.Name + "." + key + ".error", cat.ErrorCheck); this.fixedsize = cfg.ReadSetting("thingtypes." + cat.Name + "." + key + ".fixedsize", cat.FixedSize); + // Read the args + for(int i = 0; i < Linedef.NUM_ARGS; i++) + this.args[i] = new ArgumentInfo(cfg, "thingtypes." + cat.Name + "." + key, i, enums); + // Safety if(this.radius < 8f) this.radius = 8f; @@ -149,7 +158,9 @@ namespace CodeImp.DoomBuilder.Config this.index = index; this.category = cat; this.title = title; - + this.args = new ArgumentInfo[Linedef.NUM_ARGS]; + for(int i = 0; i < Linedef.NUM_ARGS; i++) this.args[i] = new ArgumentInfo(i); + // Read properties this.sprite = cat.Sprite; this.color = cat.Color; @@ -178,6 +189,8 @@ namespace CodeImp.DoomBuilder.Config this.index = actor.DoomEdNum; this.category = cat; this.title = "Unnamed"; + this.args = new ArgumentInfo[Linedef.NUM_ARGS]; + for(int i = 0; i < Linedef.NUM_ARGS; i++) this.args[i] = new ArgumentInfo(i); // Read properties this.sprite = cat.Sprite; diff --git a/Source/Windows/ThingEditForm.cs b/Source/Windows/ThingEditForm.cs index 76e52392..86995b31 100644 --- a/Source/Windows/ThingEditForm.cs +++ b/Source/Windows/ThingEditForm.cs @@ -41,6 +41,7 @@ namespace CodeImp.DoomBuilder.Windows private ICollection things; private List nodes; + private ThingTypeInfo thinginfo; #endregion @@ -210,31 +211,33 @@ namespace CodeImp.DoomBuilder.Windows private void action_ValueChanges(object sender, EventArgs e) { int showaction = 0; + ArgumentInfo[] arginfo; - // Only when line type is known + // Only when line type is known, otherwise use the thing arguments if(General.Map.Config.LinedefActions.ContainsKey(action.Value)) showaction = action.Value; - + if((showaction == 0) && (thinginfo != null)) arginfo = thinginfo.Args; else arginfo = General.Map.Config.LinedefActions[showaction].Args; + // Change the argument descriptions - arg0label.Text = General.Map.Config.LinedefActions[showaction].Args[0].Title + ":"; - arg1label.Text = General.Map.Config.LinedefActions[showaction].Args[1].Title + ":"; - arg2label.Text = General.Map.Config.LinedefActions[showaction].Args[2].Title + ":"; - arg3label.Text = General.Map.Config.LinedefActions[showaction].Args[3].Title + ":"; - arg4label.Text = General.Map.Config.LinedefActions[showaction].Args[4].Title + ":"; - arg0label.Enabled = General.Map.Config.LinedefActions[showaction].Args[0].Used; - arg1label.Enabled = General.Map.Config.LinedefActions[showaction].Args[1].Used; - arg2label.Enabled = General.Map.Config.LinedefActions[showaction].Args[2].Used; - arg3label.Enabled = General.Map.Config.LinedefActions[showaction].Args[3].Used; - arg4label.Enabled = General.Map.Config.LinedefActions[showaction].Args[4].Used; + arg0label.Text = arginfo[0].Title + ":"; + arg1label.Text = arginfo[1].Title + ":"; + arg2label.Text = arginfo[2].Title + ":"; + arg3label.Text = arginfo[3].Title + ":"; + arg4label.Text = arginfo[4].Title + ":"; + arg0label.Enabled = arginfo[0].Used; + arg1label.Enabled = arginfo[1].Used; + arg2label.Enabled = arginfo[2].Used; + arg3label.Enabled = arginfo[3].Used; + arg4label.Enabled = arginfo[4].Used; if(arg0label.Enabled) arg0.ForeColor = SystemColors.WindowText; else arg0.ForeColor = SystemColors.GrayText; if(arg1label.Enabled) arg1.ForeColor = SystemColors.WindowText; else arg1.ForeColor = SystemColors.GrayText; if(arg2label.Enabled) arg2.ForeColor = SystemColors.WindowText; else arg2.ForeColor = SystemColors.GrayText; if(arg3label.Enabled) arg3.ForeColor = SystemColors.WindowText; else arg3.ForeColor = SystemColors.GrayText; if(arg4label.Enabled) arg4.ForeColor = SystemColors.WindowText; else arg4.ForeColor = SystemColors.GrayText; - arg0.Setup(General.Map.Config.LinedefActions[showaction].Args[0]); - arg1.Setup(General.Map.Config.LinedefActions[showaction].Args[1]); - arg2.Setup(General.Map.Config.LinedefActions[showaction].Args[2]); - arg3.Setup(General.Map.Config.LinedefActions[showaction].Args[3]); - arg4.Setup(General.Map.Config.LinedefActions[showaction].Args[4]); + arg0.Setup(arginfo[0]); + arg1.Setup(arginfo[1]); + arg2.Setup(arginfo[2]); + arg3.Setup(arginfo[3]); + arg4.Setup(arginfo[4]); } // Browse Action clicked @@ -283,19 +286,19 @@ namespace CodeImp.DoomBuilder.Windows if(typeid.Text.Length > 0) { // Get the info - ThingTypeInfo ti = General.Map.Data.GetThingInfoEx(typeid.GetResult(0)); - if(ti != null) + thinginfo = General.Map.Data.GetThingInfoEx(typeid.GetResult(0)); + if(thinginfo != null) { knownthing = true; // Size - sizelabel.Text = (ti.Radius * 2) + " x " + ti.Height; + sizelabel.Text = (thinginfo.Radius * 2) + " x " + thinginfo.Height; // Hangs from ceiling - if(ti.Hangs) positionlabel.Text = "Ceiling"; else positionlabel.Text = "Floor"; + if(thinginfo.Hangs) positionlabel.Text = "Ceiling"; else positionlabel.Text = "Floor"; // Blocking - switch(ti.Blocking) + switch(thinginfo.Blocking) { case ThingTypeInfo.THING_BLOCKING_NONE: blockinglabel.Text = "No"; break; case ThingTypeInfo.THING_BLOCKING_FULL: blockinglabel.Text = "Completely"; break; @@ -304,10 +307,14 @@ namespace CodeImp.DoomBuilder.Windows } // Show image - General.DisplayZoomedImage(spritetex, General.Map.Data.GetSpriteImage(ti.Sprite).GetPreview()); + General.DisplayZoomedImage(spritetex, General.Map.Data.GetSpriteImage(thinginfo.Sprite).GetPreview()); } } - + else + { + thinginfo = null; + } + // No known thing? if(!knownthing) { @@ -316,6 +323,9 @@ namespace CodeImp.DoomBuilder.Windows blockinglabel.Text = "-"; General.DisplayZoomedImage(spritetex, null); } + + // Update arguments + action_ValueChanges(sender, e); } // Apply clicked