From 6f102e1171b4a7ce457e4290751479e723096d79 Mon Sep 17 00:00:00 2001 From: Mitchell Richters Date: Mon, 21 Nov 2022 13:29:33 +1100 Subject: [PATCH] - Duke: Remove `player_struct::posX()` and `player_struct::posY()`. --- source/core/coreactor.h | 5 +++++ source/games/duke/src/actors.cpp | 13 ++----------- source/games/duke/src/actors_d.cpp | 6 ++---- source/games/duke/src/actors_r.cpp | 9 +++------ source/games/duke/src/gameexec.cpp | 4 ++-- source/games/duke/src/player.cpp | 10 ++++------ source/games/duke/src/player_r.cpp | 6 ++---- source/games/duke/src/types.h | 8 -------- 8 files changed, 20 insertions(+), 41 deletions(-) diff --git a/source/core/coreactor.h b/source/core/coreactor.h index c35e809e8..d2bdbd4bd 100644 --- a/source/core/coreactor.h +++ b/source/core/coreactor.h @@ -139,6 +139,11 @@ public: backupang(); } + void restorevec2() + { + spr.pos.XY() = opos.XY(); + } + void restorepos() { spr.pos = opos; diff --git a/source/games/duke/src/actors.cpp b/source/games/duke/src/actors.cpp index e9daaaf2b..201437981 100644 --- a/source/games/duke/src/actors.cpp +++ b/source/games/duke/src/actors.cpp @@ -374,8 +374,7 @@ void movedummyplayers(void) } } - act->spr.pos.X += (ps[p].posX() - ps[p].posoldX()); - act->spr.pos.Y += (ps[p].posY() - ps[p].posoldY()); + act->spr.pos.XY() += ps[p].GetActor()->spr.pos.XY() - ps[p].GetActor()->opos.XY(); SetActor(act, act->spr.pos); } } @@ -1868,15 +1867,7 @@ void handle_se00(DDukeActor* actor) ps[p].bobpos += (result - ps[p].posXY()); - ps[p].posX() = result.X; - ps[p].posY() = result.Y; - - auto psp = ps[p].GetActor(); - if (psp->spr.extra <= 0) - { - psp->spr.pos.X = result.X; - psp->spr.pos.Y = result.Y; - } + ps[p].GetActor()->spr.pos.XY() = result; } } DukeSectIterator itp(actor->sector()); diff --git a/source/games/duke/src/actors_d.cpp b/source/games/duke/src/actors_d.cpp index 7002051bd..c3b4a6e1f 100644 --- a/source/games/duke/src/actors_d.cpp +++ b/source/games/duke/src/actors_d.cpp @@ -1367,8 +1367,7 @@ void movetransports_d(void) if ((ps[p].jetpack_on == 0) || (ps[p].jetpack_on && (PlayerInput(p, SB_JUMP))) || (ps[p].jetpack_on && PlayerInput(p, SB_CROUCH))) { - ps[p].posX() += Owner->spr.pos.X - act->spr.pos.X; - ps[p].posY() += Owner->spr.pos.Y - act->spr.pos.Y; + ps[p].GetActor()->spr.pos.XY() += Owner->spr.pos.XY() - act->spr.pos.XY(); ps[p].GetActor()->backupvec2(); if (ps[p].jetpack_on && (PlayerInput(p, SB_JUMP) || ps[p].jetpack_on < 11)) @@ -1425,8 +1424,7 @@ void movetransports_d(void) if (k == 1) { - ps[p].posX() += Owner->spr.pos.X - act->spr.pos.X; - ps[p].posY() += Owner->spr.pos.Y - act->spr.pos.Y; + ps[p].GetActor()->spr.pos.XY() += Owner->spr.pos.XY() - act->spr.pos.XY(); ps[p].GetActor()->backupvec2(); if (!Owner || Owner->GetOwner() != Owner) diff --git a/source/games/duke/src/actors_r.cpp b/source/games/duke/src/actors_r.cpp index 64b284e92..86c1a0da2 100644 --- a/source/games/duke/src/actors_r.cpp +++ b/source/games/duke/src/actors_r.cpp @@ -1252,8 +1252,7 @@ void movetransports_r(void) if ((ps[p].jetpack_on == 0) || (ps[p].jetpack_on && PlayerInput(p, SB_JUMP)) || (ps[p].jetpack_on && PlayerInput(p, SB_CROUCH))) { - ps[p].posX() += Owner->spr.pos.X - act->spr.pos.X; - ps[p].posY() += Owner->spr.pos.Y - act->spr.pos.Y; + ps[p].GetActor()->spr.pos.XY() += Owner->spr.pos.XY() - act->spr.pos.XY(); ps[p].GetActor()->backupvec2(); if (ps[p].jetpack_on && (PlayerInput(p, SB_JUMP) || ps[p].jetpack_on < 11)) @@ -1319,8 +1318,7 @@ void movetransports_r(void) if (k == 1) { - ps[p].posX() += Owner->spr.pos.X - act->spr.pos.X; - ps[p].posY() += Owner->spr.pos.Y - act->spr.pos.Y; + ps[p].GetActor()->spr.pos.XY() += Owner->spr.pos.XY() - act->spr.pos.XY(); ps[p].GetActor()->backupvec2(); if (Owner->GetOwner() != Owner) @@ -1334,8 +1332,7 @@ void movetransports_r(void) } else if (isRRRA() && k == 2) { - ps[p].posoldX() = ps[p].posX() += Owner->spr.pos.X - act->spr.pos.X; - ps[p].posoldY() = ps[p].posY() += Owner->spr.pos.Y - act->spr.pos.Y; + ps[p].GetActor()->spr.pos.XY() += Owner->spr.pos.XY() - act->spr.pos.XY(); ps[p].GetActor()->backupvec2(); if (Owner->GetOwner() != Owner) diff --git a/source/games/duke/src/gameexec.cpp b/source/games/duke/src/gameexec.cpp index 2981d9121..7f87000cf 100644 --- a/source/games/duke/src/gameexec.cpp +++ b/source/games/duke/src/gameexec.cpp @@ -326,11 +326,11 @@ void DoPlayer(bool bSet, int lVar1, int lLabelID, int lVar2, DDukeActor* sActor, break; case PLAYER_POSX: // oh, my... :( Writing to these has been disabled until I know how to do it without the engine shitting all over itself. - if (!bSet) SetGameVarID(lVar2, int(ps[iPlayer].posX() * (1/maptoworld)), sActor, sPlayer); + if (!bSet) SetGameVarID(lVar2, int(ps[iPlayer].GetActor()->spr.pos.X * (1/maptoworld)), sActor, sPlayer); break; case PLAYER_POSY: - if (!bSet) SetGameVarID(lVar2, int(ps[iPlayer].posY() * (1 / maptoworld)), sActor, sPlayer); + if (!bSet) SetGameVarID(lVar2, int(ps[iPlayer].GetActor()->spr.pos.Y * (1 / maptoworld)), sActor, sPlayer); break; case PLAYER_POSZ: diff --git a/source/games/duke/src/player.cpp b/source/games/duke/src/player.cpp index 2d02cea5e..7cb80eb96 100644 --- a/source/games/duke/src/player.cpp +++ b/source/games/duke/src/player.cpp @@ -507,8 +507,8 @@ void footprints(int snum) while (auto act = it.Next()) { if (act->spr.picnum == TILE_FOOTPRINTS || act->spr.picnum == TILE_FOOTPRINTS2 || act->spr.picnum == TILE_FOOTPRINTS3 || act->spr.picnum == TILE_FOOTPRINTS4) - if (abs(act->spr.pos.X - p->posX()) < 24) - if (abs(act->spr.pos.Y - p->posY()) < 24) + if (abs(act->spr.pos.X - p->GetActor()->spr.pos.X) < 24) + if (abs(act->spr.pos.Y - p->GetActor()->spr.pos.Y) < 24) { j = 1; break; @@ -765,13 +765,11 @@ void player_struct::backuppos(bool noclipping) { if (!noclipping) { - posoldX() = posX(); - posoldY() = posY(); + GetActor()->backupvec2(); } else { - posX() = posoldX(); - posY() = posoldY(); + GetActor()->restorevec2(); } posoldZset(posZget()); diff --git a/source/games/duke/src/player_r.cpp b/source/games/duke/src/player_r.cpp index 7631dbce0..e8c73eb04 100644 --- a/source/games/duke/src/player_r.cpp +++ b/source/games/duke/src/player_r.cpp @@ -3991,8 +3991,7 @@ void OnMotorcycle(player_struct *p, DDukeActor* motosprite) { if (motosprite) { - p->posX() = motosprite->spr.pos.X; - p->posY() = motosprite->spr.pos.Y; + p->GetActor()->spr.pos.XY() = motosprite->spr.pos.XY(); p->angle.ang = motosprite->spr.angle; p->ammo_amount[MOTORCYCLE_WEAPON] = motosprite->saved_ammo; motosprite->Destroy(); @@ -4066,8 +4065,7 @@ void OnBoat(player_struct *p, DDukeActor* boat) { if (boat) { - p->posX() = boat->spr.pos.X; - p->posY() = boat->spr.pos.Y; + p->GetActor()->spr.pos.XY() = boat->spr.pos.XY(); p->angle.ang = boat->spr.angle; p->ammo_amount[BOAT_WEAPON] = boat->saved_ammo; boat->Destroy(); diff --git a/source/games/duke/src/types.h b/source/games/duke/src/types.h index 6ed4fc883..eecb796d3 100644 --- a/source/games/duke/src/types.h +++ b/source/games/duke/src/types.h @@ -336,14 +336,6 @@ struct player_struct } - double& posX() - { - return GetActor()->spr.pos.X; - } - double& posY() - { - return GetActor()->spr.pos.Y; - } DVector2& posXY() { return GetActor()->spr.pos.XY();