mirror of
https://github.com/EQEmu/Server.git
synced 2026-06-10 10:50:24 +00:00
[Bug] Item Purchase Offset when multiple buyers are buying at the same time. (#4628)
* [Bug] Item Purchase Offset when multiple buyers are buying at the same time. - Much of the code lifted from TAKP/P2002 and adapted - Needs Testing - This should help prevent situations where multiple people are purchasing items from a merchant and both attempt to purchase the same temp merchant or limited item, it should result in the later person recieving a notice that the item no longer exists and refreshes the merchant table. - Updated strings * fix formatting * Push * Update client.cpp * Update database_update_manifest.cpp * Update database_update_manifest.cpp * Update database_update_manifest.cpp * Update client.cpp --------- Co-authored-by: Kinglykrab <kinglykrab@gmail.com> Co-authored-by: Akkadius <akkadius1@gmail.com>
This commit is contained in:
+14
-1
@@ -13543,9 +13543,22 @@ std::string Client::GetBandolierItemName(uint8 bandolier_slot, uint8 slot_id)
|
||||
if (
|
||||
!EQ::ValueWithin(bandolier_slot, 0, 3) ||
|
||||
!EQ::ValueWithin(slot_id, 0, 3)
|
||||
) {
|
||||
) {
|
||||
return std::string();
|
||||
}
|
||||
|
||||
return GetPP().bandoliers[bandolier_slot].Items[slot_id].Name;
|
||||
}
|
||||
|
||||
void Client::SendMerchantEnd()
|
||||
{
|
||||
SetMerchantSessionEntityID(0);
|
||||
|
||||
if (ClientVersion() == EQ::versions::ClientVersion::RoF2 && RuleB(Parcel, EnableParcelMerchants)) {
|
||||
DoParcelCancel();
|
||||
SetEngagedWithParcelMerchant(false);
|
||||
}
|
||||
|
||||
EQApplicationPacket empty(OP_ShopEndConfirm);
|
||||
QueuePacket(&empty);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user