1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-02-01 04:45:36 +00:00

Merge branch 'no_teleporting_before_you_eat_your_veggies48' into 'openmw-48'

!2631 for 0.48

See merge request OpenMW/openmw!2633
This commit is contained in:
psi29a 2023-01-21 22:42:29 +00:00
commit 37152b4917

View file

@ -918,6 +918,13 @@ MagicApplicationResult applyMagicEffect(const MWWorld::Ptr& target, const MWWorl
} }
else else
{ {
// Morrowind.exe doesn't apply magic effects while the menu is open, we do because we like to see stats
// updated instantly. We don't want to teleport instantly though
if (!dt
&& (effect.mEffectId == ESM::MagicEffect::Recall
|| effect.mEffectId == ESM::MagicEffect::DivineIntervention
|| effect.mEffectId == ESM::MagicEffect::AlmsiviIntervention))
return MagicApplicationResult::APPLIED;
auto& stats = target.getClass().getCreatureStats(target); auto& stats = target.getClass().getCreatureStats(target);
auto& magnitudes = stats.getMagicEffects(); auto& magnitudes = stats.getMagicEffects();
if(spellParams.getType() != ESM::ActiveSpells::Type_Ability && !(effect.mFlags & ESM::ActiveEffect::Flag_Applied)) if(spellParams.getType() != ESM::ActiveSpells::Type_Ability && !(effect.mFlags & ESM::ActiveEffect::Flag_Applied))