mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2025-02-01 22:21:05 +00:00
Adapt the remaining plane movement linedef types to UDMF
This commit is contained in:
parent
588c56b224
commit
92982be76b
2 changed files with 20 additions and 13 deletions
|
@ -3085,6 +3085,10 @@ static void P_ConvertBinaryMap(void)
|
|||
case 51: //Instantly raise ceiling on level load
|
||||
lines[i].args[0] = tag;
|
||||
break;
|
||||
case 52: //Continuously falling sector
|
||||
lines[i].args[0] = P_AproxDistance(lines[i].dx, lines[i].dy) >> FRACBITS;
|
||||
lines[i].args[1] = !!(lines[i].flags & ML_NOCLIMB);
|
||||
break;
|
||||
case 53: //Continuous floor/ceiling mover
|
||||
case 54: //Continuous floor mover
|
||||
case 55: //Continuous ceiling mover
|
||||
|
@ -3132,6 +3136,14 @@ static void P_ConvertBinaryMap(void)
|
|||
}
|
||||
lines[i].special = 61;
|
||||
break;
|
||||
case 66: //Move floor by displacement
|
||||
case 67: //Move ceiling by displacement
|
||||
case 68: //Move floor and ceiling by displacement
|
||||
lines[i].args[0] = tag;
|
||||
lines[i].args[1] = lines[i].special - 66;
|
||||
lines[i].args[2] = P_AproxDistance(lines[i].dx, lines[i].dy) >> FRACBITS;
|
||||
lines[i].special = 66;
|
||||
break;
|
||||
case 76: //Make FOF bouncy
|
||||
lines[i].args[0] = tag;
|
||||
lines[i].args[1] = P_AproxDistance(lines[i].dx, lines[i].dy) >> FRACBITS;
|
||||
|
@ -3558,6 +3570,9 @@ static void P_ConvertBinaryMap(void)
|
|||
lines[i].args[4] = !!(lines[i].flags & ML_NOCLIMB);
|
||||
lines[i].special = 405;
|
||||
break;
|
||||
case 411: //Stop plane movement
|
||||
lines[i].args[0] = tag;
|
||||
break;
|
||||
case 428: //Start platform movement
|
||||
lines[i].args[0] = tag;
|
||||
lines[i].args[1] = P_AproxDistance(lines[i].dx, lines[i].dy) >> FRACBITS;
|
||||
|
|
18
src/p_spec.c
18
src/p_spec.c
|
@ -2297,7 +2297,7 @@ static void P_ProcessLineSpecial(line_t *line, mobj_t *mo, sector_t *callsec)
|
|||
break;
|
||||
|
||||
case 411: // Stop floor/ceiling movement in tagged sector(s)
|
||||
TAG_ITER_SECTORS(tag, secnum)
|
||||
TAG_ITER_SECTORS(line->args[0], secnum)
|
||||
{
|
||||
if (sectors[secnum].floordata)
|
||||
{
|
||||
|
@ -6322,7 +6322,7 @@ void P_SpawnSpecials(boolean fromnetsave)
|
|||
break;
|
||||
|
||||
case 52: // Continuously Falling sector
|
||||
EV_DoContinuousFall(lines[i].frontsector, lines[i].backsector, P_AproxDistance(lines[i].dx, lines[i].dy), (lines[i].flags & ML_NOCLIMB));
|
||||
EV_DoContinuousFall(lines[i].frontsector, lines[i].backsector, lines[i].args[0] << FRACBITS, lines[i].args[1]);
|
||||
break;
|
||||
|
||||
case 53: // Continuous plane movement (slowdown)
|
||||
|
@ -6377,17 +6377,9 @@ void P_SpawnSpecials(boolean fromnetsave)
|
|||
}
|
||||
break;
|
||||
|
||||
case 66: // Displace floor by front sector
|
||||
TAG_ITER_SECTORS(tag, s)
|
||||
P_AddPlaneDisplaceThinker(pd_floor, P_AproxDistance(lines[i].dx, lines[i].dy)>>8, sides[lines[i].sidenum[0]].sector-sectors, s, !!(lines[i].flags & ML_NOCLIMB));
|
||||
break;
|
||||
case 67: // Displace ceiling by front sector
|
||||
TAG_ITER_SECTORS(tag, s)
|
||||
P_AddPlaneDisplaceThinker(pd_ceiling, P_AproxDistance(lines[i].dx, lines[i].dy)>>8, sides[lines[i].sidenum[0]].sector-sectors, s, !!(lines[i].flags & ML_NOCLIMB));
|
||||
break;
|
||||
case 68: // Displace both floor AND ceiling by front sector
|
||||
TAG_ITER_SECTORS(tag, s)
|
||||
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));
|
||||
case 66: // Displace planes by front sector
|
||||
TAG_ITER_SECTORS(lines[i].args[0], s)
|
||||
P_AddPlaneDisplaceThinker(lines[i].args[1], abs(lines[i].args[2])<<8, sides[lines[i].sidenum[0]].sector-sectors, s, lines[i].args[2] < 0);
|
||||
break;
|
||||
|
||||
case 70: // Add raise thinker to FOF
|
||||
|
|
Loading…
Reference in a new issue