活动:添加新任务类型
This commit is contained in:
@@ -18,6 +18,8 @@ import { dailyRMBGiftsActivity } from '../../../services/dailyRMBGiftsService';
|
||||
import { popUpShopActivity } from '../../../services/popUpShopService';
|
||||
import { vipRechargeMoneyActivity } from '../../../services/vipRechargeMoneyService';
|
||||
import { sevenDaysActivity } from '../../../services/sevenDaysService';
|
||||
import { checkActivityTask } from '../../../services/taskService';
|
||||
import { treasureHuntActivity } from '../../../services/treasureHuntService';
|
||||
// import { ActivityDailyChallengesModel } from '../../../db/ActivityDailyChallenges';
|
||||
// import { isComplete } from '../../../pubUtils/taskUtil';
|
||||
|
||||
@@ -337,14 +339,14 @@ export class ActivityHandler {
|
||||
|
||||
//寻宝骑兵活动 23
|
||||
{
|
||||
// let data = await dailyRMBGiftsActivity(serverId, roleId);
|
||||
// if (data) {
|
||||
// playerActivityArray.push({
|
||||
// type: ACTIVITY_TYPE.TREASURE_HUNT,
|
||||
// activityId: data.activityId,
|
||||
// data,
|
||||
// });
|
||||
// }
|
||||
let data = await treasureHuntActivity(serverId, roleId);
|
||||
if (data) {
|
||||
playerActivityArray.push({
|
||||
type: ACTIVITY_TYPE.TREASURE_HUNT,
|
||||
activityId: data.activityId,
|
||||
data,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
//弹出商店 24
|
||||
@@ -423,4 +425,29 @@ export class ActivityHandler {
|
||||
return resResult(STATUS.SUCCESS, { playerActivityArray });
|
||||
}
|
||||
|
||||
//测试活动任务数据
|
||||
async testActivityTask(msg: { hid: number, lv: number }, session: BackendSession) {
|
||||
const { lv } = msg;
|
||||
const roleId = session.get('roleId');
|
||||
const serverId = session.get('serverId');
|
||||
const sid: string = session.get('sid');
|
||||
const funcs: number[] = session.get('funcs');
|
||||
|
||||
let heroNum = 1;
|
||||
// await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_QUALITY, heroNum, { heroes: [{ quality: 3 }] })
|
||||
// await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_QUALITY_TO_QUALITY_COUNT, 1, { oldQuality: 1, quality: 2 })
|
||||
// await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_WAKE_UP_STAR_UP_COUNT, 1, { quality: 1, star: 1 })
|
||||
// await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_MAIN_ELITE, 1, { mainEliteWarId: 9001 })
|
||||
// await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_DUNGEON_WAR, 1, { warId: 5001 })
|
||||
// await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_EXPEDITION_BOX, 1)
|
||||
// await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.ROLE_LV, 100)
|
||||
// await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.PVP, 1)
|
||||
|
||||
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_TOWER_LV, 1, { towerLv: lv })
|
||||
|
||||
|
||||
|
||||
return resResult(STATUS.SUCCESS,);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -301,6 +301,7 @@ export class PvpHandler {
|
||||
let myRank = await r.getMyRank({ roleId });
|
||||
|
||||
await checkTaskInPvpEnd(roleId, sid, funcs, isSuccess, heroScores);
|
||||
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.PVP, 1)
|
||||
if (isSuccess) {
|
||||
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.PVP_WIN, 1)
|
||||
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.PVP_WIN_SERIES, 1)
|
||||
|
||||
@@ -286,7 +286,7 @@ export class HeroHandler {
|
||||
// 任务
|
||||
await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.HERO_QUALITY_UP, hero);
|
||||
// 任务
|
||||
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_QUALITY_TO_QUALITY_COUNT, 1, { oldQuality, quality: hero.quality });
|
||||
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_QUALITY_TO_QUALITY_COUNT, 1, { oldQuality: dicHero.quality, quality: hero.quality });
|
||||
|
||||
const curHero = {
|
||||
hid,
|
||||
|
||||
@@ -111,6 +111,7 @@ export async function checkTaskInBattleEnd(serverId: number, roleId: string, sid
|
||||
//成长任务
|
||||
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_MAIN, 1, { warId: battleId })
|
||||
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_EXPEDITION, 1)
|
||||
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_DUNGEON_WAR, 1, { warId: battleId })
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -24,8 +24,23 @@ export async function treasureHuntActivity(serverId: number, roleId: string) {
|
||||
if (!activityData) {
|
||||
return null;
|
||||
}
|
||||
let playerData = await getPlayerTreasureHuntData(activityData.activityId, serverId, roleId, huntRoundIndex, huntBeginTime, huntEndTime);
|
||||
return playerData
|
||||
|
||||
let playerData = new TreasureHuntData(activityData);
|
||||
playerData.beginTime = moment(huntBeginTime).valueOf();
|
||||
playerData.endTime = moment(huntEndTime).valueOf();
|
||||
playerData.todayIndex = deltaDays(moment(huntBeginTime).startOf('d').toDate(), new Date) + 1;;
|
||||
playerData.roundIndex = huntRoundIndex;
|
||||
|
||||
let playerTreasureFirstPageecord: ActivityTreasureHuntFirstPageModelType = await ActivityTreasureHuntFirstPageModel.findData(serverId, activityData.activityId, roleId, huntRoundIndex);
|
||||
playerData.firstPage.setPlayerFirstPageRecord(playerTreasureFirstPageecord);
|
||||
let playerShopRecord: ActivityTreasureHuntShopModelType = await ActivityTreasureHuntShopModel.findTreasureData(activityData.activityId, roleId, huntRoundIndex, playerData.todayIndex);
|
||||
playerData.shop.setPlayerShopRecords(playerShopRecord);
|
||||
let playerTaskRecord: ActivityTreasureHuntTaskModelType[] = await ActivityTreasureHuntTaskModel.findDataByRoundIndex(serverId, activityData.activityId, roleId, huntRoundIndex);
|
||||
playerData.tasks.setPlayerTaskRecords(playerTaskRecord);
|
||||
let playerTreasureShopRecord: ActivityTreasureHuntTreasureShopModelType = await ActivityTreasureHuntTreasureShopModel.findData(activityData.activityId, roleId, huntRoundIndex);
|
||||
playerData.treasureShop.setPlayerTreasureShopRecords(playerTreasureShopRecord);
|
||||
|
||||
return playerData;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user