From 3293d2337bae67b4a7b048e88c6cfb89a4263f38 Mon Sep 17 00:00:00 2001 From: Mitchell Richters Date: Tue, 3 Oct 2023 23:01:16 +1100 Subject: [PATCH] - Duke: Clean up player/actor accesses in `underwater()`. --- source/games/duke/src/funct.h | 2 +- source/games/duke/src/player.cpp | 9 +++++---- source/games/duke/src/player_d.cpp | 2 +- source/games/duke/src/player_r.cpp | 2 +- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/source/games/duke/src/funct.h b/source/games/duke/src/funct.h index 2a290f46b..ea6dfc76f 100644 --- a/source/games/duke/src/funct.h +++ b/source/games/duke/src/funct.h @@ -236,7 +236,7 @@ void donewgame(MapRecord* map, int sk); int playercolor2lookup(int color); void PlayerColorChanged(void); bool movementBlocked(DDukePlayer *p); -void underwater(int snum, ESyncBits actions, double floorz, double ceilingz); +void underwater(DDukePlayer* p, ESyncBits actions, double floorz, double ceilingz); void loadcons(); void DrawStatusBar(); void thunder(void); diff --git a/source/games/duke/src/player.cpp b/source/games/duke/src/player.cpp index c532e09cd..8ab538465 100644 --- a/source/games/duke/src/player.cpp +++ b/source/games/duke/src/player.cpp @@ -1568,8 +1568,10 @@ void playerkick(DDukePlayer* p, DDukeActor* g_ac) { if (ud.multimode > 1 && g_ac->isPlayer()) { - if (getPlayer(otherp)->quick_kick == 0) - getPlayer(otherp)->quick_kick = 14; + const auto p2 = getPlayer(otherp); + + if (p2->quick_kick == 0) + p2->quick_kick = 14; } else if (!g_ac->isPlayer() && p->quick_kick == 0) p->quick_kick = 14; @@ -1581,9 +1583,8 @@ void playerkick(DDukePlayer* p, DDukeActor* g_ac) // //--------------------------------------------------------------------------- -void underwater(int snum, ESyncBits actions, double floorz, double ceilingz) +void underwater(DDukePlayer* const p, ESyncBits actions, double floorz, double ceilingz) { - const auto p = getPlayer(snum); const auto pact = p->GetActor(); constexpr double dist = (348. / 256.); const auto kbdDir = ((actions & SB_JUMP) && !p->OnMotorcycle) - ((actions & SB_CROUCH) || p->OnMotorcycle); diff --git a/source/games/duke/src/player_d.cpp b/source/games/duke/src/player_d.cpp index f1a7b524c..09af54946 100644 --- a/source/games/duke/src/player_d.cpp +++ b/source/games/duke/src/player_d.cpp @@ -1693,7 +1693,7 @@ void processinput_d(int snum) if (psectlotag == ST_2_UNDERWATER) { - underwater(snum, actions, floorz, ceilingz); + underwater(p, actions, floorz, ceilingz); } else if (p->jetpack_on) { diff --git a/source/games/duke/src/player_r.cpp b/source/games/duke/src/player_r.cpp index 5a3c778f6..02292d28f 100644 --- a/source/games/duke/src/player_r.cpp +++ b/source/games/duke/src/player_r.cpp @@ -2524,7 +2524,7 @@ void processinput_r(int snum) } if (psectlotag == ST_2_UNDERWATER) { - underwater(snum, actions, floorz, ceilingz); + underwater(p, actions, floorz, ceilingz); } else {