From 85a814d379441e6bae5bf9d09414be9cec468824 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sat, 25 Dec 2021 01:35:54 +0100 Subject: [PATCH] - all of track.cpp and vis.cpp --- source/games/sw/src/track.cpp | 30 ++++++++++++------------------ source/games/sw/src/vis.cpp | 13 ++++++------- 2 files changed, 18 insertions(+), 25 deletions(-) diff --git a/source/games/sw/src/track.cpp b/source/games/sw/src/track.cpp index 493990e60..ae8ae7fc6 100644 --- a/source/games/sw/src/track.cpp +++ b/source/games/sw/src/track.cpp @@ -710,10 +710,8 @@ void SectorObjectSetupBounds(SECTOR_OBJECTp sop) { I_Error("SOP bound sprite with hitag %d not found", 501 + (int(sop - SectorObject) * 5)); } - BoundSprite = &BoundActor->s(); - - xhigh = BoundSprite->pos.X; - yhigh = BoundSprite->pos.Y; + xhigh = BoundActor->spr.pos.X; + yhigh = BoundActor->spr.pos.Y; KillActor(BoundActor); @@ -726,10 +724,9 @@ void SectorObjectSetupBounds(SECTOR_OBJECTp sop) BoundActor = FindBoundSprite(SECT_SO_CENTER); if (BoundActor) { - BoundSprite = &BoundActor->s(); - sop->xmid = BoundSprite->pos.X; - sop->ymid = BoundSprite->pos.Y; - sop->zmid = BoundSprite->pos.Z; + sop->xmid = BoundActor->spr.pos.X; + sop->ymid = BoundActor->spr.pos.Y; + sop->zmid = BoundActor->spr.pos.Z; KillActor(BoundActor); } @@ -2811,11 +2808,10 @@ void DoAutoTurretObject(SECTOR_OBJECTp sop) { DSWActor* sActor = sop->so_actors[i]; if (!sActor) continue; - auto shootp = &sActor->s(); - if (shootp->statnum == STAT_SO_SHOOT_POINT) + if (sActor->spr.statnum == STAT_SO_SHOOT_POINT) { - if (!FAFcansee(shootp->pos.X, shootp->pos.Y, shootp->pos.Z-Z(4), shootp->sector(), + if (!FAFcansee(sActor->spr.pos.X, sActor->spr.pos.Y, sActor->spr.pos.Z-Z(4), sActor->spr.sector(), u->targetActor->spr.pos.X, u->targetActor->spr.pos.Y, ActorUpperZ(u->targetActor), u->targetActor->spr.sector())) { return; @@ -3362,7 +3358,6 @@ bool ActorTrackDecide(TRACK_POINTp tpoint, DSWActor* actor) if (u->ActorActionSet->Jump) { int bos_z,nx,ny; - SPRITEp lsp; HitInfo near; // @@ -3375,17 +3370,16 @@ bool ActorTrackDecide(TRACK_POINTp tpoint, DSWActor* actor) ActorLeaveTrack(actor); return false; } - lsp = &lActor->s(); // determine where the player is supposed to be in relation to the ladder // move out in front of the ladder - nx = MOVEx(100, lsp->ang); - ny = MOVEy(100, lsp->ang); + nx = MOVEx(100, lActor->spr.ang); + ny = MOVEy(100, lActor->spr.ang); - actor->spr.pos.X = lsp->pos.X + nx; - actor->spr.pos.Y = lsp->pos.Y + ny; + actor->spr.pos.X = lActor->spr.pos.X + nx; + actor->spr.pos.Y = lActor->spr.pos.Y + ny; - actor->spr.ang = NORM_ANGLE(lsp->ang + 1024); + actor->spr.ang = NORM_ANGLE(lActor->spr.ang + 1024); // // Get the z height to climb diff --git a/source/games/sw/src/vis.cpp b/source/games/sw/src/vis.cpp index 7a0c61470..ad6274d10 100644 --- a/source/games/sw/src/vis.cpp +++ b/source/games/sw/src/vis.cpp @@ -125,13 +125,12 @@ void SpawnVis(DSWActor* parentActor, sectortype* sect, int x, int y, int z, int DSWActor* actorNew = nullptr; if (parentActor != nullptr) { - auto psp = &parentActor->s(); auto pu = parentActor->u(); - if (psp->sector()->floorpal == PALETTE_FOG) + if (parentActor->spr.sector()->floorpal == PALETTE_FOG) return; - if (psp->sector()->floorpal == PALETTE_DIVE_LAVA) + if (parentActor->spr.sector()->floorpal == PALETTE_DIVE_LAVA) return; // kill any others with the same parent @@ -144,16 +143,16 @@ void SpawnVis(DSWActor* parentActor, sectortype* sect, int x, int y, int z, int } } - actorNew = insertActor(psp->sector(), STAT_VIS_ON); + actorNew = insertActor(parentActor->spr.sector(), STAT_VIS_ON); SetOwner(parentActor, actorNew); ASSERT(parentActor->hasU()); SET(pu->Flags2, SPR2_CHILDREN); - actorNew->spr.pos.X = psp->pos.X; - actorNew->spr.pos.Y = psp->pos.Y; - actorNew->spr.pos.Z = psp->pos.Z; + actorNew->spr.pos.X = parentActor->spr.pos.X; + actorNew->spr.pos.Y = parentActor->spr.pos.Y; + actorNew->spr.pos.Z = parentActor->spr.pos.Z; SET(pu->Flags2, SPR2_VIS_SHADING); }