- SW: Revert last commit and apply changes directly in pp->setHeightAndZ() so all bases are covered.

This commit is contained in:
Mitchell Richters 2022-12-15 18:15:11 +11:00
parent b83d321c4b
commit a643a74083
3 changed files with 4 additions and 7 deletions

View file

@ -1888,7 +1888,7 @@ struct PLAYER
void setHeightAndZ(const double newz, const double newheight)
{
actor->spr.pos.Z = newz;
actor->spr.pos.Z = newz - newheight - actor->viewzoffset;
height = newheight;
}

View file

@ -3142,8 +3142,7 @@ void DoPlayerFall(PLAYER* pp)
// i any kind of crawl key get rid of recoil
if (DoPlayerTestCrawl(pp) || (pp->input.actions & SB_CROUCH))
{
pp->actor->spr.pos.Z = pp->loz - PLAYER_CRAWL_HEIGHTF - pp->actor->viewzoffset;
pp->height = PLAYER_CRAWL_HEIGHTF;
pp->setHeightAndZ(pp->loz, PLAYER_CRAWL_HEIGHTF);
}
else
{
@ -3606,8 +3605,7 @@ void DoPlayerCrawl(PLAYER* pp)
if (pp->insector() && (pp->cursector->extra & SECTFX_DYNAMIC_AREA))
{
pp->actor->spr.pos.Z = pp->loz - PLAYER_CRAWL_HEIGHTF - pp->actor->viewzoffset;
pp->height = PLAYER_CRAWL_HEIGHTF;
pp->setHeightAndZ(pp->loz, PLAYER_CRAWL_HEIGHTF);
}
DoPlayerBob(pp);

View file

@ -1743,8 +1743,7 @@ PlayerPart:
{
// move up some for really fast moving plats
DoPlayerZrange(pp);
pp->actor->spr.pos.Z = pp->loz - PLAYER_CRAWL_HEIGHTF - pp->actor->viewzoffset;
pp->height = PLAYER_CRAWL_HEIGHTF;
pp->setHeightAndZ(pp->loz, PLAYER_CRAWL_HEIGHTF);
}
else
{