From 06dfbe4aec1b73aeccad1994ae51e622180fcb8a Mon Sep 17 00:00:00 2001 From: David Cernat Date: Sat, 23 Apr 2022 21:32:35 +0300 Subject: [PATCH] [Client] Fix conditions for sending PlayerItemUse packet for magic items Previously, attempting to switch to a magic item's spell via a quick key did not work if the item was already equipped. --- apps/openmw/mwgui/quickkeysmenu.cpp | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/apps/openmw/mwgui/quickkeysmenu.cpp b/apps/openmw/mwgui/quickkeysmenu.cpp index aee16ba3e..e19690b7d 100644 --- a/apps/openmw/mwgui/quickkeysmenu.cpp +++ b/apps/openmw/mwgui/quickkeysmenu.cpp @@ -514,22 +514,21 @@ namespace MWGui Instead of unilaterally using an item, send an ID_PLAYER_ITEM_USE packet and let the server decide if the item actually gets used */ + /* if (!item.getClass().getEquipmentSlots(item).first.empty() && !store.isEquipped(item)) { - - /* MWBase::Environment::get().getWindowManager()->useItem(item); // make sure that item was successfully equipped if (!store.isEquipped(item)) return; - */ - - mwmp::Main::get().getLocalPlayer()->sendItemUse(item, true, MWMechanics::DrawState_Spell); } - //store.setSelectedEnchantItem(it); - //MWBase::Environment::get().getWorld()->getPlayer().setDrawState(MWMechanics::DrawState_Spell); + store.setSelectedEnchantItem(it); + MWBase::Environment::get().getWorld()->getPlayer().setDrawState(MWMechanics::DrawState_Spell); + */ + + mwmp::Main::get().getLocalPlayer()->sendItemUse(item, true, MWMechanics::DrawState_Spell); /* End of tes3mp change (major) */