Pārlūkot izejas kodu

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 mēneši atpakaļ
vecāks
revīzija
b96d4170be
1 mainītis faili ar 5 papildinājumiem un 1 dzēšanām
  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));