From 46e38e025e1b3f16a09ca95d5bda4a87e21e85ba Mon Sep 17 00:00:00 2001 From: qndel Date: Sun, 11 Oct 2020 15:28:09 +0200 Subject: [PATCH] RechargeItem cleanup --- Source/items.cpp | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/Source/items.cpp b/Source/items.cpp index a840e7f1f..a2fce4078 100644 --- a/Source/items.cpp +++ b/Source/items.cpp @@ -3600,17 +3600,16 @@ BOOL OilItem(ItemStruct *x, PlayerStruct *p) #endif void RechargeItem(ItemStruct *i, int r) { - while (i->_iCharges != i->_iMaxCharges) { - i->_iMaxCharges--; - if (i->_iMaxCharges == 0) { - break; - } - i->_iCharges += r; - if (i->_iCharges >= i->_iMaxCharges) { - if (i->_iCharges > i->_iMaxCharges) - i->_iCharges = i->_iMaxCharges; - return; - } + if (i->_iCharges != i->_iMaxCharges) { + do { + i->_iMaxCharges--; + if (i->_iMaxCharges == 0) { + return; + } + i->_iCharges += r; + } while (i->_iCharges < i->_iMaxCharges); + if (i->_iCharges > i->_iMaxCharges) + i->_iCharges = i->_iMaxCharges; } }