[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:
Fryguy
2025-02-05 21:56:57 -05:00
committed by GitHub
parent 752ac78c56
commit 7021602bf4
9 changed files with 128 additions and 51 deletions
+4 -3
View File
@@ -6394,7 +6394,7 @@ ALTER TABLE `trader`
ManifestEntry{
.version = 9297,
.description = "2024_01_22_sharedbank_guid_primary_key.sql",
.check = "SHOW COLUMN FROM `sharedbank` LIKE 'guid'",
.check = "SHOW COLUMNS FROM `sharedbank` LIKE 'guid'",
.condition = "empty",
.match = "",
.sql = R"(
@@ -6423,7 +6423,7 @@ ADD PRIMARY KEY (`account_id`, `slot_id`);
.version = 9298,
.description = "2024_10_24_inventory_changes.sql",
.check = "SHOW COLUMNS FROM `inventory` LIKE 'character_id'",
.condition = "missing",
.condition = "empty",
.match = "",
.sql = R"(
ALTER TABLE `inventory`
@@ -6480,7 +6480,8 @@ UPDATE `inventory` SET `slot_id` = ((`slot_id` - 2261) + 10810) WHERE `slot_id`
UPDATE `sharedbank` SET `slot_id` = ((`slot_id` - 2531) + 11010) WHERE `slot_id` BETWEEN 2531 AND 2540; -- Shared Bank Bag 1
UPDATE `sharedbank` SET `slot_id` = ((`slot_id` - 2541) + 11210) WHERE `slot_id` BETWEEN 2541 AND 2550; -- Shared Bank Bag 2
)",
.content_schema_update = false
.content_schema_update = false,
.force_interactive = true
},
ManifestEntry{
.version = 9299,