From a5ea00cc602a21a1d87a0d13919bde7ee9c61605 Mon Sep 17 00:00:00 2001 From: yuexin Date: Fri, 22 Jan 2021 17:54:00 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=8E=A5=E5=8F=A3=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/logic/ItemCtrl.ts | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/src/logic/ItemCtrl.ts b/src/logic/ItemCtrl.ts index a88a469..09e1a66 100644 --- a/src/logic/ItemCtrl.ts +++ b/src/logic/ItemCtrl.ts @@ -99,20 +99,40 @@ let ItemMan = { * @returns 物品列表 */ getItemsByInfo(infostr: string): ItemInfo[]{ - let reslst: ItemInfo[] = []; + let itemlst: ItemInfo[] = []; let lst = infostr.split('|'); lst.forEach((v: string) =>{ let item = new ItemInfo(); if(item.loadInfo(v)){ let obj = this.findItem(item.id); obj && (item.type = obj._type); - reslst.push(item); + itemlst.push(item); } }); + let clst: CIC[] = []; + itemlst.forEach((item: ItemInfo) =>{ + this.internalUseItem(item.id, item.count, false, clst); + }); + + let reslst:ItemInfo[] = []; + clst.forEach((item: CIC) => { + reslst.push(item.info); + }); return reslst; }, + internalUseItem(itemid: number, count: number, dpcard: boolean, reslst: CIC[]){ + let obj: CommonItem = this.findItem(itemid); + if(!obj){ + return false; + } + + this._useItem(obj, count, dpcard, reslst); + + return true; + }, + _useItem(item: CommonItem, count: number, dpcard: boolean, reslst: CIC[]){ if(item.isPackage() && item._isautoopen){ this._openItemPkg(item, count, false, reslst);