- added a compatibility fix for KDiZD Z1M3 and fixed some tagging issues in the compatibility handler.

One sector in an underwater area of KDIZD Z1M3 got tagged with an incorrect Transfer_Heights effect which caused render glitches in that area.
There were also a few AddSectorTag calls without first clearing the sector's tags leading to potentially undefined behavior.
This commit is contained in:
Christoph Oelckers 2019-02-07 09:42:51 +01:00
parent eec53a6670
commit 5af5717cf1

View file

@ -373,6 +373,7 @@ class LevelCompatibility native play
SetWallTexture(1027, Line.back, Side.top, "SP_HOT1");
// Replace tag for eastern secret at level start to not
// cause any action to the two-Baron trap
ClearSectorTags(127);
AddSectorTag(127, 100);
SetLineSpecial(382, Door_Open, 100, 16);
SetLineSpecial(388, Door_Open, 100, 16);
@ -997,7 +998,7 @@ class LevelCompatibility native play
SetLineSectorRef(328, Line.front, 74);
SetLineSectorRef(329, Line.front, 74);
AddSectorTag(74, 4);
SetLineSpecial(357, Transfer_Heights, 6);
SetLineSpecial(357, Transfer_Heights, 4, 6);
break;
}
@ -1220,6 +1221,15 @@ class LevelCompatibility native play
// Fix the soulsphere in a secret area (sector 324)
// so that it doesn't end up in an unreachable position.
SetThingXY(516, -934, 48);
break;
}
case '11EA5B8357DEB70A8F00900117831191': // kdizd_12.pk3 z1m3
{
// Fix incorrectly tagged underwater sector which causes render glitches.
ClearSectorTags(7857);
AddSectorTag(7857, 82);
break;
}
}
}