[Client] Add items required for item magic casting when they are missing

master
David Cernat 5 years ago
parent 433a69a588
commit d83160523f

@ -393,19 +393,15 @@ void MechanicsHelper::processAttack(Attack attack, const MWWorld::Ptr& attacker)
break;
}
if (it != inventoryStore.end())
{
// Add the item if it's missing
if (it == inventoryStore.end())
it = attacker.getClass().getContainerStore(attacker).add(attack.itemId, 1, attacker);
inventoryStore.setSelectedEnchantItem(it);
LOG_APPEND(Log::LOG_VERBOSE, "- itemId: %s", attack.itemId.c_str());
MWBase::Environment::get().getWorld()->castSpell(attacker);
inventoryStore.setSelectedEnchantItem(inventoryStore.end());
}
else
{
LOG_MESSAGE_SIMPLE(Log::LOG_ERROR, "Could not find item %s used by %s to cast item spell!",
attack.itemId.c_str(), attacker.getCellRef().getRefId().c_str());
}
}
}
bool MechanicsHelper::doesEffectListContainEffect(const ESM::EffectList& effectList, short effectId, short attributeId, short skillId)

Loading…
Cancel
Save