summaryrefslogtreecommitdiff
path: root/src/input/inputmanager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/input/inputmanager.cpp')
-rw-r--r--src/input/inputmanager.cpp19
1 files changed, 15 insertions, 4 deletions
diff --git a/src/input/inputmanager.cpp b/src/input/inputmanager.cpp
index 27d15a366..59fd1ff2d 100644
--- a/src/input/inputmanager.cpp
+++ b/src/input/inputmanager.cpp
@@ -732,11 +732,22 @@ void InputManager::updateConditionMask()
if (Game::instance())
mMask |= InputCondition::INGAME;
- if (!localPlayer || localPlayer->getFollow().empty())
- mMask |= InputCondition::NOFOLLOW;
+ if (localPlayer)
+ {
+ if (localPlayer->getFollow().empty())
+ mMask |= InputCondition::NOFOLLOW;
- if (localPlayer && localPlayer->isAlive())
- mMask |= InputCondition::ALIVE;
+ if (!localPlayer->isTrickDead())
+ mMask |= InputCondition::NOBLOCK;
+
+ if (localPlayer->isAlive())
+ mMask |= InputCondition::ALIVE;
+ }
+ else
+ {
+ mMask |= InputCondition::NOFOLLOW;
+ mMask |= InputCondition::NOBLOCK;
+ }
#endif
if (!settings.awayMode)