From 80f2afd6a4444156bf28a3dc53186c4019d2bc5a Mon Sep 17 00:00:00 2001 From: Mitchell Richters Date: Mon, 24 Apr 2023 19:06:46 +1000 Subject: [PATCH] - Exhumed: Slightly tidy up `updatePlayerWeapon()`. --- source/games/exhumed/src/player.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/source/games/exhumed/src/player.cpp b/source/games/exhumed/src/player.cpp index 444aa33a9..388f7bcac 100644 --- a/source/games/exhumed/src/player.cpp +++ b/source/games/exhumed/src/player.cpp @@ -1194,14 +1194,15 @@ static void updatePlayerWeapon(Player* const pPlayer) if (const auto weapDir = (newWeap == WeaponSel_Next) - (newWeap == WeaponSel_Prev)) { - int nextWeap = getWrappedIndex(pPlayer->nCurrentWeapon + weapDir, kMaxWeapons); - int haveWeap = pPlayer->nPlayerWeapons & (1 << nextWeap); + int nextWeap = pPlayer->nCurrentWeapon; + int haveWeap; - while (nextWeap && (!haveWeap || (haveWeap && !pPlayer->nAmmo[nextWeap]))) + do { nextWeap = getWrappedIndex(nextWeap + weapDir, kMaxWeapons); haveWeap = pPlayer->nPlayerWeapons & (1 << nextWeap); } + while (nextWeap && (!haveWeap || (haveWeap && !pPlayer->nAmmo[nextWeap]))); SetNewWeapon(pPlayer->nPlayer, nextWeap); }