diff --git a/src/controllers/api/getVendorInfoController.ts b/src/controllers/api/getVendorInfoController.ts index cd442318..aa831028 100644 --- a/src/controllers/api/getVendorInfoController.ts +++ b/src/controllers/api/getVendorInfoController.ts @@ -1,7 +1,23 @@ import { RequestHandler } from "express"; -import getVendorInfoResponse from "@/static/fixed_responses/getVendorInfo.json"; +import ArchimedeanVendorManifest from "@/static/fixed_responses/getVendorInfo/ArchimedeanVendorManifest.json"; +import MaskSalesmanManifest from "@/static/fixed_responses/getVendorInfo/MaskSalesmanManifest.json"; +import ZarimanCommisionsManifestArchimedean from "@/static/fixed_responses/getVendorInfo/ZarimanCommisionsManifestArchimedean.json"; export const getVendorInfoController: RequestHandler = (req, res) => { - console.assert(req.query.vendor == "/Lotus/Types/Game/VendorManifests/Ostron/MaskSalesmanManifest"); - res.json(getVendorInfoResponse); + switch (req.query.vendor as string) { + case "/Lotus/Types/Game/VendorManifests/Zariman/ArchimedeanVendorManifest": + res.json(ArchimedeanVendorManifest); + break; + + case "/Lotus/Types/Game/VendorManifests/Ostron/MaskSalesmanManifest": + res.json(MaskSalesmanManifest); + break; + + case "/Lotus/Types/Game/VendorManifests/Zariman/ZarimanCommisionsManifestArchimedean": + res.json(ZarimanCommisionsManifestArchimedean); + break; + + default: + throw new Error(`Unknown vendor: ${req.query.vendor}`); + } }; diff --git a/static/fixed_responses/getVendorInfo/ArchimedeanVendorManifest.json b/static/fixed_responses/getVendorInfo/ArchimedeanVendorManifest.json new file mode 100644 index 00000000..df3dc048 --- /dev/null +++ b/static/fixed_responses/getVendorInfo/ArchimedeanVendorManifest.json @@ -0,0 +1,38 @@ +{ + "VendorInfo": { + "_id": { "$oid": "62695b0467e5d379750f9f75" }, + "TypeName": "/Lotus/Types/Game/VendorManifests/Zariman/ArchimedeanVendorManifest", + "ItemManifest": [ + { + "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/VoidPlumeAOrnament", + "ItemPrices": [{ "ItemCount": 1, "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/VoidAngelItem", "ProductCategory": "MiscItems" }], + "Bin": "BIN_0", + "QuantityMultiplier": 1, + "Expiry": { "$date": { "$numberLong": "9999999000000" } }, + "AllowMultipurchase": true, + "Id": { "$oid": "63ed01ef4c37f93d0b797826" } + }, + { + "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/VoidPlumeBOrnament", + "ItemPrices": [{ "ItemCount": 1, "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/VoidAngelItem", "ProductCategory": "MiscItems" }], + "Bin": "BIN_0", + "QuantityMultiplier": 1, + "Expiry": { "$date": { "$numberLong": "9999999000000" } }, + "AllowMultipurchase": true, + "Id": { "$oid": "63ed01ef4c37f93d0b797827" } + }, + { + "StoreItem": "/Lotus/StoreItems/Types/Items/MiscItems/Kuva", + "ItemPrices": [{ "ItemCount": 5, "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/VoidAngelItem", "ProductCategory": "MiscItems" }], + "Bin": "BIN_0", + "QuantityMultiplier": 35000, + "Expiry": { "$date": { "$numberLong": "9999999000000" } }, + "PurchaseQuantityLimit": 1, + "AllowMultipurchase": false, + "Id": { "$oid": "66664112af1177b5070ab882" } + } + ], + "PropertyTextHash": "DB7BF03C3FE6D0036A4DC30066A9A17E", + "Expiry": { "$date": { "$numberLong": "9999999000000" } } + } +} diff --git a/static/fixed_responses/getVendorInfo.json b/static/fixed_responses/getVendorInfo/MaskSalesmanManifest.json similarity index 100% rename from static/fixed_responses/getVendorInfo.json rename to static/fixed_responses/getVendorInfo/MaskSalesmanManifest.json diff --git a/static/fixed_responses/getVendorInfo/ZarimanCommisionsManifestArchimedean.json b/static/fixed_responses/getVendorInfo/ZarimanCommisionsManifestArchimedean.json new file mode 100644 index 00000000..ec1c5c22 --- /dev/null +++ b/static/fixed_responses/getVendorInfo/ZarimanCommisionsManifestArchimedean.json @@ -0,0 +1,75 @@ +{ + "VendorInfo": { + "_id": { "$oid": "62a20ba667e5d3797540d831" }, + "TypeName": "/Lotus/Types/Game/VendorManifests/Zariman/ZarimanCommisionsManifestArchimedean", + "ItemManifest": [ + { + "StoreItem": "/Lotus/Types/StoreItems/Packages/Tasks/Zariman/AchimedeanTaskE", + "ItemPrices": [ + { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemB", "ItemCount": 4, "ProductCategory": "MiscItems" }, + { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemA", "ItemCount": 6, "ProductCategory": "MiscItems" } + ], + "Bin": "BIN_4", + "QuantityMultiplier": 1, + "Expiry": { "$date": { "$numberLong": "9999999000000" } }, + "PurchaseQuantityLimit": 1, + "AllowMultipurchase": false, + "Id": { "$oid": "6678b612aa3d8ee5c2597299" } + }, + { + "StoreItem": "/Lotus/Types/StoreItems/Packages/Tasks/Zariman/AchimedeanTaskD", + "ItemPrices": [ + { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemA", "ItemCount": 5, "ProductCategory": "MiscItems" }, + { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemB", "ItemCount": 3, "ProductCategory": "MiscItems" } + ], + "Bin": "BIN_3", + "QuantityMultiplier": 1, + "Expiry": { "$date": { "$numberLong": "9999999000000" } }, + "PurchaseQuantityLimit": 1, + "AllowMultipurchase": false, + "Id": { "$oid": "6678b612aa3d8ee5c259729a" } + }, + { + "StoreItem": "/Lotus/Types/StoreItems/Packages/Tasks/Zariman/AchimedeanTaskC", + "ItemPrices": [ + { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/VoidWraithItem", "ItemCount": 15, "ProductCategory": "MiscItems" }, + { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanDogTagUncommon", "ItemCount": 1, "ProductCategory": "MiscItems" } + ], + "Bin": "BIN_2", + "QuantityMultiplier": 1, + "Expiry": { "$date": { "$numberLong": "9999999000000" } }, + "PurchaseQuantityLimit": 1, + "AllowMultipurchase": false, + "Id": { "$oid": "6678b612aa3d8ee5c259729b" } + }, + { + "StoreItem": "/Lotus/Types/StoreItems/Packages/Tasks/Zariman/AchimedeanTaskB", + "ItemPrices": [ + { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/VoidWraithItem", "ItemCount": 4, "ProductCategory": "MiscItems" }, + { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemB", "ItemCount": 1, "ProductCategory": "MiscItems" } + ], + "Bin": "BIN_1", + "QuantityMultiplier": 1, + "Expiry": { "$date": { "$numberLong": "9999999000000" } }, + "PurchaseQuantityLimit": 1, + "AllowMultipurchase": false, + "Id": { "$oid": "6678b612aa3d8ee5c259729c" } + }, + { + "StoreItem": "/Lotus/Types/StoreItems/Packages/Tasks/Zariman/AchimedeanTaskA", + "ItemPrices": [ + { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemB", "ItemCount": 1, "ProductCategory": "MiscItems" }, + { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemA", "ItemCount": 2, "ProductCategory": "MiscItems" } + ], + "Bin": "BIN_0", + "QuantityMultiplier": 1, + "Expiry": { "$date": { "$numberLong": "9999999000000" } }, + "PurchaseQuantityLimit": 1, + "AllowMultipurchase": false, + "Id": { "$oid": "6678b612aa3d8ee5c259729d" } + } + ], + "PropertyTextHash": "F43F0ED811985EEF856970A8342EF322", + "Expiry": { "$date": { "$numberLong": "9999999000000" } } + } +}