diff --git a/apps/openmw/mwmp/LocalPlayer.cpp b/apps/openmw/mwmp/LocalPlayer.cpp index 2925b2ad2..c2cb4fef9 100644 --- a/apps/openmw/mwmp/LocalPlayer.cpp +++ b/apps/openmw/mwmp/LocalPlayer.cpp @@ -1,5 +1,6 @@ #include #include +#include #include "../mwbase/environment.hpp" #include "../mwbase/journal.hpp" @@ -476,9 +477,11 @@ void LocalPlayer::updateEquipment(bool forceUpdate) if (it != invStore.end()) { - if (!::Misc::StringUtils::ciEqual(it->getCellRef().getRefId(), equipmentItems[slot].refId) || - it->getCellRef().getCharge() != item.charge || - it->getCellRef().getEnchantmentCharge() != item.enchantmentCharge || + MWWorld::CellRef &cellRef = it->getCellRef(); + + if (Misc::StringUtils::ciEqual(cellRef.getRefId(), item.refId) == false || + cellRef.getCharge() != item.charge || + Utils::compareFloats(cellRef.getEnchantmentCharge(), item.enchantmentCharge, 1.0f) == false || it->getRefData().getCount() != item.count || forceUpdate) {