diff options
author | Andrei Karas <akaras@inbox.ru> | 2017-01-30 19:34:16 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2017-01-30 20:39:49 +0300 |
commit | c76cb084b9c995fba9a19fbdb5f23d479f67a115 (patch) | |
tree | a1b493adb2f7a21bbabb5b0178733f9082b3983c /src/net/tmwa/buysellrecv.cpp | |
parent | 5f8496ca103fabb4cfc265d8d936e194129a17ef (diff) | |
download | manaplus-c76cb084b9c995fba9a19fbdb5f23d479f67a115.tar.gz manaplus-c76cb084b9c995fba9a19fbdb5f23d479f67a115.tar.bz2 manaplus-c76cb084b9c995fba9a19fbdb5f23d479f67a115.tar.xz manaplus-c76cb084b9c995fba9a19fbdb5f23d479f67a115.zip |
Move BuySellRecv::processNpcBuyResponse from ea namespace into eathena and tmwa.
In eathena version remove access to buy dialog, because anyway it must not exists at this time.
Diffstat (limited to 'src/net/tmwa/buysellrecv.cpp')
-rw-r--r-- | src/net/tmwa/buysellrecv.cpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/net/tmwa/buysellrecv.cpp b/src/net/tmwa/buysellrecv.cpp index 230327899..6a30f7bc6 100644 --- a/src/net/tmwa/buysellrecv.cpp +++ b/src/net/tmwa/buysellrecv.cpp @@ -82,4 +82,39 @@ void BuySellRecv::processNpcSellResponse(Net::MessageIn &msg) } } +void BuySellRecv::processNpcBuyResponse(Net::MessageIn &msg) +{ + const uint8_t response = msg.readUInt8("response"); + if (response == 0U) + { + NotifyManager::notify(NotifyTypes::BUY_DONE); + return; + } + // Reset player money since buy dialog already assumed purchase + // would go fine + if (Ea::BuySellRecv::mBuyDialog) + { + Ea::BuySellRecv::mBuyDialog->setMoney( + PlayerInfo::getAttribute(Attributes::MONEY)); + } + switch (response) + { + case 1: + NotifyManager::notify(NotifyTypes::BUY_FAILED_NO_MONEY); + break; + + case 2: + NotifyManager::notify(NotifyTypes::BUY_FAILED_OVERWEIGHT); + break; + + case 3: + NotifyManager::notify(NotifyTypes::BUY_FAILED_TOO_MANY_ITEMS); + break; + + default: + NotifyManager::notify(NotifyTypes::BUY_FAILED); + break; + }; +} + } // namespace TmwAthena |