always recalculate texture offsets

This commit is contained in:
Fabian Greffrath 2021-05-03 09:35:03 +02:00
parent 50fea6fa0b
commit 5d18a225a5
3 changed files with 7 additions and 2 deletions

View File

@ -121,7 +121,7 @@ mapformat_t P_CheckMapFormat (int lumpnum)
// [FG] recalculate seg offsets
static fixed_t GetOffset(vertex_t *v1, vertex_t *v2)
fixed_t P_GetOffset(vertex_t *v1, vertex_t *v2)
{
fixed_t dx, dy;
fixed_t r;
@ -170,6 +170,8 @@ void P_LoadSegs_DeePBSP (int lump)
side = SHORT(ml->side);
li->sidedef = &sides[ldef->sidenum[side]];
li->frontsector = sides[ldef->sidenum[side]].sector;
// [FG] recalculate
li->offset = P_GetOffset(li->v1, (ml->side ? ldef->v2 : ldef->v1));
// killough 5/3/98: ignore 2s flag if second sidedef missing:
if (ldef->flags & ML_TWOSIDED && ldef->sidenum[side^1]!=NO_INDEX)
@ -429,7 +431,7 @@ void P_LoadNodes_ZDBSP (int lump, boolean compressed)
// seg angle and offset are not included
li->angle = R_PointToAngle2(segs[i].v1->x, segs[i].v1->y, segs[i].v2->x, segs[i].v2->y);
li->offset = GetOffset(li->v1, (ml->side ? ldef->v2 : ldef->v1));
li->offset = P_GetOffset(li->v1, (ml->side ? ldef->v2 : ldef->v1));
// killough 5/3/98: ignore 2s flag if second sidedef missing:
if (ldef->flags & ML_TWOSIDED && ldef->sidenum[side^1]!=NO_INDEX)

View File

@ -40,6 +40,7 @@ typedef enum
} mapformat_t;
extern mapformat_t P_CheckMapFormat (int lumpnum);
extern fixed_t P_GetOffset(vertex_t *v1, vertex_t *v2);
extern void P_LoadSegs_DeePBSP (int lump);
extern void P_LoadSubsectors_DeePBSP (int lump);

View File

@ -185,6 +185,8 @@ void P_LoadSegs (int lump)
side = SHORT(ml->side);
li->sidedef = &sides[ldef->sidenum[side]];
li->frontsector = sides[ldef->sidenum[side]].sector;
// [FG] recalculate
li->offset = P_GetOffset(li->v1, (ml->side ? ldef->v2 : ldef->v1));
// killough 5/3/98: ignore 2s flag if second sidedef missing:
if (ldef->flags & ML_TWOSIDED && ldef->sidenum[side^1]!=NO_INDEX)