summaryrefslogtreecommitdiff
path: root/src/actions/actions.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/actions/actions.cpp')
-rw-r--r--src/actions/actions.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/actions/actions.cpp b/src/actions/actions.cpp
index 2eda2b6f3..251204df4 100644
--- a/src/actions/actions.cpp
+++ b/src/actions/actions.cpp
@@ -236,7 +236,14 @@ impHandler0(heal)
{
if (actorManager)
{
- if (inputManager.isActionActive(InputAction::STOP_ATTACK))
+ if (!event.args.empty())
+ {
+ const Being *const being = actorManager->findBeingByName(
+ event.args, ActorType::PLAYER);
+ if (being)
+ actorManager->heal(being);
+ }
+ else if (inputManager.isActionActive(InputAction::STOP_ATTACK))
{
Being *target = localPlayer->getTarget();
if (!target || target->getType() != ActorType::PLAYER)
@@ -247,8 +254,11 @@ impHandler0(heal)
localPlayer->setTarget(target);
}
}
+ else
+ {
+ actorManager->heal(localPlayer);
+ }
- actorManager->healTarget();
if (Game::instance())
Game::instance()->setValidSpeed();
return true;