diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-12-09 13:10:54 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-12-09 13:10:54 +0300 |
commit | 4a6ffbd08067b64143e0535518a3822953943d80 (patch) | |
tree | 43121fb8f6690dbda227b9839aeb54837a6e53ad /src/actions | |
parent | 9ea847e15b281dda88a4014010bc28e58befeb4c (diff) | |
download | plus-4a6ffbd08067b64143e0535518a3822953943d80.tar.gz plus-4a6ffbd08067b64143e0535518a3822953943d80.tar.bz2 plus-4a6ffbd08067b64143e0535518a3822953943d80.tar.xz plus-4a6ffbd08067b64143e0535518a3822953943d80.zip |
Add buy action.
New chat command: /buy [name]
Diffstat (limited to 'src/actions')
-rw-r--r-- | src/actions/commands.cpp | 31 | ||||
-rw-r--r-- | src/actions/commands.h | 1 |
2 files changed, 32 insertions, 0 deletions
diff --git a/src/actions/commands.cpp b/src/actions/commands.cpp index c8d4f2b21..cd35ba9aa 100644 --- a/src/actions/commands.cpp +++ b/src/actions/commands.cpp @@ -37,9 +37,11 @@ #include "gui/widgets/tabs/chat/whispertab.h" #include "net/adminhandler.h" +#include "net/buysellhandler.h" #include "net/chathandler.h" #include "net/guildhandler.h" #include "net/homunculushandler.h" +#include "net/npchandler.h" #include "net/pethandler.h" #include "net/serverfeatures.h" @@ -711,4 +713,33 @@ impHandler0(fireHomunculus) return true; } +impHandler(buy) +{ + const std::string args = event.args; + Being *being = nullptr; + if (args.empty()) + { + being = localPlayer->getTarget(); + } + else + { + being = actorManager->findBeingByName( + args, ActorType::Unknown); + } + if (!being) + return false; + + if (being->getType() == ActorType::Npc) + { + npcHandler->buy(being->getId()); + return true; + } + else if (being->getType() == ActorType::Player) + { + buySellHandler->requestSellList(being->getName()); + return true; + } + return false; +} + } // namespace Actions diff --git a/src/actions/commands.h b/src/actions/commands.h index 085b89663..29fa6ef27 100644 --- a/src/actions/commands.h +++ b/src/actions/commands.h @@ -76,6 +76,7 @@ namespace Actions decHandler(setPetName); decHandler(setHomunculusName); decHandler(fireHomunculus); + decHandler(buy); } // namespace Actions #undef decHandler |