Delay any quick key use while the player isn't ready (bug #6054)

check_span
Alexei Kotov 2 years ago
parent a9c1fe3ee9
commit 55f34f4f0d

@ -49,6 +49,7 @@
Bug #5989: Simple water isn't affected by texture filter settings
Bug #6037: Launcher: Morrowind content language cannot be set to English
Bug #6051: NaN water height in ESM file is not handled gracefully
Bug #6054: Hotkey items can be equipped while in ready to attack stance
Bug #6066: Addtopic "return" does not work from within script. No errors thrown
Bug #6067: ESP loader fails for certain subrecord orders
Bug #6087: Bound items added directly to the inventory disappear if their corresponding spell effect ends

@ -363,11 +363,11 @@ namespace MWGui
bool godmode = MWBase::Environment::get().getWorld()->getGodModeState();
bool isReturnNeeded = (!godmode && playerStats.isParalyzed()) || playerStats.isDead();
if (isReturnNeeded && key->type != Type_Item)
if (isReturnNeeded)
{
return;
}
else if (isDelayNeeded && key->type != Type_Item)
else if (isDelayNeeded)
{
mActivated = key;
return;
@ -407,21 +407,6 @@ namespace MWGui
if (key->type == Type_Item)
{
bool isWeapon = item.getType() == ESM::Weapon::sRecordId;
bool isTool = item.getType() == ESM::Probe::sRecordId ||
item.getType() == ESM::Lockpick::sRecordId;
// delay weapon switching if player is busy
if (isDelayNeeded && (isWeapon || isTool))
{
mActivated = key;
return;
}
else if (isReturnNeeded && (isWeapon || isTool))
{
return;
}
if (!store.isEquipped(item))
MWBase::Environment::get().getWindowManager()->useItem(item);
MWWorld::ConstContainerStoreIterator rightHand = store.getSlot(MWWorld::InventoryStore::Slot_CarriedRight);

Loading…
Cancel
Save