diff options
Diffstat (limited to 'src/progs/manaplus/actions/actions.cpp')
-rw-r--r-- | src/progs/manaplus/actions/actions.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/progs/manaplus/actions/actions.cpp b/src/progs/manaplus/actions/actions.cpp index 5b5a00a05..9c0188d20 100644 --- a/src/progs/manaplus/actions/actions.cpp +++ b/src/progs/manaplus/actions/actions.cpp @@ -825,7 +825,19 @@ impHandler(sell) impHandler(talk) { - Being *being = findBeing(event.args, true); + const std::string args = event.args; + Being *being = nullptr; + + if (!args.empty() && args[0] == ':') + { + being = actorManager->findBeing(fromInt(atoi( + args.substr(1).c_str()), BeingId)); + } + else + { + being = findBeing(args, true); + } + if (being == nullptr) return false; |