diff options
author | Andrei Karas <akaras@inbox.ru> | 2013-06-23 12:21:55 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2013-06-23 17:36:25 +0300 |
commit | 4c57a567eec8b3df0b0009b5520d647cccb83338 (patch) | |
tree | 6677639ab67b1209532d20d0ebffa52e4227cdc8 /src/gui/selldialog.cpp | |
parent | a685e41954590525f5a9f215dbd37a286ae2bd37 (diff) | |
download | mv-4c57a567eec8b3df0b0009b5520d647cccb83338.tar.gz mv-4c57a567eec8b3df0b0009b5520d647cccb83338.tar.bz2 mv-4c57a567eec8b3df0b0009b5520d647cccb83338.tar.xz mv-4c57a567eec8b3df0b0009b5520d647cccb83338.zip |
Add support for protecting items.
Protected item cant be selled, traded, dropped, used.
Protect/unprotect item can be from context menu.
Diffstat (limited to 'src/gui/selldialog.cpp')
-rw-r--r-- | src/gui/selldialog.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gui/selldialog.cpp b/src/gui/selldialog.cpp index 8006355bc..c61dec541 100644 --- a/src/gui/selldialog.cpp +++ b/src/gui/selldialog.cpp @@ -22,6 +22,7 @@ #include "gui/selldialog.h" +#include "playerinfo.h" #include "shopitem.h" #include "units.h" @@ -228,9 +229,11 @@ void SellDialog::action(const gcn::ActionEvent &event) { if (mNpcId != -1) { + ShopItem *const item = mShopItems->at(selectedItem); + if (PlayerInfo::isItemProtected(item->getId())) + return; if (eventId == "presell") { - const ShopItem *const item = mShopItems->at(selectedItem); const ItemInfo &info = ItemDB::get(item->getId()); if (info.isProtected()) { @@ -245,7 +248,6 @@ void SellDialog::action(const gcn::ActionEvent &event) } } // Attempt sell - ShopItem *const item = mShopItems->at(selectedItem); mPlayerMoney += mAmountItems * mShopItems->at(selectedItem)->getPrice(); mMaxItems -= mAmountItems; |