Set iOpt to 1 for mission rewards and disallow trading iOpt 0 items

Co-authored-by: Jade <jadeshrinemaiden@gmail.com>
This commit is contained in:
2021-01-17 22:50:49 +01:00
parent b0697f12a3
commit 74af1ad173
3 changed files with 14 additions and 2 deletions

View File

@@ -532,6 +532,11 @@ bool ItemManager::doTrade(Player* plr, Player* plr2) {
if (plrInven[plr->Trade[i].iInvenNum].iID == 0) // pulling a fast one on us
return false;
if (plr->Trade[i].iOpt < 1) {
std::cout << "[WARN] Player tried trading an iOpt < 1 amount" << std::endl;
plr->Trade[i].iOpt = 1;
}
// for stacked items
plrInven[plr->Trade[i].iInvenNum].iOpt -= plr->Trade[i].iOpt;
@@ -548,6 +553,11 @@ bool ItemManager::doTrade(Player* plr, Player* plr2) {
if (plr2Inven[plr2->Trade[i].iInvenNum].iID == 0) // pulling a fast one on us
return false;
if (plr2->Trade[i].iOpt < 1) {
std::cout << "[WARN] Player tried trading an iOpt < 1 amount" << std::endl;
plr2->Trade[i].iOpt = 1;
}
// for stacked items
plr2Inven[plr2->Trade[i].iInvenNum].iOpt -= plr2->Trade[i].iOpt;