mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2024-11-15 09:11:48 +00:00
Adapt linedef type 8 to UDMF
This commit is contained in:
parent
2fd6eafbcf
commit
2a1f96aa3c
3 changed files with 38 additions and 22 deletions
|
@ -1721,6 +1721,12 @@ udmf
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
8
|
||||||
|
{
|
||||||
|
title = "Set Camera Collision Planes";
|
||||||
|
prefix = "(8)";
|
||||||
|
}
|
||||||
|
|
||||||
11
|
11
|
||||||
{
|
{
|
||||||
title = "Rope Hang Parameters";
|
title = "Rope Hang Parameters";
|
||||||
|
|
|
@ -3245,6 +3245,34 @@ static void P_ConvertBinaryMap(void)
|
||||||
lines[i].special = 0;
|
lines[i].special = 0;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case 8: //Special sector properties
|
||||||
|
{
|
||||||
|
INT32 s;
|
||||||
|
|
||||||
|
TAG_ITER_SECTORS(tag, s)
|
||||||
|
{
|
||||||
|
if (lines[i].flags & ML_NOCLIMB)
|
||||||
|
{
|
||||||
|
sectors[s].flags &= ~MSF_FLIPSPECIAL_FLOOR;
|
||||||
|
sectors[s].flags |= MSF_FLIPSPECIAL_CEILING;
|
||||||
|
}
|
||||||
|
else if (lines[i].flags & ML_EFFECT4)
|
||||||
|
sectors[s].flags |= MSF_FLIPSPECIAL_BOTH;
|
||||||
|
|
||||||
|
if (lines[i].flags & ML_EFFECT3)
|
||||||
|
sectors[s].flags |= MSF_TRIGGERSPECIAL_TOUCH;
|
||||||
|
if (lines[i].flags & ML_EFFECT2)
|
||||||
|
sectors[s].flags |= MSF_TRIGGERSPECIAL_HEADBUMP;
|
||||||
|
|
||||||
|
if (lines[i].flags & ML_EFFECT1)
|
||||||
|
sectors[s].flags |= MSF_INVERTPRECIP;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (GETSECSPECIAL(lines[i].frontsector->special, 4) != 12)
|
||||||
|
lines[i].special = 0;
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
case 10: //Culling plane
|
case 10: //Culling plane
|
||||||
lines[i].args[0] = tag;
|
lines[i].args[0] = tag;
|
||||||
lines[i].args[1] = !!(lines[i].flags & ML_NOCLIMB);
|
lines[i].args[1] = !!(lines[i].flags & ML_NOCLIMB);
|
||||||
|
|
26
src/p_spec.c
26
src/p_spec.c
|
@ -6143,28 +6143,10 @@ void P_SpawnSpecials(boolean fromnetsave)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case 8: // Sector Parameters
|
case 8: // Set camera collision planes
|
||||||
TAG_ITER_SECTORS(tag, s)
|
if (lines[i].frontsector)
|
||||||
{
|
TAG_ITER_SECTORS(tag, s)
|
||||||
if (lines[i].flags & ML_NOCLIMB)
|
sectors[s].camsec = lines[i].frontsector-sectors;
|
||||||
{
|
|
||||||
sectors[s].flags &= ~MSF_FLIPSPECIAL_FLOOR;
|
|
||||||
sectors[s].flags |= MSF_FLIPSPECIAL_CEILING;
|
|
||||||
}
|
|
||||||
else if (lines[i].flags & ML_EFFECT4)
|
|
||||||
sectors[s].flags |= MSF_FLIPSPECIAL_BOTH;
|
|
||||||
|
|
||||||
if (lines[i].flags & ML_EFFECT3)
|
|
||||||
sectors[s].flags |= MSF_TRIGGERSPECIAL_TOUCH;
|
|
||||||
if (lines[i].flags & ML_EFFECT2)
|
|
||||||
sectors[s].flags |= MSF_TRIGGERSPECIAL_HEADBUMP;
|
|
||||||
|
|
||||||
if (lines[i].flags & ML_EFFECT1)
|
|
||||||
sectors[s].flags |= MSF_INVERTPRECIP;
|
|
||||||
|
|
||||||
if (lines[i].frontsector && GETSECSPECIAL(lines[i].frontsector->special, 4) == 12)
|
|
||||||
sectors[s].camsec = sides[*lines[i].sidenum].sector-sectors;
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 10: // Vertical culling plane for sprites and FOFs
|
case 10: // Vertical culling plane for sprites and FOFs
|
||||||
|
|
Loading…
Reference in a new issue