XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFESpaceNinjaServer

A simple server for a small space ninja game

公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/XFESpaceNinjaServer

fix: identify correct offer for when teshin has 2 kuva offers up (#797)

0ace5eb4
Sainan <sainan@calamity.inc>
提交于

代码差异

2 个文件 +10 -7
Modified src/services/purchaseService.ts +8 -7
@@ -49,14 +49,15 @@ export const handlePurchase = async (
49 49
50 50 if (purchaseRequest.PurchaseParams.Source == 7) {
51 51 const manifest = getVendorManifestByOid(purchaseRequest.PurchaseParams.SourceId!);
52 if (manifest) {
53 const offer = manifest.VendorInfo.ItemManifest.find(
54 x => x.StoreItem == purchaseRequest.PurchaseParams.StoreItem
55 );
56 if (offer) {
57 purchaseRequest.PurchaseParams.Quantity *= offer.QuantityMultiplier;
58 }
52 if (!manifest) {
53 throw new Error(`unknown vendor id: ${purchaseRequest.PurchaseParams.SourceId!}`);
54 }
55 const ItemId = (JSON.parse(purchaseRequest.PurchaseParams.ExtraPurchaseInfoJson!) as { ItemId: string }).ItemId;
56 const offer = manifest.VendorInfo.ItemManifest.find(x => x.Id.$oid == ItemId);
57 if (!offer) {
58 throw new Error(`unknown vendor offer: ${ItemId}`);
59 59 }
60 purchaseRequest.PurchaseParams.Quantity *= offer.QuantityMultiplier;
60 61 }
61 62
62 63 const purchaseResponse = await handleStoreItemAcquisition(
Modified src/types/purchaseTypes.ts +2 -0
@@ -17,6 +17,8 @@ export interface IPurchaseParams {
17 17 ExpectedPrice: number;
18 18 SyndicateTag?: string; // for Source 2
19 19 UseFreeFavor?: boolean; // for Source 2
20 ExtraPurchaseInfoJson?: string; // for Source 7
21 IsWeekly?: boolean; // for Source 7
20 22 }
21 23
22 24 export interface ICurrencyChanges {