From 11624420680052b6621f262afd7f32a0f9953aa0 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Wed, 24 Nov 2021 23:41:59 +0100 Subject: [PATCH] - handle most GetOverlapSector callers. --- source/games/sw/src/player.cpp | 16 +++++++--------- source/games/sw/src/weapon.cpp | 10 ++++------ 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/source/games/sw/src/player.cpp b/source/games/sw/src/player.cpp index 93cd08acf..252f1f464 100644 --- a/source/games/sw/src/player.cpp +++ b/source/games/sw/src/player.cpp @@ -4073,7 +4073,6 @@ void DoPlayerWarpToUnderwater(PLAYERp pp) auto sectu = pp->cursector(); SPRITEp under_sp = nullptr, over_sp = nullptr; bool Found = false; - short over, under; if (Prediction) return; @@ -4122,15 +4121,15 @@ void DoPlayerWarpToUnderwater(PLAYERp pp) pp->posx = under_sp->x - u->sx; pp->posy = under_sp->y - u->sy; - over = over_sp->sectnum; - under = under_sp->sectnum; + auto over = over_sp->sector(); + auto under = under_sp->sector(); if (GetOverlapSector(pp->posx, pp->posy, &over, &under) == 2) { - pp->cursectnum = under; + pp->setcursector(under); } else - pp->cursectnum = over; + pp->setcursector(over); pp->posz = under_sp->sector()->ceilingz + Z(6); @@ -4146,7 +4145,6 @@ void DoPlayerWarpToSurface(PLAYERp pp) { USERp u = pp->Actor()->u(); auto sectu = pp->cursector(); - short over, under; SPRITEp under_sp = nullptr, over_sp = nullptr; bool Found = false; @@ -4197,12 +4195,12 @@ void DoPlayerWarpToSurface(PLAYERp pp) pp->posx = over_sp->x - u->sx; pp->posy = over_sp->y - u->sy; - over = over_sp->sectnum; - under = under_sp->sectnum; + auto over = over_sp->sector(); + auto under = under_sp->sector(); if (GetOverlapSector(pp->posx, pp->posy, &over, &under)) { - pp->cursectnum = over; + pp->setcursector(over); } pp->posz = over_sp->sector()->floorz - Z(2); diff --git a/source/games/sw/src/weapon.cpp b/source/games/sw/src/weapon.cpp index 531f04c0f..80373a37d 100644 --- a/source/games/sw/src/weapon.cpp +++ b/source/games/sw/src/weapon.cpp @@ -18023,7 +18023,6 @@ bool SpriteWarpToUnderwater(DSWActor* actor) auto sectu = sp->sector(); SPRITEp under_sp = nullptr, over_sp = nullptr; bool Found = false; - short over, under; int sx, sy; // 0 not valid for water match tags @@ -18073,8 +18072,8 @@ bool SpriteWarpToUnderwater(DSWActor* actor) sp->x = under_sp->x - sx; sp->y = under_sp->y - sy; - over = over_sp->sectnum; - under = under_sp->sectnum; + auto over = over_sp->sector(); + auto under = under_sp->sector(); if (GetOverlapSector(sp->x, sp->y, &over, &under) == 2) { @@ -18097,7 +18096,6 @@ bool SpriteWarpToSurface(DSWActor* actor) USERp u = actor->u(); auto sp = &actor->s(); auto sectu = sp->sector(); - short over, under; int sx, sy; SPRITEp under_sp = nullptr, over_sp = nullptr; @@ -18154,8 +18152,8 @@ bool SpriteWarpToSurface(DSWActor* actor) sp->x = over_sp->x - sx; sp->y = over_sp->y - sy; - over = over_sp->sectnum; - under = under_sp->sectnum; + auto over = over_sp->sector(); + auto under = under_sp->sector(); if (GetOverlapSector(sp->x, sp->y, &over, &under)) {