弹出礼包:添加两种条件
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import { STATUS } from './../../../consts/statusCode';
|
||||
import { HANG_UP_CONSTS, ITEM_CHANGE_REASON, MSG_SOURCE, REDIS_KEY } from './../../../consts';
|
||||
import { HANG_UP_CONSTS, ITEM_CHANGE_REASON, MSG_SOURCE, POP_UP_SHOP_CONDITION_TYPE, REDIS_KEY } from './../../../consts';
|
||||
import { TaskHero, TowerTaskRecModel, TowerTaskRecType } from './../../../db/TowerTaskRec';
|
||||
import { HangUpSpdUpRecModel } from './../../../db/HangUpSpdUpRec';
|
||||
import { HangUpRecordModel } from './../../../db/HangUpRecord';
|
||||
@@ -20,6 +20,7 @@ import { RewardInter } from '../../../pubUtils/interface';
|
||||
import { combineItems } from '../../../services/role/util';
|
||||
import { checkTaskInSkipTower } from '../../../services/task/taskService';
|
||||
import { Rank } from '../../../services/rankService';
|
||||
import { checkPopUpCondition } from '../../../services/activity/popUpShopService';
|
||||
|
||||
export default function(app: Application) {
|
||||
return new TowerBattleHandler(app);
|
||||
@@ -297,12 +298,13 @@ export class TowerBattleHandler {
|
||||
let sid = session.get('sid');
|
||||
|
||||
let role = await RoleModel.findByRoleId(roleId);
|
||||
let dicTower = gameData.tower.get(role.towerLv);
|
||||
let oldTowerLv = role.towerLv;
|
||||
let dicTower = gameData.tower.get(oldTowerLv);
|
||||
if(!dicTower.canSkip) {
|
||||
return resResult(STATUS.TOWER_CANNOT_SKIP);
|
||||
}
|
||||
|
||||
let { warStatus, heroes: recHeroes } = await getTowerRecByLv(roleId, role.towerLv);
|
||||
let { warStatus, heroes: recHeroes } = await getTowerRecByLv(roleId, oldTowerLv);
|
||||
|
||||
// 检查战力是否足够
|
||||
let heroes = await HeroModel.findByRole(roleId, [{ field: 'ce', sortBy: -1 }], 'hid ce job', true);
|
||||
@@ -344,6 +346,7 @@ export class TowerBattleHandler {
|
||||
let r = new Rank(REDIS_KEY.TOWER_RANK, { serverId });
|
||||
await r.setRankWithRoleInfo(roleId, role.towerLv - 1, role.towerUpTime.getTime(), role);
|
||||
await checkTaskInSkipTower(serverId, roleId, sid, role.towerLv);
|
||||
await checkPopUpCondition(serverId, roleId, POP_UP_SHOP_CONDITION_TYPE.TOWER, { oldLv: oldTowerLv - 1, newLv: role.towerLv - 1 })
|
||||
|
||||
return resResult(STATUS.SUCCESS, { ...data, goods });
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user