From 2ffe0f7890621d63fc4990d349bd2e24f3c4e1f3 Mon Sep 17 00:00:00 2001 From: qiaoxin Date: Fri, 25 Jun 2021 20:51:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B4=BB=E5=8A=A8=EF=BC=9A=E5=88=B7=E6=96=B0?= =?UTF-8?q?=E5=95=86=E5=BA=97=E6=B7=BB=E5=8A=A0=E7=8E=A9=E5=AE=B6=E7=AD=89?= =?UTF-8?q?=E7=BA=A7=E6=9D=A1=E4=BB=B6=E7=AD=9B=E9=80=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- game-server/app/services/activity/refreshShopService.ts | 9 ++++++--- shared/domain/activityField/refreshShopField.ts | 3 ++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/game-server/app/services/activity/refreshShopService.ts b/game-server/app/services/activity/refreshShopService.ts index 3f159201e..9cf9b5ebd 100644 --- a/game-server/app/services/activity/refreshShopService.ts +++ b/game-server/app/services/activity/refreshShopService.ts @@ -28,7 +28,8 @@ export async function getRefreshShopActivity(serverId: number, roleId: string) { let playerRecord: ActivityRefreshShopModelType = await ActivityRefreshShopModel.findData(activityData.activityId, roleId, playerData.roundIndex); if (!playerRecord) {//生成商店可购买商品的数据 - let randomGoods = playerData.randomGoodsItems(); + let { lv } = await RoleModel.findByRoleId(roleId); + let randomGoods = playerData.randomGoodsItems(lv); playerRecord = await ActivityRefreshShopModel.createShop(activityData.activityId, roleId, playerData.roundIndex, randomGoods); } playerData.setPlayerRecords(playerRecord); @@ -49,7 +50,8 @@ export async function getPlayerRefreshShopData(activityId: number, serverId: num let playerRecord: ActivityRefreshShopModelType = await ActivityRefreshShopModel.findData(activityId, roleId, playerData.roundIndex); if (!playerRecord) {//生成商店可购买商品的数据 - let randomGoods = playerData.randomGoodsItems(); + let { lv } = await RoleModel.findByRoleId(roleId); + let randomGoods = playerData.randomGoodsItems(lv); playerRecord = await ActivityRefreshShopModel.createShop(activityData.activityId, roleId, playerData.roundIndex, randomGoods); } playerData.setPlayerRecords(playerRecord); @@ -70,7 +72,8 @@ export async function getPlayerRefreshShopDataByRoundIndex(activityId: number, s playerData.roundIndex = roundIndex; let playerRecord: ActivityRefreshShopModelType = await ActivityRefreshShopModel.findData(activityId, roleId, playerData.roundIndex); if (!playerRecord) {//生成商店可购买商品的数据 - let randomGoods = playerData.randomGoodsItems(); + let { lv } = await RoleModel.findByRoleId(roleId); + let randomGoods = playerData.randomGoodsItems(lv); playerRecord = await ActivityRefreshShopModel.createShop(activityData.activityId, roleId, playerData.roundIndex, randomGoods); } playerData.setPlayerRecords(playerRecord); diff --git a/shared/domain/activityField/refreshShopField.ts b/shared/domain/activityField/refreshShopField.ts index 0291140dd..ad79a3f4b 100644 --- a/shared/domain/activityField/refreshShopField.ts +++ b/shared/domain/activityField/refreshShopField.ts @@ -67,11 +67,12 @@ export class RefreshShopData extends ActivityBase { roundIndex: number = 1;//周期数从1开始 //随机出商店可购买的商品数据 - public randomGoodsItems() { + public randomGoodsItems(playerLevel: number) { let goods: GoodsInfo[] = []; for (let pageData of this.list) { let pageIndex = pageData.pageIndex; let randomCount = pageData.viewCount; + pageData.items = pageData.items.filter(obj => { return (obj.levelLimitMin == 0 && obj.levelLimitMax == 0) || (obj.levelLimitMin <= playerLevel && obj.levelLimitMax >= playerLevel) }); pageData.items = this.randomGoods(pageData.items, randomCount); for (let item of pageData.items) { goods.push({