Kaynağa Gözat

Merchants no longer offer bank items and bags with items for sale

Merchants no longer offer bank items and bags with items for sale
Robert Allen 10 ay önce
ebeveyn
işleme
b96d4170be
1 değiştirilmiş dosya ile 5 ekleme ve 1 silme
  1. 5 1
      EQ2/source/WorldServer/client.cpp

+ 5 - 1
EQ2/source/WorldServer/client.cpp

@@ -8046,7 +8046,11 @@ void Client::SendSellMerchantList(bool sell) {
 				vector<Item*> sellable_items;
 				map<int32, Item*>::iterator test_itr;
 				for (test_itr = items->begin(); test_itr != items->end(); test_itr++) {
-					if (test_itr->second && !test_itr->second->CheckFlag(NO_VALUE))
+					BOOLEAN isbagwithitems = false;
+					if (test_itr->second && test_itr->second->IsBag() && (test_itr->second->details.num_slots - test_itr->second->details.num_free_slots != test_itr->second->details.num_slots))
+						isbagwithitems = TRUE;
+					
+					if (test_itr->second && !test_itr->second->CheckFlag(NO_VALUE) && (isbagwithitems == false) && (test_itr->second->details.inv_slot_id != -3) && (test_itr->second->details.inv_slot_id != -4))
 						sellable_items.push_back(test_itr->second);
 				}
 				packet->setDataByName("spawn_id", player->GetIDWithPlayerSpawn(spawn));