mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2025-01-30 13:10:55 +00:00
If NOT skewing FOF walls, make sure dc_texturemid reverts to using unsloped FOF topheight/bottomheight rather than actual left side top/bottom heights
This commit is contained in:
parent
74e7433a92
commit
df7c8482e4
1 changed files with 21 additions and 21 deletions
42
src/r_segs.c
42
src/r_segs.c
|
@ -968,45 +968,45 @@ void R_RenderThickSideRange(drawseg_t *ds, INT32 x1, INT32 x2, ffloor_t *pfloor)
|
||||||
left_bottom = P_GetZAt(*pfloor->b_slope, ds->leftpos.x, ds->leftpos.y) - viewz;
|
left_bottom = P_GetZAt(*pfloor->b_slope, ds->leftpos.x, ds->leftpos.y) - viewz;
|
||||||
else
|
else
|
||||||
left_bottom = *pfloor->bottomheight - viewz;
|
left_bottom = *pfloor->bottomheight - viewz;
|
||||||
dc_texturemid = left_top;
|
|
||||||
skewslope = *pfloor->t_slope; // skew using top slope by default
|
skewslope = *pfloor->t_slope; // skew using top slope by default
|
||||||
#else
|
if (newline && newline->flags & ML_DONTPEGTOP)
|
||||||
dc_texturemid = *pfloor->topheight - viewz;
|
slopeskew = true;
|
||||||
|
else if (pfloor->master->flags & ML_DONTPEGTOP)
|
||||||
|
slopeskew = true;
|
||||||
|
|
||||||
|
if (slopeskew)
|
||||||
|
dc_texturemid = left_top;
|
||||||
|
else
|
||||||
#endif
|
#endif
|
||||||
|
dc_texturemid = *pfloor->topheight - viewz;
|
||||||
|
|
||||||
if (newline)
|
if (newline)
|
||||||
{
|
{
|
||||||
offsetvalue = sides[newline->sidenum[0]].rowoffset;
|
offsetvalue = sides[newline->sidenum[0]].rowoffset;
|
||||||
if (newline->flags & ML_DONTPEGBOTTOM)
|
if (newline->flags & ML_DONTPEGBOTTOM)
|
||||||
#ifdef ESLOPE
|
|
||||||
{
|
{
|
||||||
dc_texturemid = left_bottom;
|
|
||||||
skewslope = *pfloor->b_slope; // skew using bottom slope
|
|
||||||
}
|
|
||||||
#else
|
|
||||||
offsetvalue -= *pfloor->topheight - *pfloor->bottomheight;
|
|
||||||
#endif
|
|
||||||
#ifdef ESLOPE
|
#ifdef ESLOPE
|
||||||
if (newline->flags & ML_DONTPEGTOP)
|
skewslope = *pfloor->b_slope; // skew using bottom slope
|
||||||
slopeskew = true;
|
if (slopeskew)
|
||||||
|
dc_texturemid = left_bottom;
|
||||||
|
else
|
||||||
#endif
|
#endif
|
||||||
|
offsetvalue -= *pfloor->topheight - *pfloor->bottomheight;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
offsetvalue = sides[pfloor->master->sidenum[0]].rowoffset;
|
offsetvalue = sides[pfloor->master->sidenum[0]].rowoffset;
|
||||||
if (curline->linedef->flags & ML_DONTPEGBOTTOM)
|
if (curline->linedef->flags & ML_DONTPEGBOTTOM)
|
||||||
#ifdef ESLOPE
|
|
||||||
{
|
{
|
||||||
dc_texturemid = left_bottom;
|
|
||||||
skewslope = *pfloor->b_slope; // skew using bottom slope
|
|
||||||
}
|
|
||||||
#else
|
|
||||||
offsetvalue -= *pfloor->topheight - *pfloor->bottomheight;
|
|
||||||
#endif
|
|
||||||
#ifdef ESLOPE
|
#ifdef ESLOPE
|
||||||
if (pfloor->master->flags & ML_DONTPEGTOP) // use control linedef's flags
|
skewslope = *pfloor->b_slope; // skew using bottom slope
|
||||||
slopeskew = true;
|
if (slopeskew)
|
||||||
|
dc_texturemid = left_bottom;
|
||||||
|
else
|
||||||
#endif
|
#endif
|
||||||
|
offsetvalue -= *pfloor->topheight - *pfloor->bottomheight;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef ESLOPE
|
#ifdef ESLOPE
|
||||||
|
|
Loading…
Reference in a new issue