Feature #1233 Bribe gold not in inventory

Gold is now put into inventory receivers when bribing.
actorid
Jeffrey Haines 11 years ago
parent 9efef31bb8
commit 13d330e427

@ -64,16 +64,19 @@ namespace MWGui
else if (sender == mBribe10Button) else if (sender == mBribe10Button)
{ {
player.getClass().getContainerStore(player).remove(MWWorld::ContainerStore::sGoldId, 10, player); player.getClass().getContainerStore(player).remove(MWWorld::ContainerStore::sGoldId, 10, player);
mReceiver.getClass().getContainerStore(mReceiver).add(MWWorld::ContainerStore::sGoldId, 10, mReceiver);
type = MWBase::MechanicsManager::PT_Bribe10; type = MWBase::MechanicsManager::PT_Bribe10;
} }
else if (sender == mBribe100Button) else if (sender == mBribe100Button)
{ {
player.getClass().getContainerStore(player).remove(MWWorld::ContainerStore::sGoldId, 100, player); player.getClass().getContainerStore(player).remove(MWWorld::ContainerStore::sGoldId, 100, player);
mReceiver.getClass().getContainerStore(mReceiver).add(MWWorld::ContainerStore::sGoldId, 100, mReceiver);
type = MWBase::MechanicsManager::PT_Bribe100; type = MWBase::MechanicsManager::PT_Bribe100;
} }
else /*if (sender == mBribe1000Button)*/ else /*if (sender == mBribe1000Button)*/
{ {
player.getClass().getContainerStore(player).remove(MWWorld::ContainerStore::sGoldId, 1000, player); player.getClass().getContainerStore(player).remove(MWWorld::ContainerStore::sGoldId, 1000, player);
mReceiver.getClass().getContainerStore(mReceiver).add(MWWorld::ContainerStore::sGoldId, 10000, mReceiver);
type = MWBase::MechanicsManager::PT_Bribe1000; type = MWBase::MechanicsManager::PT_Bribe1000;
} }
@ -97,6 +100,12 @@ namespace MWGui
mGoldLabel->setCaptionWithReplacing("#{sGold}: " + boost::lexical_cast<std::string>(playerGold)); mGoldLabel->setCaptionWithReplacing("#{sGold}: " + boost::lexical_cast<std::string>(playerGold));
} }
// The receiver of the bribe
void PersuasionDialog::setReceiver(MWWorld::Ptr receiver)
{
mReceiver = receiver;
}
// -------------------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------------------
Response::Response(const std::string &text, const std::string &title) Response::Response(const std::string &text, const std::string &title)
@ -371,6 +380,7 @@ namespace MWGui
mPtr = actor; mPtr = actor;
mTopicsList->setEnabled(true); mTopicsList->setEnabled(true);
setTitle(npcName); setTitle(npcName);
mPersuasionDialog.setReceiver(mPtr);
mTopicsList->clear(); mTopicsList->clear();

@ -35,6 +35,10 @@ namespace MWGui
virtual void open(); virtual void open();
// The receiver of the bribe
MWWorld::Ptr mReceiver;
void setReceiver(MWWorld::Ptr receiver);
private: private:
MyGUI::Button* mCancelButton; MyGUI::Button* mCancelButton;
MyGUI::Button* mAdmireButton; MyGUI::Button* mAdmireButton;

Loading…
Cancel
Save