- SW: use surface types for detecting water and lava sectors

This commit is contained in:
Christoph Oelckers 2022-12-09 10:03:36 +01:00
parent 32ad16f84d
commit 9d62951cf3
5 changed files with 85 additions and 17 deletions

View file

@ -887,6 +887,12 @@ enum ETexFlags
TFLAG_BUNNYFRIENDLY = 1, // bunnies like to stay in sectors with this as floor.
};
enum ESurfType
{
TSURF_WATER = 1,
TSURF_LAVA = 2,
};
// User->Flags flags
enum
{

View file

@ -313,3 +313,36 @@ x(LAWN, 3561)
x(SAND, 3562)
x(FLOWERLAWN, 3563)
x(THINGRASS, 3564)
x(FLWATER1, 300)
x(FLWATER2, 301)
x(FLWATER3, 302)
x(FLWATER4, 303)
x(FLWATER5, 304)
x(FLWATER6, 305)
x(FLWATER7, 306)
x(FLWATER8, 307)
x(WATER1, 320)
x(WATER2, 321)
x(WATER3, 322)
x(WATER4, 323)
x(WATER5, 324)
x(WATER6, 325)
x(WATER7, 326)
x(WATER8, 327)
x(WHIRL1, 890)
x(WHIRL2, 891)
x(WHIRL3, 892)
x(WHIRL4, 893)
x(WHIRL5, 894)
x(WHIRL6, 895)
x(WHIRL7, 896)
x(WHIRL8, 897)
x(LAVA1, 175)
x(LAVA2, 176)
x(LAVA3, 177)
x(LAVA4, 178)
x(LAVA5, 179)
x(LAVA6, 180)
x(LAVA7, 181)
x(LAVA8, 182)

View file

@ -357,27 +357,12 @@ void SectorLiquidSet(sectortype* sectp)
//
// ///////////////////////////////////
if (sectp->floorpicnum >= 300 && sectp->floorpicnum <= 307)
if (tilesurface(sectp->floortexture()) == TSURF_WATER)
{
sectp->u_defined = true;
sectp->extra |= (SECTFX_LIQUID_WATER);
}
else if (sectp->floorpicnum >= 320 && sectp->floorpicnum <= 343)
{
sectp->u_defined = true;
sectp->extra |= (SECTFX_LIQUID_WATER);
}
else if (sectp->floorpicnum >= 780 && sectp->floorpicnum <= 794)
{
sectp->u_defined = true;
sectp->extra |= (SECTFX_LIQUID_WATER);
}
else if (sectp->floorpicnum >= 890 && sectp->floorpicnum <= 897)
{
sectp->u_defined = true;
sectp->extra |= (SECTFX_LIQUID_WATER);
}
else if (sectp->floorpicnum >= 175 && sectp->floorpicnum <= 182)
else if (tilesurface(sectp->floortexture()) == TSURF_LAVA)
{
sectp->u_defined = true;
sectp->extra |= (SECTFX_LIQUID_LAVA);

View file

@ -4,5 +4,9 @@ constants
{
// texture flags
TFLAG_BUNNYFRIENDLY = 1
// surface types
TSURF_WATER = 1
TSURF_LAVA = 2
}

View file

@ -15,3 +15,43 @@ textureflags
FLOWERLAWN,
THINGRASS
}
surfacetypes
{
TSURF_WATER =
FLWATER1,
FLWATER2,
FLWATER3,
FLWATER4,
FLWATER5,
FLWATER6,
FLWATER7,
FLWATER8,
WATER1,
WATER2,
WATER3,
WATER4,
WATER5,
WATER6,
WATER7,
WATER8,
WHIRL1,
WHIRL2,
WHIRL3,
WHIRL4,
WHIRL5,
WHIRL6,
WHIRL7,
WHIRL8
TSURF_LAVA =
LAVA1,
LAVA2,
LAVA3,
LAVA4,
LAVA5,
LAVA6,
LAVA7,
LAVA8
}