活动:刷新商店添加玩家等级条件筛选
This commit is contained in:
@@ -28,7 +28,8 @@ export async function getRefreshShopActivity(serverId: number, roleId: string) {
|
|||||||
|
|
||||||
let playerRecord: ActivityRefreshShopModelType = await ActivityRefreshShopModel.findData(activityData.activityId, roleId, playerData.roundIndex);
|
let playerRecord: ActivityRefreshShopModelType = await ActivityRefreshShopModel.findData(activityData.activityId, roleId, playerData.roundIndex);
|
||||||
if (!playerRecord) {//生成商店可购买商品的数据
|
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);
|
playerRecord = await ActivityRefreshShopModel.createShop(activityData.activityId, roleId, playerData.roundIndex, randomGoods);
|
||||||
}
|
}
|
||||||
playerData.setPlayerRecords(playerRecord);
|
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);
|
let playerRecord: ActivityRefreshShopModelType = await ActivityRefreshShopModel.findData(activityId, roleId, playerData.roundIndex);
|
||||||
if (!playerRecord) {//生成商店可购买商品的数据
|
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);
|
playerRecord = await ActivityRefreshShopModel.createShop(activityData.activityId, roleId, playerData.roundIndex, randomGoods);
|
||||||
}
|
}
|
||||||
playerData.setPlayerRecords(playerRecord);
|
playerData.setPlayerRecords(playerRecord);
|
||||||
@@ -70,7 +72,8 @@ export async function getPlayerRefreshShopDataByRoundIndex(activityId: number, s
|
|||||||
playerData.roundIndex = roundIndex;
|
playerData.roundIndex = roundIndex;
|
||||||
let playerRecord: ActivityRefreshShopModelType = await ActivityRefreshShopModel.findData(activityId, roleId, playerData.roundIndex);
|
let playerRecord: ActivityRefreshShopModelType = await ActivityRefreshShopModel.findData(activityId, roleId, playerData.roundIndex);
|
||||||
if (!playerRecord) {//生成商店可购买商品的数据
|
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);
|
playerRecord = await ActivityRefreshShopModel.createShop(activityData.activityId, roleId, playerData.roundIndex, randomGoods);
|
||||||
}
|
}
|
||||||
playerData.setPlayerRecords(playerRecord);
|
playerData.setPlayerRecords(playerRecord);
|
||||||
|
|||||||
@@ -67,11 +67,12 @@ export class RefreshShopData extends ActivityBase {
|
|||||||
roundIndex: number = 1;//周期数从1开始
|
roundIndex: number = 1;//周期数从1开始
|
||||||
|
|
||||||
//随机出商店可购买的商品数据
|
//随机出商店可购买的商品数据
|
||||||
public randomGoodsItems() {
|
public randomGoodsItems(playerLevel: number) {
|
||||||
let goods: GoodsInfo[] = [];
|
let goods: GoodsInfo[] = [];
|
||||||
for (let pageData of this.list) {
|
for (let pageData of this.list) {
|
||||||
let pageIndex = pageData.pageIndex;
|
let pageIndex = pageData.pageIndex;
|
||||||
let randomCount = pageData.viewCount;
|
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);
|
pageData.items = this.randomGoods(pageData.items, randomCount);
|
||||||
for (let item of pageData.items) {
|
for (let item of pageData.items) {
|
||||||
goods.push({
|
goods.push({
|
||||||
|
|||||||
Reference in New Issue
Block a user