From 2ff4aaf6b8b2e4314e172a8771d64afd6951b0be Mon Sep 17 00:00:00 2001 From: Mitchell Richters Date: Tue, 3 Oct 2023 22:26:51 +1100 Subject: [PATCH] - Duke: Clean up player/actor accesses in `PlayerColorChanged()`. --- source/games/duke/src/player.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/source/games/duke/src/player.cpp b/source/games/duke/src/player.cpp index 96180c39a..5aa3c2efb 100644 --- a/source/games/duke/src/player.cpp +++ b/source/games/duke/src/player.cpp @@ -59,17 +59,22 @@ void PlayerColorChanged(void) if (ud.recstat != 0) return; - auto pp = getPlayer(myconnectindex); + const auto p = getPlayer(myconnectindex); + const auto pact = p->GetActor(); + if (ud.multimode > 1) { //Net_SendClientInfo(); } else { - pp->palookup = ud.user_pals[myconnectindex] = playercolor2lookup(playercolor); + p->palookup = ud.user_pals[myconnectindex] = playercolor2lookup(playercolor); + } + + if (pact && pact->spr.pal != 1) + { + pact->spr.pal = ud.user_pals[myconnectindex]; } - if (pp->GetActor()->isPlayer() && pp->GetActor()->spr.pal != 1) - pp->GetActor()->spr.pal = ud.user_pals[myconnectindex]; } //---------------------------------------------------------------------------