mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2024-11-21 20:11:12 +00:00
Move FOF modifier linedef type to the 70s range, to avoid being considered FOFs themselves
This commit is contained in:
parent
6949b70dbf
commit
96a464c881
2 changed files with 218 additions and 213 deletions
|
@ -1516,6 +1516,161 @@ udmf
|
|||
}
|
||||
}
|
||||
|
||||
fofmodifiers
|
||||
{
|
||||
title = "FOF Modifiers";
|
||||
|
||||
70
|
||||
{
|
||||
title = "Add Raise Thinker";
|
||||
prefix = "(70)";
|
||||
arg0
|
||||
{
|
||||
title = "Control linedef tag";
|
||||
type = 15;
|
||||
}
|
||||
arg1
|
||||
{
|
||||
title = "Speed";
|
||||
}
|
||||
arg2
|
||||
{
|
||||
title = "Destination height";
|
||||
}
|
||||
arg3
|
||||
{
|
||||
title = "Require spindash?";
|
||||
type = 11;
|
||||
enum = "noyes";
|
||||
}
|
||||
}
|
||||
|
||||
71
|
||||
{
|
||||
title = "Add Air Bobbing Thinker";
|
||||
prefix = "(71)";
|
||||
arg0
|
||||
{
|
||||
title = "Control linedef tag";
|
||||
type = 15;
|
||||
}
|
||||
arg1
|
||||
{
|
||||
title = "Bobbing distance";
|
||||
}
|
||||
arg2
|
||||
{
|
||||
title = "Flags";
|
||||
type = 12;
|
||||
enum
|
||||
{
|
||||
1 = "Raise";
|
||||
2 = "Require spindash";
|
||||
4 = "Dynamic";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
72
|
||||
{
|
||||
title = "Add Thwomp Thinker";
|
||||
prefix = "(72)";
|
||||
arg0
|
||||
{
|
||||
title = "Control linedef tag";
|
||||
type = 15;
|
||||
}
|
||||
arg1
|
||||
{
|
||||
title = "Falling speed";
|
||||
}
|
||||
arg2
|
||||
{
|
||||
title = "Rising speed";
|
||||
}
|
||||
stringarg0
|
||||
{
|
||||
title = "Crushing sound";
|
||||
type = 2;
|
||||
}
|
||||
}
|
||||
|
||||
73
|
||||
{
|
||||
title = "Add Laser Thinker";
|
||||
prefix = "(73)";
|
||||
arg0
|
||||
{
|
||||
title = "Control linedef tag";
|
||||
type = 15;
|
||||
}
|
||||
arg1
|
||||
{
|
||||
title = "Damage bosses?";
|
||||
type = 11;
|
||||
enum = "yesno";
|
||||
}
|
||||
}
|
||||
|
||||
74
|
||||
{
|
||||
title = "Make FOF Bustable";
|
||||
prefix = "(74)";
|
||||
arg0
|
||||
{
|
||||
title = "Control linedef tag";
|
||||
type = 15;
|
||||
}
|
||||
arg1
|
||||
{
|
||||
title = "Bustable type";
|
||||
type = 11;
|
||||
enum
|
||||
{
|
||||
0 = "Touch";
|
||||
1 = "Spin";
|
||||
2 = "Regular";
|
||||
3 = "Strong";
|
||||
}
|
||||
}
|
||||
arg2
|
||||
{
|
||||
title = "Flags";
|
||||
type = 12;
|
||||
enum
|
||||
{
|
||||
1 = "Bustable by pushables";
|
||||
2 = "Trigger linedef executor";
|
||||
4 = "Only bustable from below";
|
||||
}
|
||||
}
|
||||
arg3
|
||||
{
|
||||
title = "Linedef executor tag";
|
||||
type = 15;
|
||||
}
|
||||
}
|
||||
|
||||
75
|
||||
{
|
||||
title = "Make FOF Quicksand";
|
||||
prefix = "(75)";
|
||||
arg0
|
||||
{
|
||||
title = "Control linedef tag";
|
||||
type = 15;
|
||||
}
|
||||
arg1
|
||||
{
|
||||
title = "Sinking speed";
|
||||
}
|
||||
arg2
|
||||
{
|
||||
title = "Friction";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fof
|
||||
{
|
||||
title = "FOF";
|
||||
|
@ -1962,156 +2117,6 @@ udmf
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
260
|
||||
{
|
||||
title = "Add Raise Thinker";
|
||||
prefix = "(260)";
|
||||
arg0
|
||||
{
|
||||
title = "Control linedef tag";
|
||||
type = 15;
|
||||
}
|
||||
arg1
|
||||
{
|
||||
title = "Speed";
|
||||
}
|
||||
arg2
|
||||
{
|
||||
title = "Destination height";
|
||||
}
|
||||
arg3
|
||||
{
|
||||
title = "Require spindash?";
|
||||
type = 11;
|
||||
enum = "noyes";
|
||||
}
|
||||
}
|
||||
|
||||
261
|
||||
{
|
||||
title = "Add Air Bobbing Thinker";
|
||||
prefix = "(261)";
|
||||
arg0
|
||||
{
|
||||
title = "Control linedef tag";
|
||||
type = 15;
|
||||
}
|
||||
arg1
|
||||
{
|
||||
title = "Bobbing distance";
|
||||
}
|
||||
arg2
|
||||
{
|
||||
title = "Flags";
|
||||
type = 12;
|
||||
enum
|
||||
{
|
||||
1 = "Raise";
|
||||
2 = "Require spindash";
|
||||
4 = "Dynamic";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
262
|
||||
{
|
||||
title = "Add Thwomp Thinker";
|
||||
prefix = "(262)";
|
||||
arg0
|
||||
{
|
||||
title = "Control linedef tag";
|
||||
type = 15;
|
||||
}
|
||||
arg1
|
||||
{
|
||||
title = "Falling speed";
|
||||
}
|
||||
arg2
|
||||
{
|
||||
title = "Rising speed";
|
||||
}
|
||||
stringarg0
|
||||
{
|
||||
title = "Crushing sound";
|
||||
type = 2;
|
||||
}
|
||||
}
|
||||
|
||||
263
|
||||
{
|
||||
title = "Add Laser Thinker";
|
||||
prefix = "(263)";
|
||||
arg0
|
||||
{
|
||||
title = "Control linedef tag";
|
||||
type = 15;
|
||||
}
|
||||
arg1
|
||||
{
|
||||
title = "Damage bosses?";
|
||||
type = 11;
|
||||
enum = "yesno";
|
||||
}
|
||||
}
|
||||
|
||||
264
|
||||
{
|
||||
title = "Make FOF Bustable";
|
||||
prefix = "(264)";
|
||||
arg0
|
||||
{
|
||||
title = "Control linedef tag";
|
||||
type = 15;
|
||||
}
|
||||
arg1
|
||||
{
|
||||
title = "Bustable type";
|
||||
type = 11;
|
||||
enum
|
||||
{
|
||||
0 = "Touch";
|
||||
1 = "Spin";
|
||||
2 = "Regular";
|
||||
3 = "Strong";
|
||||
}
|
||||
}
|
||||
arg2
|
||||
{
|
||||
title = "Flags";
|
||||
type = 12;
|
||||
enum
|
||||
{
|
||||
1 = "Bustable by pushables";
|
||||
2 = "Trigger linedef executor";
|
||||
4 = "Only bustable from below";
|
||||
}
|
||||
}
|
||||
arg3
|
||||
{
|
||||
title = "Linedef executor tag";
|
||||
type = 15;
|
||||
}
|
||||
}
|
||||
|
||||
265
|
||||
{
|
||||
title = "Make FOF Quicksand";
|
||||
prefix = "(265)";
|
||||
arg0
|
||||
{
|
||||
title = "Control linedef tag";
|
||||
type = 15;
|
||||
}
|
||||
arg1
|
||||
{
|
||||
title = "Sinking speed";
|
||||
}
|
||||
arg2
|
||||
{
|
||||
title = "Friction";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
linedefexecmisc
|
||||
|
|
126
src/p_spec.c
126
src/p_spec.c
|
@ -6617,6 +6617,67 @@ void P_SpawnSpecials(boolean fromnetsave)
|
|||
P_AddPlaneDisplaceThinker(pd_both, P_AproxDistance(lines[i].dx, lines[i].dy)>>8, sides[lines[i].sidenum[0]].sector-sectors, s, !!(lines[i].flags & ML_NOCLIMB));
|
||||
break;
|
||||
|
||||
case 70: // Add raise thinker to FOF
|
||||
if (udmf)
|
||||
{
|
||||
fixed_t destheight = lines[i].args[2] << FRACBITS;
|
||||
fixed_t startheight, topheight, bottomheight;
|
||||
|
||||
for (l = -1; (l = P_FindLineFromTag(lines[i].args[0], l)) >= 0 ;)
|
||||
{
|
||||
if (lines[l].special < 100 || lines[l].special >= 300)
|
||||
continue;
|
||||
|
||||
startheight = lines[l].frontsector->ceilingheight;
|
||||
topheight = max(startheight, destheight);
|
||||
bottomheight = min(startheight, destheight);
|
||||
|
||||
P_AddRaiseThinker(lines[l].frontsector, lines[l].args[0], lines[i].args[1] << FRACBITS, topheight, bottomheight, (destheight < startheight), !!(lines[i].args[3]));
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 71: // Add air bob thinker to FOF
|
||||
if (udmf)
|
||||
{
|
||||
for (l = -1; (l = P_FindLineFromTag(lines[i].args[0], l)) >= 0 ;)
|
||||
{
|
||||
if (lines[l].special < 100 || lines[l].special >= 300)
|
||||
continue;
|
||||
|
||||
P_AddAirbob(lines[l].frontsector, lines[l].args[0], lines[i].args[1] << FRACBITS, !!(lines[i].args[2] & TMFB_REVERSE), !!(lines[i].args[2] & TMFB_SPINDASH), !!(lines[i].args[2] & TMFB_DYNAMIC));
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 72: // Add thwomp thinker to FOF
|
||||
if (udmf)
|
||||
{
|
||||
UINT16 sound = (lines[i].stringargs[0]) ? get_number(lines[i].stringargs[0]) : sfx_thwomp;
|
||||
|
||||
for (l = -1; (l = P_FindLineFromTag(lines[i].args[0], l)) >= 0 ;)
|
||||
{
|
||||
if (lines[l].special < 100 || lines[l].special >= 300)
|
||||
continue;
|
||||
|
||||
P_AddThwompThinker(lines[l].frontsector, lines[l].args[0], &lines[l], lines[i].args[1] << FRACBITS, lines[i].args[2] << FRACBITS, sound);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 73: // Add laser thinker to FOF
|
||||
if (udmf)
|
||||
{
|
||||
for (l = -1; (l = P_FindLineFromTag(lines[i].args[0], l)) >= 0 ;)
|
||||
{
|
||||
if (lines[l].special < 100 || lines[l].special >= 300)
|
||||
continue;
|
||||
|
||||
P_AddLaserThinker(lines[l].args[0], lines + l, !!(lines[i].args[1]));
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 100: // FOF (solid)
|
||||
ffloorflags = FF_EXISTS|FF_SOLID|FF_RENDERALL;
|
||||
|
||||
|
@ -6985,67 +7046,6 @@ void P_SpawnSpecials(boolean fromnetsave)
|
|||
}
|
||||
break;
|
||||
|
||||
case 260: // Add raise thinker to FOF
|
||||
if (udmf)
|
||||
{
|
||||
fixed_t destheight = lines[i].args[2] << FRACBITS;
|
||||
fixed_t startheight, topheight, bottomheight;
|
||||
|
||||
for (l = -1; (l = P_FindLineFromTag(lines[i].args[0], l)) >= 0 ;)
|
||||
{
|
||||
if (lines[l].special < 100 || lines[l].special >= 300)
|
||||
continue;
|
||||
|
||||
startheight = lines[l].frontsector->ceilingheight;
|
||||
topheight = max(startheight, destheight);
|
||||
bottomheight = min(startheight, destheight);
|
||||
|
||||
P_AddRaiseThinker(lines[l].frontsector, lines[l].args[0], lines[i].args[1] << FRACBITS, topheight, bottomheight, (destheight < startheight), !!(lines[i].args[3]));
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 261: // Add air bob thinker to FOF
|
||||
if (udmf)
|
||||
{
|
||||
for (l = -1; (l = P_FindLineFromTag(lines[i].args[0], l)) >= 0 ;)
|
||||
{
|
||||
if (lines[l].special < 100 || lines[l].special >= 300)
|
||||
continue;
|
||||
|
||||
P_AddAirbob(lines[l].frontsector, lines[l].args[0], lines[i].args[1] << FRACBITS, !!(lines[i].args[2] & TMFB_REVERSE), !!(lines[i].args[2] & TMFB_SPINDASH), !!(lines[i].args[2] & TMFB_DYNAMIC));
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 262: // Add thwomp thinker to FOF
|
||||
if (udmf)
|
||||
{
|
||||
UINT16 sound = (lines[i].stringargs[0]) ? get_number(lines[i].stringargs[0]) : sfx_thwomp;
|
||||
|
||||
for (l = -1; (l = P_FindLineFromTag(lines[i].args[0], l)) >= 0 ;)
|
||||
{
|
||||
if (lines[l].special < 100 || lines[l].special >= 300)
|
||||
continue;
|
||||
|
||||
P_AddThwompThinker(lines[l].frontsector, lines[l].args[0], &lines[l], lines[i].args[1] << FRACBITS, lines[i].args[2] << FRACBITS, sound);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 263: // Add laser thinker to FOF
|
||||
if (udmf)
|
||||
{
|
||||
for (l = -1; (l = P_FindLineFromTag(lines[i].args[0], l)) >= 0 ;)
|
||||
{
|
||||
if (lines[l].special < 100 || lines[l].special >= 300)
|
||||
continue;
|
||||
|
||||
P_AddLaserThinker(lines[l].args[0], lines + l, !!(lines[i].args[1]));
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 300: // Linedef executor (combines with sector special 974/975) and commands
|
||||
case 302:
|
||||
case 303:
|
||||
|
@ -7299,7 +7299,7 @@ void P_SpawnSpecials(boolean fromnetsave)
|
|||
INT32 s;
|
||||
INT32 l;
|
||||
|
||||
case 264: // Make FOF bustable
|
||||
case 74: // Make FOF bustable
|
||||
{
|
||||
UINT8 busttype = BT_REGULAR;
|
||||
UINT8 bustflags = 0;
|
||||
|
@ -7357,7 +7357,7 @@ void P_SpawnSpecials(boolean fromnetsave)
|
|||
break;
|
||||
}
|
||||
|
||||
case 265: // Make FOF quicksand
|
||||
case 75: // Make FOF quicksand
|
||||
{
|
||||
if (!udmf)
|
||||
break;
|
||||
|
|
Loading…
Reference in a new issue