任务:任务去除funcs的判断,直接达成

This commit is contained in:
luying
2021-09-10 16:53:35 +08:00
parent 28f9c65873
commit faf4d25f60
76 changed files with 471 additions and 610 deletions
@@ -29,7 +29,7 @@ export class ActivityHandler {
const roleId = session.get('roleId');
const serverId = session.get('serverId');
const sid: string = session.get('sid');
const funcs: number[] = session.get('funcs');
let playerActivityArray = [];
@@ -61,20 +61,20 @@ export class ActivityHandler {
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, colorStar: 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, roleId, TASK_TYPE.HERO_QUALITY, heroNum, { heroes: [{ quality: 3 }] })
// await checkActivityTask(serverId, sid, roleId, TASK_TYPE.HERO_QUALITY_TO_QUALITY_COUNT, 1, { oldQuality: 1, quality: 2 })
// await checkActivityTask(serverId, sid, roleId, TASK_TYPE.HERO_WAKE_UP_STAR_UP_COUNT, 1, { quality: 1, colorStar: 1 })
// await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_MAIN_ELITE, 1, { mainEliteWarId: 9001 })
// await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_DUNGEON_WAR, 1, { warId: 5001 })
// await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_EXPEDITION_BOX, 1)
// await checkActivityTask(serverId, sid, roleId, TASK_TYPE.ROLE_LV, 100)
// await checkActivityTask(serverId, sid, roleId, TASK_TYPE.PVP, 1)
// await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_TOWER_LV, 1, { towerLv: lv })
// await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.GASHA, 1)
// await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_TOWER_LV, 1, { towerLv: lv })
// await checkActivityTask(serverId, sid, roleId, TASK_TYPE.GASHA, 1)
// if (lv == 2) {
// await GTCreateListMessage('批量推送测试11', 259200000, '哈哈哈哈哈11', '噢噢噢噢噢噢噢噢11')
@@ -104,7 +104,7 @@ export class ActivityHandler {
const roleId = session.get('roleId');
const serverId = session.get('serverId');
const sid: string = session.get('sid');
const funcs: number[] = session.get('funcs');
let activityData = await ActivityModel.debugFindActivityByType(type);
return resResult(STATUS.SUCCESS, activityData);
}
@@ -31,7 +31,7 @@ export class ActivityMonopolyHandler {
const roleId = session.get('roleId');
const serverId = session.get('serverId');
const sid: string = session.get('sid');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerMonopolyData(activityId, serverId, roleId)
@@ -52,7 +52,7 @@ export class ActivityMonopolyHandler {
const roleId = session.get('roleId');
const serverId = session.get('serverId');
const sid: string = session.get('sid');
const funcs: number[] = session.get('funcs');
const roleName = session.get('roleName');
let moveStep = 0;
@@ -81,7 +81,7 @@ export class ActivityMonopolyHandler {
if (landData.rewards.length > landData.stopCount) {
let reward = landData.rewards[landData.level - 1];
let rewardArray = stringToRewardParam(reward)
landReward = await addReward(roleId, roleName, sid, serverId, funcs, rewardArray);
landReward = await addReward(roleId, roleName, sid, serverId, rewardArray);
}
//土地升级
@@ -97,7 +97,7 @@ export class ActivityMonopolyHandler {
if (records.length < landData.takeOutMax) {
let resource = landData.record[0].resource;
let rewardArray = stringToRewardParam(resource)
bankReward = await addReward(roleId, roleName, sid, serverId, funcs, rewardArray);
bankReward = await addReward(roleId, roleName, sid, serverId, rewardArray);
let recordResult = await ActivityMonopolyLandModel.addRecord(serverId, activityId, roleId, newPosition, BANK_TYPE.OUT, resource);
landData.record = recordResult.record;
}
@@ -109,7 +109,7 @@ export class ActivityMonopolyHandler {
if (records.length < landData.takeOutMax) {
let resource = landData.record[0].resource;
let rewardArray = stringToRewardParam(resource)
bankReward = await addReward(roleId, roleName, sid, serverId, funcs, rewardArray);
bankReward = await addReward(roleId, roleName, sid, serverId, rewardArray);
let recordResult = await ActivityMonopolyLandModel.addRecord(serverId, activityId, roleId, newPosition, BANK_TYPE.OUT, resource);
landData.record = recordResult.record;
}
@@ -131,7 +131,7 @@ export class ActivityMonopolyHandler {
const roleId = session.get('roleId');
const serverId = session.get('serverId');
const sid: string = session.get('sid');
const funcs: number[] = session.get('funcs');
if (addCount > 0) {
let playerData = await getPlayerMonopolyData(activityId, serverId, roleId)
@@ -209,7 +209,7 @@ export class ActivityMonopolyHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerMonopolyData: ActivityMonopolyModelType = await ActivityMonopolyModel.findData(serverId, monopolyActivityId, roleId);
let playerData = await getPlayerMonopolyData(monopolyActivityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -243,7 +243,7 @@ export class ActivityMonopolyHandler {
if (!consumeResult) return resResult(STATUS.ROLE_MATERIAL_NOT_ENOUGH);
let rewardArray = stringToRewardParam(item.reward)
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardArray);
let result = await addReward(roleId, roleName, sid, serverId, rewardArray);
await ActivityRefreshShopModel.addRecord(shopActivityId, roleId, roundIndex, pageIndex, id);
@@ -49,7 +49,7 @@ export class DailyChallengesHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
let playerData = await getPlayerDailyChallengesData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -68,7 +68,7 @@ export class DailyChallengesHandler {
await ActivityDailyChallengesModel.addCellRecord(serverId, activityId, roleId, dayIndex, cellIndex, type, 1);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(dailyItemData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
dailyItemData.receiveRewardCount = 1;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -55,7 +55,7 @@ export class DailyCoinHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
let playerData = await getPlayerDailyCoinData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -127,7 +127,7 @@ export class DailyCoinHandler {
//免费期间
let time = moment(new Date()).valueOf();
let result = await addReward(roleId, roleName, sid, serverId, funcs, newReward)
let result = await addReward(roleId, roleName, sid, serverId, newReward)
await ActivityDailyCoinModel.addExchangeRecord(serverId, activityId, roleId, playerData.beginTime, count, addCoin, `${count}&${consumeGold}&${addCoin}&${time}`);
let exchangeCount = playerData.exchangeCount + count;
@@ -46,7 +46,7 @@ export class DailyGKHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
let playerData = await getPlayerDailyGKData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -66,7 +66,7 @@ export class DailyGKHandler {
// await ActivityDailyGKModel.addRecord(serverId, activityId, roleId, dayIndex);
// let rewardParamArr: Array<RewardParam> = stringToRewardParam(dailyItemData.reward);
// let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
// let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
// dailyItemData.isSuccess = true;
return resResult(STATUS.SUCCESS, {
@@ -51,7 +51,7 @@ export class DailyGiftsHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
let playerData = await getPlayerDailyGiftsData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -81,7 +81,7 @@ export class DailyGiftsHandler {
await ActivityDailyGiftsModel.buyRecord(serverId, activityId, roleId, dayIndex, cellIndex, 1);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(dailyItemData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
dailyItemData.buyCount += 1;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -52,7 +52,7 @@ export class DailyMealHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
let playerData = await getPlayerDailyMealData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -76,7 +76,7 @@ export class DailyMealHandler {
}
//免费期间
let rewardParamArr: Array<RewardParam> = stringToRewardParam(itemData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
await ActivityDailyMealModel.addReceiveRecord(serverId, activityId, roleId, type, curDate);
itemData.isReceive = true;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -48,7 +48,7 @@ export class DailyRMBGiftsHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerDailyRMBGiftsData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -65,7 +65,7 @@ export class DailyRMBGiftsHandler {
return resResult(STATUS.ACTIVITY_NEED_PAY);
}
let rewardParamArr: Array<RewardParam> = stringToRewardParam(item.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
await ActivityDailyRMBGiftsModel.receiveRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate(), [item.id]);
item.isReceive = true;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -88,7 +88,7 @@ export class DailyRMBGiftsHandler {
rewardArray = rewardArray.concat(rewardParamArr);
item.isReceive = true;
}
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardArray)
let result = await addReward(roleId, roleName, sid, serverId, rewardArray)
await ActivityDailyRMBGiftsModel.receiveRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate(), ids);
return resResult(STATUS.SUCCESS, Object.assign(result, {
param: { activityId },
@@ -54,7 +54,7 @@ export class FirstGiftHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerFirstGiftData(activityId, serverId, roleId);
if (!playerData) {
@@ -74,7 +74,7 @@ export class FirstGiftHandler {
indexArray.push(item.index)
item.isReceive = true;
}
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardArray);
let result = await addReward(roleId, roleName, sid, serverId, rewardArray);
let isOver = playerData.isComplete();
@@ -50,7 +50,7 @@ export class GachaHandler {
const roleName: string = session.get('roleName');
const sid: string = session.get('sid');
const serverId: number = session.get('serverId');
const funcs: number[] = session.get('funcs');
let { lv } = await RoleModel.findByRoleId(roleId);
@@ -88,7 +88,7 @@ export class GachaHandler {
}
// 给东西
// console.log('****', heroInfo)
let { heroes } = await createHeroes(roleId, roleName, sid, serverId, funcs, heroInfo);
let { heroes } = await createHeroes(roleId, roleName, sid, serverId, heroInfo);
await addItems(roleId, roleName, sid, items);
// 更新数据
userGacha = await UserGachaModel.updateInfo(roleId, gachaId, activityId, {
@@ -98,13 +98,13 @@ export class GachaHandler {
await UserGachaRecModel.createRec(roleId, gachaId, activityId, count, resultList);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.GASHA, count, true, {});
await checkTask(roleId, sid, TASK_TYPE.GASHA, count, true, {});
//活动统计
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.GASHA, count)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.GASHA, count)
for (let hero of heroes) {
activityData.push({ hid: hero.hid, quality: hero.quality });
}
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.GACHA_QUALITY_COUNT, count, { heroes: activityData })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.GACHA_QUALITY_COUNT, count, { heroes: activityData })
let resultRefFreeTime = 0;
if (dicGacha.free.count > 0) {
@@ -157,7 +157,7 @@ export class GachaHandler {
const roleName: string = session.get('roleName');
const sid: string = session.get('sid');
const serverId: number = session.get('serverId');
const funcs: number[] = session.get('funcs');
let userGacha = await UserGachaModel.findByRole(roleId, gachaId, 0);
let { point, turntable, costPoint } = userGacha;
@@ -187,7 +187,7 @@ export class GachaHandler {
for (let i = 0; i < count; i++) {
heroInfo.push({ hid: hero, count: 1 })
}
let { heroes, goods } = await createHeroes(roleId, roleName, sid, serverId, funcs, heroInfo);
let { heroes, goods } = await createHeroes(roleId, roleName, sid, serverId, heroInfo);
let resultList: GachaResult[] = [];
for (let h of heroes) {
let result = new GachaResult(contentId);
@@ -49,7 +49,7 @@ export class GrowthFundHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerGrowthFundData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -72,7 +72,7 @@ export class GrowthFundHandler {
await ActivityGrowthFundModel.addRecord(activityId, roleId, pageIndex, cellIndex);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(growthFundItemData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
return resResult(STATUS.SUCCESS, Object.assign(result, {
param: { activityId, pageIndex, cellIndex },
@@ -50,7 +50,7 @@ export class GrowthHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerGrowthData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -68,7 +68,7 @@ export class GrowthHandler {
await ActivityGrowthModel.addCellRecord(serverId, activityId, roleId, dayIndex, cellIndex, type, 1);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(growthItemData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
growthItemData.receiveRewardCount = 1;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -89,7 +89,7 @@ export class GrowthHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
let playerData = await getPlayerGrowthData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -108,7 +108,7 @@ export class GrowthHandler {
await ActivityGrowthPointModel.addRecord(serverId, activityId, roleId, id);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(pointItemData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
pointItemData.getPointReward = true;
@@ -77,7 +77,7 @@ export class LimitPackageHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerLimitPackageData(activityId, serverId, roleId);
if (!playerData) {
@@ -120,7 +120,7 @@ export class LimitPackageHandler {
if (!consumeResult) return resResult(STATUS.ROLE_MATERIAL_NOT_ENOUGH);
let rewardArray = stringToRewardParam(item.reward)
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardArray);
let result = await addReward(roleId, roleName, sid, serverId, rewardArray);
await ActivityShopModel.addRecord(activityId, roleId, roundIndex, id);
@@ -41,9 +41,9 @@ export class MonthlyTicketHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let result = await getPlayerMonthlyTicketDayReward(roleId, roleName, sid, serverId, funcs, activityId)
let result = await getPlayerMonthlyTicketDayReward(roleId, roleName, sid, serverId, activityId)
if (result) {
return resResult(STATUS.SUCCESS, Object.assign(result, {
param: { activityId },
@@ -46,7 +46,7 @@ export class NewHeroGKHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
let playerData = await getPlayerNewHeroGKData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -67,7 +67,7 @@ export class NewHeroGachaHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
let playerData = await getPlayerNewHeroGachaData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -95,12 +95,12 @@ export class NewHeroGachaHandler {
await ActivityNewHeroGachaModel.addRecord(serverId, activityId, roleId, hid, floorCount, JSON.stringify(resultList), hasGetFloor);
// 给东西
let { heroes } = await createHeroes(roleId, roleName, sid, serverId, funcs, heroInfo);
let { heroes } = await createHeroes(roleId, roleName, sid, serverId, heroInfo);
await addItems(roleId, roleName, sid, items);
//固定奖励
let rewardParamArr: Array<RewardParam> = stringToRewardParam(item.commonReward);
let newRewardParamArr: Array<RewardParam> = rewardParamArr.map(obj => { return { id: obj.id, type: obj.type, count: obj.count * count } });
let commonResult = await addReward(roleId, roleName, sid, serverId, funcs, newRewardParamArr)
let commonResult = await addReward(roleId, roleName, sid, serverId, newRewardParamArr)
return resResult(STATUS.SUCCESS, {
hid, activityId, count, randomReward: { heroes, result: resultList }, commonReward: commonResult
@@ -47,7 +47,7 @@ export class NewHeroGiftsHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerNewHeroGiftsData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -63,7 +63,7 @@ export class NewHeroGiftsHandler {
return resResult(STATUS.ACTIVITY_NO_POINT);
}
let rewardParamArr: Array<RewardParam> = stringToRewardParam(item.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
await ActivityNewHeroGiftModel.addReceiveRecord(serverId, activityId, roleId, index, item.consumePoint);
item.buyCount += 1;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -51,7 +51,7 @@ export class PopUpShopHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let beginTime = moment(beginTimeStamp).toDate();
let activityData: ActivityModelType = await ActivityModel.findActivity(activityId);
@@ -97,7 +97,7 @@ export class PopUpShopHandler {
if (!resourceResult) return resResult(STATUS.ROLE_MATERIAL_NOT_ENOUGH);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(playerData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
await ActivityPopUpShopModel.addRecord(serverId, activityId, roleId, id, playerData.taskType, 1, beginTime);
@@ -47,7 +47,7 @@ export class RechargeMoneyHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerRechargeMoneyData(activityId, serverId, roleId);
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -66,7 +66,7 @@ export class RechargeMoneyHandler {
console.log(JSON.stringify(recordArray));
await ActivityRechargeMoneyModel.addRecord(rechargeItem._id, item.id, item.reward)
let rewardParamArr: Array<RewardParam> = stringToRewardParam(item.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
if (playerData.isLast()) {
let _ids = playerData.recordArray.map(a => a._id)
await ActivityRechargeMoneyModel.setEndState(serverId, roleId, _ids);
@@ -48,7 +48,7 @@ export class RefreshShopHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerRefreshShopData(activityId, serverId, roleId);
if (!playerData) {
@@ -76,7 +76,7 @@ export class RefreshShopHandler {
if (!consumeResult) return resResult(STATUS.ROLE_MATERIAL_NOT_ENOUGH);
let rewardArray = stringToRewardParam(item.reward)
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardArray);
let result = await addReward(roleId, roleName, sid, serverId, rewardArray);
await ActivityRefreshShopModel.addRecord(activityId, roleId, roundIndex, pageIndex, id);
@@ -50,7 +50,7 @@ export class RefreshTaskHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
let playerData = await getPlayerRefreshTaskData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -71,7 +71,7 @@ export class RefreshTaskHandler {
await ActivityRefreshTaskModel.addReceiveRecord(serverId, activityId, roleId, roundIndex, pageIndex, id, type, 1);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(dailyItemData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
//获得点数
await ActivityRefreshTaskPointModel.addPoint(serverId, activityId, roleId, dailyItemData.point);
@@ -108,7 +108,7 @@ export class RefreshTaskHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
let playerData = await getPlayerRefreshTaskData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -123,7 +123,7 @@ export class RefreshTaskHandler {
await ActivityRefreshTaskPointModel.addReceiveRecord(serverId, activityId, roleId, playerData.consumePoint);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(playerData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
playerData.exchangePoint += playerData.consumePoint;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -52,7 +52,7 @@ export class SelfServiceShopHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let activityData: ActivityModelType = await ActivityModel.findActivity(activityId);
let { createTime } = await RoleModel.findByRoleId(roleId);
@@ -75,7 +75,7 @@ export class SelfServiceShopHandler {
let consumeResult = await handleCost(roleId, sid, consume);
if (!consumeResult) return resResult(STATUS.ROLE_MATERIAL_NOT_ENOUGH);
let result = await addSelfServiceShopGiftReward(roleId, roleName, sid, serverId, funcs, activityId, roundIndex, index, item);
let result = await addSelfServiceShopGiftReward(roleId, roleName, sid, serverId, activityId, roundIndex, index, item);
return resResult(STATUS.SUCCESS, Object.assign(result, {}));
}
@@ -91,7 +91,7 @@ export class SelfServiceShopHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
for (let obj of data) {
await ActivitySelfServiceGoodsModel.addGoods(obj.activityId, roleId, obj.roundIndex, obj.index, obj.cellIndex, obj.rewardIndex);
@@ -112,7 +112,7 @@ export class SelfServiceShopHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let activityData: ActivityModelType = await ActivityModel.findActivity(activityId);
let { createTime } = await RoleModel.findByRoleId(roleId);
@@ -135,7 +135,7 @@ export class SelfServiceShopHandler {
await ActivitySelfServiceModel.addBuyRecord(serverId, activityId, roleId, roundIndex, 1);
let rewardArray = stringToRewardParam(unitReward)
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardArray);
let result = await addReward(roleId, roleName, sid, serverId, rewardArray);
return resResult(STATUS.SUCCESS, Object.assign(result, { unitBuyCount: buyCount + 1 }));
}
@@ -152,7 +152,7 @@ export class SelfServiceShopHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerActivityData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -54,7 +54,7 @@ export class SevenDaysHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerSevenDaysGrowthData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -72,7 +72,7 @@ export class SevenDaysHandler {
await ActivityGrowthModel.addCellRecord(serverId, activityId, roleId, dayIndex, cellIndex, type, 1);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(growthItemData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
growthItemData.receiveRewardCount = 1;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -93,7 +93,7 @@ export class SevenDaysHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
let playerData = await getPlayerSevenDaysGrowthData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -112,7 +112,7 @@ export class SevenDaysHandler {
await ActivityGrowthPointModel.addRecord(serverId, activityId, roleId, id);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(pointItemData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
pointItemData.getPointReward = true;
@@ -136,7 +136,7 @@ export class SevenDaysHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
let playerData = await getPlayerSevenDaysDailyChallengesData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -155,7 +155,7 @@ export class SevenDaysHandler {
await ActivityDailyChallengesModel.addCellRecord(serverId, activityId, roleId, dayIndex, cellIndex, type, 1);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(dailyItemData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
dailyItemData.receiveRewardCount = 1;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -179,7 +179,7 @@ export class SevenDaysHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
let playerData = await getPlayerSevenDaysDailyGiftsData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -209,7 +209,7 @@ export class SevenDaysHandler {
await ActivityDailyGiftsModel.buyRecord(serverId, activityId, roleId, dayIndex, cellIndex, 1);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(dailyItemData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
dailyItemData.buyCount += 1;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -56,7 +56,7 @@ export class SignInHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerSignInData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -107,7 +107,7 @@ export class SignInHandler {
await ActivitySignInModel.addSignInRecord(activityId, roleId, roundIndex, [dayIndex]);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(signinItemData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
return resResult(STATUS.SUCCESS, Object.assign(result, {
param: { activityId, dayIndex },
@@ -53,7 +53,7 @@ export class ThirtyDaysHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let todayIndex = await playerThirtyDaysActivityDays(roleId);//玩家当前的天数
let { activityGroupId } = await ServerlistModel.findByServerId(serverId);
@@ -104,7 +104,7 @@ export class ThirtyDaysHandler {
await ActivityThirtyDaysModel.addRecord(serverId, activityId, roleId, pageIndex, cellIndex, tab);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(thirtyDaysItemData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
thirtyDaysItemData.isReceive = true;
return resResult(STATUS.SUCCESS, Object.assign(result, {
param: { activityId, pageIndex, cellIndex },
@@ -124,7 +124,7 @@ export class ThirtyDaysHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerThirtyDaysData(activityId, serverId, roleId)
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -148,7 +148,7 @@ export class ThirtyDaysHandler {
}
let rewardParamArr: Array<RewardParam> = stringToRewardParam(reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
thirtyDaysPointItemData.isReceive = true;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -56,7 +56,7 @@ export class TreasureHuntHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let { huntActivityId, huntBeginTime, huntEndTime, huntRoundIndex, activityData } = await getTreasureHuntData(serverId, roleId);
if (!activityData) {
@@ -77,7 +77,7 @@ export class TreasureHuntHandler {
await ActivityTreasureHuntFirstPageModel.receiveReward(serverId, activityId, roleId, huntRoundIndex);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(playerData.firstPage.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
playerData.firstPage.isReceive = true;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -97,7 +97,7 @@ export class TreasureHuntHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let { huntActivityId, huntBeginTime, huntEndTime, huntRoundIndex, activityData } = await getTreasureHuntData(serverId, roleId);
if (!activityData) {
@@ -129,7 +129,7 @@ export class TreasureHuntHandler {
await ActivityTreasureHuntShopModel.buyShopRecord(activityId, roleId, huntRoundIndex, playerData.todayIndex, cellIndex);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(item.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
item.buyCount += 1;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -149,7 +149,7 @@ export class TreasureHuntHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let { huntActivityId, huntBeginTime, huntEndTime, huntRoundIndex, activityData } = await getTreasureHuntData(serverId, roleId);
if (!activityData) {
@@ -176,7 +176,7 @@ export class TreasureHuntHandler {
await ActivityTreasureHuntTaskModel.receiveReward(serverId, activityId, roleId, huntRoundIndex, cellIndex, 1);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(item.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
item.isReceive = true;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -196,7 +196,7 @@ export class TreasureHuntHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let { huntActivityId, huntBeginTime, huntEndTime, huntRoundIndex, activityData } = await getTreasureHuntData(serverId, roleId);
if (!activityData) {
@@ -233,7 +233,7 @@ export class TreasureHuntHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let { huntActivityId, huntBeginTime, huntEndTime, huntRoundIndex, activityData } = await getTreasureHuntData(serverId, roleId);
if (!activityData) {
@@ -262,7 +262,7 @@ export class TreasureHuntHandler {
await ActivityTreasureHuntTreasureShopModel.addRecord(activityId, roleId, huntRoundIndex, cellIndex);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(item.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
item.buyCount += 1;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -49,7 +49,7 @@ export class VipRechargeMoneyHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let playerData = await getPlayerVipRechargeMoneyData(activityId, serverId, roleId);
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
@@ -68,7 +68,7 @@ export class VipRechargeMoneyHandler {
await ActivityVipRechargeMoneyModel.addRecord(serverId, activityId, roleId, id);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(item.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
item.receiveCount += 1;
return resResult(STATUS.SUCCESS, Object.assign(result, {
@@ -89,7 +89,7 @@ export class VipRechargeMoneyHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
if (begin > 0 && count > 0) {
let orders = await UserOrderModel.findOrderList(serverId, roleId, begin - 1, count)
@@ -561,7 +561,7 @@ export class ComBattleHandler {
let roleId = session.get('roleId');
let roleName = session.get('roleName');
let sid = session.get('sid');
const funcs: number[] = session.get('funcs');
let { teamCode } = msg;
let team = await ComBattleTeamModel.getTeamByCode(teamCode);
clearRobotHurtTimer(team, this.robotHurtTimer);
@@ -578,7 +578,7 @@ export class ComBattleHandler {
if (!warInfo) return resResult(STATUS.BATTLE_MISS_INFO);
let role = await RoleModel.findByRoleId(roleId, 'lv');
let apJson = await setAp(roleId, role.lv, -1 * warInfo.cost, sid, funcs); // 扣除体力
let apJson = await setAp(roleId, role.lv, -1 * warInfo.cost, sid); // 扣除体力
if(!apJson) {
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
}
@@ -595,7 +595,7 @@ export class ComBattleHandler {
const goods = await addItems(roleId, roleName, sid, roleSt.fixReward);
let actordata = await roleLevelup(KING_EXP_RATIO_TYPE.BATTLE, roleId, warInfo.kingExp, session);// 主公升级经验
// 任务
await checkTaskWithGoods(roleId, sid, funcs, TASK_TYPE.COM_BATTLE_DROP, goods);
await checkTaskWithGoods(roleId, sid, TASK_TYPE.COM_BATTLE_DROP, goods);
return resResult(STATUS.SUCCESS, { battleGoods: goods, ...actordata, teamInfo: {status, teamCode, roleStatus, bossHpArr} });
}
@@ -770,7 +770,7 @@ export class ComBattleHandler {
const roleName = session.get('roleName');
const sid = session.get('sid');
const serverId = session.get('serverId');
const funcs: number[] = session.get('funcs');
const { original } = msg;
@@ -810,7 +810,7 @@ export class ComBattleHandler {
const { name } = gameData.goods.get(target);
pushNormalItemMsg(roleId, roleName, serverId, MSG_SOURCE.ORANGE_BLUEPRT_COMPOSE, target, name);
}
await checkTask(roleId, sid, funcs, TASK_TYPE.COM_BATTLE_BLUEPRT, 1, true, { quality: dicCompose.targetQuality });
await checkTask(roleId, sid, TASK_TYPE.COM_BATTLE_BLUEPRT, 1, true, { quality: dicCompose.targetQuality });
return resResult(STATUS.SUCCESS, { goods, costGold: 0 });
}
@@ -2,7 +2,7 @@ import { Application, BackendSession, HandlerService, } from 'pinus';
import { EventRecordModel } from '../../../db/EventRecord';
import { RoleModel } from '../../../db/Role';
import { EVENT_STATUS, EVENT_RECORD_STATUS, EVENT_ANSWER_STATUS, TASK_TYPE } from '../../../consts';
import { checkEvent, checkEventStatus, getEventSuccessStatus, getEvent, checkQuiz, startEvent } from '../../../services/eventSercive';
import { checkEventStatus, getEventSuccessStatus, getEvent, checkQuiz, startEvent } from '../../../services/eventSercive';
import { addItems } from '../../../services/rewardService';
import { STATUS } from '../../../consts/statusCode';
import { resResult } from '../../../pubUtils/util';
@@ -85,7 +85,7 @@ export class EventBattleHandler {
let eventStatus = session.get('eventStatus');
let sid = session.get('sid');
const serverId = session.get('serverId');
const funcs: number[] = session.get('funcs');
let event = await EventRecordModel.getEventRecordByCode(roleId, eventCode);
if (!event) {
@@ -126,9 +126,9 @@ export class EventBattleHandler {
// 推送消息刷新
// await checkEvent(session, true);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.BATTLE_EVENT, 1, true, { eventType: dicEvent.eventType })
await checkTask(roleId, sid, TASK_TYPE.BATTLE_EVENT, 1, true, { eventType: dicEvent.eventType })
// 活动任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_EVENT, 1, { eventType: dicEvent.eventType })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_EVENT, 1, { eventType: dicEvent.eventType })
return resResult(STATUS.SUCCESS, {
isSuccess,
eventCode: result.eventCode,
@@ -184,7 +184,7 @@ export class ExpeditionBattleHandler {
let roleName = session.get('roleName');
const serverId = session.get('serverId');
let sid = session.get('sid');
let funcs: number[] = session.get('funcs');
let warInfo = gameData.war.get(battleId);
if (!warInfo) {
@@ -206,7 +206,7 @@ export class ExpeditionBattleHandler {
}
let role = await RoleModel.findByRoleId(roleId, 'lv');
let apJson = await setAp(roleId, role.lv, isSuccess?-1 * warInfo.cost: 0, sid, funcs); // 扣除体力
let apJson = await setAp(roleId, role.lv, isSuccess?-1 * warInfo.cost: 0, sid); // 扣除体力
if (!apJson) {
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
}
@@ -239,7 +239,7 @@ export class ExpeditionBattleHandler {
// 更新下一关状态
await ExpeditionWarRecordModel.updateStatus(expeditionCode, expeditionId + 1, EXPEDITION_WAR_RECORD_STATUS.WAITING);
}
await checkTaskInBattleEnd(serverId, roleId, sid, funcs, battleId, dbHeroes, star);
await checkTaskInBattleEnd(serverId, roleId, sid, battleId, dbHeroes, star);
return resResult(STATUS.SUCCESS, {
expeditionCode, expeditionId,
@@ -261,7 +261,7 @@ export class ExpeditionBattleHandler {
let roleId = session.get('roleId');
let roleName = session.get('roleName');
let sid = session.get('sid');
const funcs: number[] = session.get('funcs');
const serverId = session.get('serverId');
let role = await RoleModel.findByRoleId(roleId);
@@ -301,8 +301,8 @@ export class ExpeditionBattleHandler {
let pointRewards = await getPointRewardStatus(roleId);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.BATTLE_EXPEDITION_BOX, 1, true, { point });
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_EXPEDITION_BOX, 1)
await checkTask(roleId, sid, TASK_TYPE.BATTLE_EXPEDITION_BOX, 1, true, { point });
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_EXPEDITION_BOX, 1)
let goods = await addItems(roleId, roleName, sid, curDicExpeditionPoint.reward);
@@ -14,7 +14,7 @@ import { RoleModel } from '../../../db/Role';
import { RScriptRecordModel } from '../../../db/RScriptRecord';
import { updateWarStar, checkBattleHeroes, roleLevelup, getBattleList } from '../../../services/normalBattleService';
import { checkDungeonNum, checkDungeonAndIncrease, saveDungeonFirst } from '../../../services/dungeonService';
import { switchOnFunc } from '../../../services/funcSwitchService';
// import { switchOnFunc } from '../../../services/funcSwitchService';
import { gameData } from '../../../pubUtils/data';
import { pushMysteryFirstMsg, pushTowerMsg, pushVestigeFirstMsg } from '../../../services/chatService';
import { nowSeconds } from '../../../pubUtils/timeUtil';
@@ -128,7 +128,7 @@ export class NormalBattleHandler {
let roleId = session.get('roleId');
let roleName = session.get('roleName');
let sid = session.get('sid');
const funcs: number[] = session.get('funcs');
let serverId = session.get('serverId');
let skipReward = false;//是否跳过奖励结算
@@ -156,7 +156,7 @@ export class NormalBattleHandler {
}
let role = await RoleModel.findByRoleId(roleId, 'lv');
let apJson = await setAp(roleId, role.lv, isSuccess? -1 * warInfo.cost: 0, sid, funcs); // 扣除体力
let apJson = await setAp(roleId, role.lv, isSuccess? -1 * warInfo.cost: 0, sid); // 扣除体力
if (!apJson) {
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
}
@@ -178,7 +178,7 @@ export class NormalBattleHandler {
// 记录事件状态
await setBattleStatus(session, roleId, battleId, isSuccess, battleCode);
} else if (warInfo.warType == WAR_TYPE.TOWER) {
let towerEndResult = await towerBattleEnd(sid, funcs, roleId, serverId, battleCode, battleId, isSuccess, heroes);
let towerEndResult = await towerBattleEnd(sid, roleId, serverId, battleCode, battleId, isSuccess, heroes);
if (towerEndResult) {
if (towerEndResult.status == -1) {
return towerEndResult.resResult;
@@ -210,7 +210,7 @@ export class NormalBattleHandler {
if (role) {
let r = new Rank(REDIS_KEY.MAIN_ELITE_RANK, { serverId });
await r.setRankWithRoleInfo(roleId, role.mainEliteWarId, role.mainEliteUpdatedAt, role);
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_MAIN_ELITE, 1, { mainEliteWarId: battleId })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_MAIN_ELITE, 1, { mainEliteWarId: battleId })
}
} else if (warInfo.warType == WAR_TYPE.ACT_SELF_SHOP) {
//糜家商队挑战成功后记录挑战次数
@@ -233,7 +233,7 @@ export class NormalBattleHandler {
// 是否首通
let condition1 = warStar.find(cur => cur.id == battleId);
if (!condition1) {
await switchOnFunc(roleId, FUNC_OPT_TYPE.BATTLE_END, battleId, session);
// await switchOnFunc(roleId, FUNC_OPT_TYPE.BATTLE_END, battleId, session);
warReward.setCondition(0, true);
pushMysteryFirstMsg(roleId, roleName, serverId, warInfo.warType, warInfo.war_id);
pushVestigeFirstMsg(roleId, roleName, serverId, warInfo.warType, warInfo.war_id);
@@ -258,7 +258,7 @@ export class NormalBattleHandler {
let actordata = await roleLevelup(KING_EXP_RATIO_TYPE.BATTLE, roleId, isSuccess ? warInfo.kingExp : 0, session);// 主公升级经验
await checkTaskInBattleEnd(serverId, roleId, sid, funcs, battleId, dbHeroes, star);
await checkTaskInBattleEnd(serverId, roleId, sid, battleId, dbHeroes, star);
// 返回值:
// towerStatus: false-本层未通过, true-本层已通过
return resResult(STATUS.SUCCESS, {
@@ -276,7 +276,7 @@ export class NormalBattleHandler {
let roleName = session.get('roleName');
let sid = session.get('sid');
let serverId = session.get('serverId');
let funcs: number[] = session.get('funcs');
let warInfo = gameData.war.get(battleId);
if (!warInfo) {
return resResult(STATUS.BATTLE_MISS_INFO);
@@ -290,7 +290,7 @@ export class NormalBattleHandler {
// 扣体力
let role = await RoleModel.findByRoleId(roleId, 'lv');
let apJson = await setAp(roleId, role.lv, -1 * warInfo.cost * count, sid, funcs); // 扣除体力
let apJson = await setAp(roleId, role.lv, -1 * warInfo.cost * count, sid); // 扣除体力
if (!apJson) {
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
}
@@ -329,9 +329,9 @@ export class NormalBattleHandler {
});
// 任务
await checkTaskWithWar(roleId, sid, funcs, TASK_TYPE.BATTLE_MAIN_SWEEP, battleId, [], count, 0);
await checkTaskWithWar(roleId, sid, TASK_TYPE.BATTLE_MAIN_SWEEP, battleId, [], count, 0);
//活动任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_MAIN_SWEEP, count, { battleId })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_MAIN_SWEEP, count, { battleId })
return resResult(STATUS.SUCCESS, {
battleId, count,
@@ -38,7 +38,7 @@ export class PvpHandler {
let { heroScores: addHeroScores } = msg;
let roleId = session.get('roleId');
let sid = session.get('sid');
const funcs: number[] = session.get('funcs');
let { heroScores, hisScore } = await PvpDefenseModel.findByRoleId(roleId);
let score = 0;
for (let { hid, score: heroScore } of addHeroScores) {
@@ -69,7 +69,7 @@ export class PvpHandler {
await r.setRankWithRoleInfo(roleId, pvpDefense.score, pvpDefense.updatedAt.getTime(), role);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.PVP_HERO_SCORE, 0, false, { heroScores });
await checkTask(roleId, sid, TASK_TYPE.PVP_HERO_SCORE, 0, false, { heroScores });
return resResult(STATUS.SUCCESS, { score, hisScore, heroScores });
}
@@ -239,7 +239,7 @@ export class PvpHandler {
let roleId = session.get('roleId');
let roleName = session.get('roleName');
let sid = session.get('sid');
const funcs: number[] = session.get('funcs');
const serverId = session.get('serverId');
const { battleCode, isSuccess, myHeroes, oppHeroes } = msg;
@@ -307,11 +307,11 @@ export class PvpHandler {
await r.setRankWithRoleInfo(roleId, pvpDefense.score, pvpDefense.updatedAt.getTime(), role);
let myRank = await r.getMyRank({ roleId });
await checkTaskInPvpEnd(roleId, sid, funcs, isSuccess, heroScores);
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.PVP, 1)
await checkTaskInPvpEnd(roleId, sid, isSuccess, heroScores);
await checkActivityTask(serverId, sid, 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)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.PVP_WIN, 1)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.PVP_WIN_SERIES, 1)
}
return resResult(STATUS.SUCCESS, {
@@ -485,7 +485,7 @@ export class PvpHandler {
let roleId = session.get('roleId');
let sid: string = session.get('sid');
let roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let { seasonEndTime } = await PVPConfigModel.findCurPVPConfig();
let { hisScore, receivedBox, challengeCnt: lastChallengeCnt, challengeRefTime: lastChallengeRefTime } = await PvpDefenseModel.findByRoleIdIncludeAll(roleId);
let pvpBoxs = getPvpBoxs();
@@ -501,7 +501,7 @@ export class PvpHandler {
await PvpDefenseModel.updateInfo(roleId, { receivedBox, challengeCnt, challengeRefTime });
let result = await addItems(roleId, roleName, sid, pvpBox.reward);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.PVP_RECEIVE_BOX, 1, true, {});
await checkTask(roleId, sid, TASK_TYPE.PVP_RECEIVE_BOX, 1, true, {});
return resResult(STATUS.SUCCESS, { goods: result, receivedBox, challengeCnt, challengeRefTime });
}
@@ -88,7 +88,7 @@ export class ChatHandler {
const roleName = session.get('roleName');
const serverId = session.get('serverId');
const guildCode = session.get('guildCode');
const funcs: number[] = session.get('funcs');
const sid = session.get('sid');
let channelId = '';
if (channel === CHANNEL_PREFIX.WORLD) channelId = `${serverId}`;
@@ -98,10 +98,10 @@ export class ChatHandler {
await pushGroupMsgToRoom(msgData);
// 任务
await checkTaskWithArgs(roleId, sid, funcs, TASK_TYPE.CHAT, [CHANNEL_TYPE.get(channel)]);
await checkTaskWithArgs(roleId, sid, TASK_TYPE.CHAT, [CHANNEL_TYPE.get(channel)]);
//活动任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.CHAT, 1, { chatType: CHANNEL_TYPE.get(channel) })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.CHAT, 1, { chatType: CHANNEL_TYPE.get(channel) })
return resResult(STATUS.SUCCESS, msgData);
}
@@ -117,16 +117,16 @@ export class ChatHandler {
const roleId = session.get('roleId');
const serverId = session.get('serverId');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
const sid = session.get('sid');
const msgData = await createPrivateMsg(roleId, roleName, type, MSG_SOURCE.ROLE_SEND_TEXT, content, targetRoleId, targetMsgCode);
await pushMsgToRole(msgData);
if (!msgData) return resResult(STATUS.WRONG_PARMS);
// 任务
await checkTaskWithArgs(roleId, sid, funcs, TASK_TYPE.CHAT, [CHANNEL_TYPE.get('private')]);
await checkTaskWithArgs(roleId, sid, TASK_TYPE.CHAT, [CHANNEL_TYPE.get('private')]);
//活动任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.CHAT, 1, { chatType: CHANNEL_TYPE.get('private') })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.CHAT, 1, { chatType: CHANNEL_TYPE.get('private') })
return resResult(STATUS.SUCCESS, msgData);
}
@@ -11,7 +11,6 @@ import { COM_BTL_QUALITY, HERO_SELECT, DEBUG_MAGIC_WORD, REDIS_KEY, TASK_TYPE, E
import { getAp } from '../../../services/actionPointService';
import { ItemModel } from '../../../db/Item';
import { SkinModel } from '../../../db/Skin';
import { chackFunOpenWhenLogin } from '../../../services/funcSwitchService';
import { loginRefresh } from '../../../services/playerEventService';
import { nowSeconds, getZeroPoint } from '../../../pubUtils/timeUtil';
import { rmRoleFromQueue, roleLeave, getRoleOnlineInfo, roleLogin } from '../../../services/redisService';
@@ -60,7 +59,7 @@ export class EntryHandler {
await self.app.rpc.connector.connectorRemote.remoteLogin.toServer(connect.sid, role.roleId);
}
let serverName = this.app.getServerId();
await roleLogin(role.roleId, user.userCode, serverName, user.pkgName, role.funcs || []); // 保存在线用户
await roleLogin(role.roleId, user.userCode, serverName, user.pkgName); // 保存在线用户
await this.addSession(role, session);
let channelService = self.app.get('channelService');
@@ -79,7 +78,6 @@ export class EntryHandler {
let equips = await EquipModel.findbyRole(role.roleId);
let items = await ItemModel.findbyRole(role.roleId);
let skins = await SkinModel.findbyRole(role.roleId);
await chackFunOpenWhenLogin(role, session);
if (role.hasInit) await loginRefresh(role.roleId);
reportOneOnline(role.roleId, user.userCode, self.app.get('serverId'), true, user);
@@ -89,8 +87,8 @@ export class EntryHandler {
r2.setRankWithRoleInfo(role.roleId, role.lv, role.updatedAt.getTime(), role);
// 任务
checkTaskWithRole(serverId, role.roleId, self.app.get('serverId'), role.funcs, TASK_TYPE.LOGIN_SUM, role);
checkTaskWithRole(serverId, role.roleId, self.app.get('serverId'), role.funcs, TASK_TYPE.LOGIN_SERIES, role);
checkTaskWithRole(serverId, role.roleId, self.app.get('serverId'), TASK_TYPE.LOGIN_SUM, role);
checkTaskWithRole(serverId, role.roleId, self.app.get('serverId'), TASK_TYPE.LOGIN_SERIES, role);
// 推送数据
if (role.hasInit) pushData(role, session);
@@ -129,7 +127,6 @@ export class EntryHandler {
session.set('eventStatus', role.eventStatus);
session.set('sid', self.app.get('serverId'));
session.set('serverId', role.serverId);
session.set('funcs', role.funcs || []);
session.set('guildCode', role.guildCode);
session.push('userid', () => { });
session.push('sid', () => { });
@@ -137,7 +134,6 @@ export class EntryHandler {
session.push('roleName', () => { });
session.push('eventStatus', () => { });
session.push('serverId', () => { });
session.push('funcs', () => { });
session.push('updatedMailAt', () => { });
session.push('guildCode', () => { });
console.log(role.guildCode)
@@ -167,8 +163,8 @@ export class EntryHandler {
let { serverId } = role;
// 任务
checkTaskWithRole(serverId, role.roleId, self.app.get('serverId'), role.funcs, TASK_TYPE.LOGIN_SUM, role);
checkTaskWithRole(serverId, role.roleId, self.app.get('serverId'), role.funcs, TASK_TYPE.LOGIN_SERIES, role);
checkTaskWithRole(serverId, role.roleId, self.app.get('serverId'), TASK_TYPE.LOGIN_SUM, role);
checkTaskWithRole(serverId, role.roleId, self.app.get('serverId'), TASK_TYPE.LOGIN_SERIES, role);
// 推送数据
pushData(role, session, 'refresh');
@@ -266,7 +266,7 @@ export class CityActivityHandler {
let sid = session.get('sid');
let guildCode = session.get('guildCode');
let serverId = session.get('serverId');
const funcs: number[] = session.get('funcs');
let { cityId, code, isSuccess } = msg;
let obj = getCityActivityObj();
@@ -292,9 +292,9 @@ export class CityActivityHandler {
let gateHp = obj.getGateHpAndInc(serverId, cityId, dicCity.hp);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.GUILD_ACTIVITY, 1, true, { aid: this.aid });
await checkTask(roleId, sid, TASK_TYPE.GUILD_ACTIVITY, 1, true, { aid: this.aid });
//成长任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.GUILD_ACTIVITY, 1, { aid: this.aid })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.GUILD_ACTIVITY, 1, { aid: this.aid })
return resResult(STATUS.SUCCESS, {
isSuccess,
@@ -51,7 +51,7 @@ export class DonationHandler {
const roleName: string = session.get('roleName');
const serverId: number = parseInt(session.get('serverId'));
const sid: string = session.get('sid');
const funcs: number[] = session.get('funcs');
let userGuild = await refreshUserGuild(myUserGuild, roleId);
if (!userGuild) return resResult(STATUS.WRONG_PARMS);
const { guildCode: code, donateCnt: resdonateCnt } = userGuild;
@@ -74,9 +74,9 @@ export class DonationHandler {
this.app.rpc.chat.guildRemote.updateInfo.toServer(CHAT_SERVER, code, { fund });
await addActive(roleId, serverId, GUILD_POINT_WAYS.DONATE, id);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.GUILD_DONATE, 1, true, {});
await checkTask(roleId, sid, TASK_TYPE.GUILD_DONATE, 1, true, {});
//活动任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.GUILD_DONATE, 1);
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.GUILD_DONATE, 1);
return resResult(STATUS.SUCCESS, { donateFund, reports, donateCnt, simpleGoods: goods });
}
@@ -206,7 +206,7 @@ export class GateActivityHandler {
let sid = session.get('sid');
let guildCode = session.get('guildCode');
let serverId = session.get('serverId');
const funcs: number[] = session.get('funcs');
let { code, isSuccess } = msg;
let obj = getGateActivityObj();
@@ -256,9 +256,9 @@ export class GateActivityHandler {
}
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.GUILD_ACTIVITY, 1, true, { aid: this.aid });
await checkTask(roleId, sid, TASK_TYPE.GUILD_ACTIVITY, 1, true, { aid: this.aid });
//成长任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.GUILD_ACTIVITY, 1, { aid: this.aid })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.GUILD_ACTIVITY, 1, { aid: this.aid })
return resResult(STATUS.SUCCESS, {
code,
...statusResult,
@@ -161,7 +161,7 @@ export class GuildHandler {
const { battleCode, myUserGuild: userGuild } = msg;
const roleId = session.get('roleId');
const sid = session.get('sid');
const funcs: number[] = session.get('funcs');
const serverId: number = parseInt(session.get('serverId'));
const { guildCode: code } = userGuild;
const battleRecord = await BattleRecordModel.getBattleRecordByCode(battleCode, true);
@@ -175,7 +175,7 @@ export class GuildHandler {
let result = await getBossInstanceWhenEnd(bossInstance, roleId, battleRecord.record.recordNum);
await addActive(roleId, serverId, GUILD_POINT_WAYS.BOSS_WAR);//获得活跃值
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.GUILD_BOSS, 1, true, {});
await checkTask(roleId, sid, TASK_TYPE.GUILD_BOSS, 1, true, {});
return resResult(STATUS.SUCCESS, result);
}
@@ -802,7 +802,7 @@ export class GuildHandler {
const roleName = session.get('roleName');
const sid = session.get('sid');
const serverId = session.get('serverId');
const funcs: number[] = session.get('funcs');
const { code, id, myUserGuild } = msg;
let userGuild = await refreshUserGuild(myUserGuild, roleId);
@@ -827,7 +827,7 @@ export class GuildHandler {
userGuild = await UserGuildModel.updateInfo(roleId, { receivedActive: userGuild.receivedActive }, {}, 'receivedActive');
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.GUILD_RECEIVE_BOX, 1, true, {});
await checkTask(roleId, sid, TASK_TYPE.GUILD_RECEIVE_BOX, 1, true, {});
return resResult(STATUS.SUCCESS, { goods, receivedActive: userGuild.receivedActive });
}
@@ -49,7 +49,7 @@ export class GuildRefineHandler {
const roleId: string = session.get('roleId');
const sid: string = session.get('sid');
const roleName: string = session.get('roleName');
const funcs: number[] = session.get('funcs');
let pieceInfo = getGoodById(pid);
let { guildCode: code } = userGuild;
@@ -73,7 +73,7 @@ export class GuildRefineHandler {
let goods = await addItems(roleId, roleName, sid, [{ id: pid, count: 1 }]);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.GUILD_REFINE, 1, true, { quality: pieceInfo.lvLimited });
await checkTask(roleId, sid, TASK_TYPE.GUILD_REFINE, 1, true, { quality: pieceInfo.lvLimited });
return resResult(STATUS.SUCCESS, { goods });
}
/**
@@ -135,7 +135,7 @@ export class GuildRefineHandler {
const roleId: string = session.get('roleId');
const serverId: number = session.get('serverId');
const sid: string = session.get('sid');
const funcs: number[] = session.get('funcs');
const { guildCode: code } = userGuild;
let res: any = await lockData(serverId, DATA_NAME.GUILD_ASSIST_REFINE, code);//加锁
if (!!res.err)
@@ -167,7 +167,7 @@ export class GuildRefineHandler {
res.releaseCallback();
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.GUILD_ASSIST_REFINE, 1, true, {});
await checkTask(roleId, sid, TASK_TYPE.GUILD_ASSIST_REFINE, 1, true, {});
return resResult(STATUS.SUCCESS, { scienceTrees });
}
@@ -136,7 +136,7 @@ export class GuildTrainHandler {
const serverId: number = parseInt(session.get('serverId'));
const roleName: string = session.get('roleName');
const sid: string = session.get('sid');
const funcs: number[] = session.get('funcs');
let userGuild = await refreshTrain(myUserGuild, roleId, serverId);
if (!userGuild)
return resResult(STATUS.WRONG_PARMS);
@@ -239,7 +239,7 @@ export class GuildTrainHandler {
res.releaseCallback();//解锁
}
if (isComplete) {//解锁下一关,弹出礼包 // 1 true true 6Sjkgp(trainId, isComplete, needLockNext, code)
let pushMessage = await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.GUILD_TRAIN_COUNT, 1, { trainId, code })
let pushMessage = await checkActivityTask(serverId, sid, roleId, TASK_TYPE.GUILD_TRAIN_COUNT, 1, { trainId, code })
await sendPopUpActivityData(code, serverId, pushMessage);
}
@@ -251,11 +251,11 @@ export class GuildTrainHandler {
// 任务
if (isSuccess) {
await checkTask(roleId, sid, funcs, TASK_TYPE.GUILD_TRAIN_SUCESS, 1, true, {});
await checkTask(roleId, sid, TASK_TYPE.GUILD_TRAIN_SUCESS, 1, true, {});
}
await checkTask(roleId, sid, funcs, TASK_TYPE.GUILD_TRAIN, 1, true, {});
await checkTask(roleId, sid, TASK_TYPE.GUILD_TRAIN, 1, true, {});
//成长任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.GUILD_TRAIN, 1)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.GUILD_TRAIN, 1)
return resResult(STATUS.SUCCESS, result);
}
@@ -159,7 +159,7 @@ export class RaceActivityHandler {
let sid = session.get('sid');
let guildCode = session.get('guildCode');
let serverId = session.get('serverId');
const funcs: number[] = session.get('funcs');
let { code, isSuccess } = msg;
@@ -178,9 +178,9 @@ export class RaceActivityHandler {
let myGuildRank = await r.getMyRank({ guildCode });
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.GUILD_ACTIVITY, 1, true, { aid: this.aid });
await checkTask(roleId, sid, TASK_TYPE.GUILD_ACTIVITY, 1, true, { aid: this.aid });
//成长任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.GUILD_ACTIVITY, 1, { aid: this.aid })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.GUILD_ACTIVITY, 1, { aid: this.aid })
return resResult(STATUS.SUCCESS, {
timestamp: Date.now(),
woodenHorse: guildActivityRec.woodenHorse,
@@ -102,7 +102,7 @@ export class orderHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
if (!localOrderID || !_.isString(localOrderID)) {
return resResult(STATUS.WRONG_PARMS);
}
@@ -196,7 +196,7 @@ export class orderHandler {
await addRechargeMoney(roleId, serverId, price);
await addVipRechargeMoney(roleId, serverId, price);
//成长任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.ACTIVITY_RMB, price, { activityId: orderInfo.activityId })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.ACTIVITY_RMB, price, { activityId: orderInfo.activityId })
console.log('结算完成', localOrderID)
@@ -223,7 +223,7 @@ export class orderHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let payType = PAY_TYPE.TEST
//如果有特殊情况,activityId可为0
@@ -272,7 +272,7 @@ export class orderHandler {
await addRechargeMoney(roleId, serverId, price);
await addVipRechargeMoney(roleId, serverId, price);
//成长任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.ACTIVITY_RMB, price, { activityId })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.ACTIVITY_RMB, price, { activityId })
console.log(`测试支付完成!!!!!!!!!!!!! serverId:${serverId}, productID:${productID}, productType:${productType}, roleId:${roleId}, localOrderID:${localOrderID}, payType:${payType}`)
return resResult(STATUS.SUCCESS, result.data);
}
@@ -102,7 +102,7 @@ export class EquipHandler {
// let roleName: string = session.get('roleName');
const serverId = session.get('serverId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
let { hid, ePlaceId, type } = msg;
let hero = await HeroModel.findByHidAndRoleWithEquip(hid, roleId);
@@ -174,9 +174,9 @@ export class EquipHandler {
await calPlayerCeAndSave(HERO_SYSTEM_TYPE.EQUIP_BASE, sid, roleId, hero, { ePlace });
// 任务
await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.EQUIP_STRENGTHEN, hero, oldLvs);
await checkTaskWithHero(roleId, sid, TASK_TYPE.EQUIP_STRENGTHEN, hero, oldLvs);
//成长任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.EQUIP_STRENGTHEN, 1, changeData)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_STRENGTHEN, 1, changeData)
const curHero = {
hid,
@@ -191,7 +191,7 @@ export class EquipHandler {
let roleId: string = session.get('roleId');
// let roleName: string = session.get('roleName');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
const serverId = session.get('serverId');
let changeData = [];//变化的等级数据
@@ -256,9 +256,9 @@ export class EquipHandler {
await calPlayerCeAndSave(HERO_SYSTEM_TYPE.EQUIP_BASE, sid, roleId, hero, { ePlace });
// 任务
await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.EQUIP_STRENGTHEN, hero, oldLvs);
await checkTaskWithHero(roleId, sid, TASK_TYPE.EQUIP_STRENGTHEN, hero, oldLvs);
//成长任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.EQUIP_STRENGTHEN, 1, changeData)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_STRENGTHEN, 1, changeData)
const curHero = {
hid,
@@ -273,7 +273,7 @@ export class EquipHandler {
let roleName: string = session.get('roleName');
let serverId = session.get('serverId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
let { hid, ePlaceId, type } = msg;
@@ -322,8 +322,8 @@ export class EquipHandler {
let curEquip = <EquipType>equip;
pushEquipRefineSucMsg(roleId, roleName, serverId, curEplace, curEquip ? curEquip.quality : 0);
await checkTask(roleId, sid, funcs, TASK_TYPE.EQUIP_REFINE, times, true, {});
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.EQUIP_REFINE_LV, times, { lv: curEplace.refineLv });
await checkTask(roleId, sid, TASK_TYPE.EQUIP_REFINE, times, true, {});
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_REFINE_LV, times, { lv: curEplace.refineLv });
return resResult(STATUS.SUCCESS, { curHero });
}
@@ -425,7 +425,7 @@ export class EquipHandler {
let roleId: string = session.get('roleId');
// let roleName: string = session.get('roleName');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
let { eid } = msg;
let equip = await EquipModel.findbySeqId(eid);
@@ -452,7 +452,7 @@ export class EquipHandler {
await calPlayerCeAndSave(HERO_SYSTEM_TYPE.RESTRENGTHEN, sid, roleId, hero, {}, [ePlaceId, ...removeSeidList]);
}
await checkTask(roleId, sid, funcs, TASK_TYPE.EQUIP_RESTRENGTHEN, 1, true, {});
await checkTask(roleId, sid, TASK_TYPE.EQUIP_RESTRENGTHEN, 1, true, {});
return resResult(STATUS.SUCCESS, { curEquip: pick(equipResult, ['seqId', 'id', 'randSe', 'previewRandSe']) });
@@ -485,7 +485,7 @@ export class EquipHandler {
let roleId: string = session.get('roleId');
// let roleName: string = session.get('roleName');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
let { eid, type } = msg;
let equip = await EquipModel.findbySeqId(eid);
@@ -613,7 +613,7 @@ export class EquipHandler {
let roleId: string = session.get('roleId');
let serverId: number = session.get('serverId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
// 原武将:heroA,原武将穿戴着的装备a,将要穿戴的装备b,装备b被装备着的武将B
let heroA = await HeroModel.findByHidAndRoleWithEquip(hid, roleId);
@@ -679,38 +679,38 @@ export class EquipHandler {
if(heroA) {
await calPlayerCeAndSave(HERO_SYSTEM_TYPE.EQUIP, sid, roleId, heroA, {}, argsA);
if(heroAPutNum != 0) {
await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.EQUIP_BY_HERO, heroA, [heroAPutNum]);
await checkTaskWithHero(roleId, sid, TASK_TYPE.EQUIP_BY_HERO, heroA, [heroAPutNum]);
}
}
if(heroB) {
await calPlayerCeAndSave(HERO_SYSTEM_TYPE.EQUIP, sid, roleId, heroB, {}, argsB);
if(heroBPutTNum != 0) await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.EQUIP_BY_HERO, heroA, [heroBPutTNum]);
if(heroBPutTNum != 0) await checkTaskWithHero(roleId, sid, TASK_TYPE.EQUIP_BY_HERO, heroA, [heroBPutTNum]);
}
if(heroAPutNum + heroBPutTNum != 0) {
await checkTask(roleId, sid, funcs, TASK_TYPE.EQUIP_SUM, heroAPutNum + heroBPutTNum, true, {});
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.EQUIP_SUM, heroAPutNum + heroBPutTNum)
await checkTask(roleId, sid, TASK_TYPE.EQUIP_SUM, heroAPutNum + heroBPutTNum, true, {});
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_SUM, heroAPutNum + heroBPutTNum)
}
let curEquips: Array<{ seqId: number, hid: number }> = [];
if(equipA) {
curEquips.push(pick(equipA, ['seqId', 'hid']));
if(equipA.hid == 0) {
await checkTaskWithEquip(roleId, sid, funcs, TASK_TYPE.EQUIP_QUALITY, equipA, [-1]); // equipA必然是脱,如果hid不为0说明从一个人穿到另一个人,不算任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.EQUIP_QUALITY, 1, { quality: equipA.quality });
await checkTaskWithEquip(roleId, sid, TASK_TYPE.EQUIP_QUALITY, equipA, [-1]); // equipA必然是脱,如果hid不为0说明从一个人穿到另一个人,不算任务
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_QUALITY, 1, { quality: equipA.quality });
}
}
if(equipB) {
curEquips.push(pick(equipB, ['seqId', 'hid']));
if(equipB.hid != 0) {
await checkTaskWithEquip(roleId, sid, funcs, TASK_TYPE.EQUIP_QUALITY, equipB, [1]); // equipB必然是穿,如果hid为0说明没有变化,不算任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.EQUIP_QUALITY, 1, { quality: equipB.quality });
await checkTaskWithEquip(roleId, sid, TASK_TYPE.EQUIP_QUALITY, equipB, [1]); // equipB必然是穿,如果hid为0说明没有变化,不算任务
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_QUALITY, 1, { quality: equipB.quality });
}
}
if(type == 1) {
let { isTask, jewelLevel } = await checkTaskConditionEquipSuitJewelStage(heroA)//英雄满装备且都镶嵌相同阶数的宝石
if (isTask) {
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.EQUIP_SUIT_JEWEL_STAGE, 1, { stage: jewelLevel })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_SUIT_JEWEL_STAGE, 1, { stage: jewelLevel })
}
}
@@ -723,7 +723,7 @@ export class EquipHandler {
let roleId: string = session.get('roleId');
const serverId = session.get('serverId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
let hero = await HeroModel.findByHidAndRoleWithEquip(hid, roleId);
if (!hero) return resResult(STATUS.HERO_NOT_FIND);
let args = calEquipSeids(hero);
@@ -773,7 +773,7 @@ export class EquipHandler {
//英雄满装备且都镶嵌相同阶数的宝石
let { isTask, jewelLevel } = await checkTaskConditionEquipSuitJewelStage(hero)
if (isTask) {
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.EQUIP_SUIT_JEWEL_STAGE, 1, { stage: jewelLevel })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_SUIT_JEWEL_STAGE, 1, { stage: jewelLevel })
}
await calPlayerCeAndSave(HERO_SYSTEM_TYPE.EQUIP, sid, roleId, hero, {}, args);
@@ -815,7 +815,7 @@ export class EquipHandler {
let roleId: string = session.get('roleId');
const serverId = session.get('serverId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
let consumes: Array<{ id: number, count: number }> = [];
let goods: Array<{ id: number, count: number }> = [];
let equip = await EquipModel.getEquip(eid);
@@ -850,17 +850,17 @@ export class EquipHandler {
//英雄满装备且都镶嵌相同阶数的宝石
let { isTask, jewelLevel } = await checkTaskConditionEquipSuitJewelStage(hero)
if (isTask) {
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.EQUIP_SUIT_JEWEL_STAGE, 1, { stage: jewelLevel })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_SUIT_JEWEL_STAGE, 1, { stage: jewelLevel })
}
}
// 任务
await checkTaskWithEquip(roleId, sid, funcs, TASK_TYPE.EQUIP_JEWEL, equip, [oldJewelCount]);
await checkTaskWithArgs(roleId, sid, funcs, TASK_TYPE.EQUIP_JEWEL_STAGE, [jewel, oldJewel]);
await checkTaskWithEquip(roleId, sid, funcs, TASK_TYPE.EQUIP_JEWEL_SUM, equip, [oldJewelCount]);
await checkTaskWithEquip(roleId, sid, TASK_TYPE.EQUIP_JEWEL, equip, [oldJewelCount]);
await checkTaskWithArgs(roleId, sid, TASK_TYPE.EQUIP_JEWEL_STAGE, [jewel, oldJewel]);
await checkTaskWithEquip(roleId, sid, TASK_TYPE.EQUIP_JEWEL_SUM, equip, [oldJewelCount]);
//成长任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.EQUIP_JEWEL_SUM, 1)
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.EQUIP_JEWEL_STAGE, 1)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_JEWEL_SUM, 1)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_JEWEL_STAGE, 1)
return resResult(STATUS.SUCCESS, { curEquip: { seqId: eid, holes: equip.holes } });
}
@@ -898,7 +898,7 @@ export class EquipHandler {
let { eid, id } = msg;
let roleId: string = session.get('roleId');
let roleName: string = session.get('roleName');
let funcs: number[] = session.get('funcs');
let sid: string = session.get('sid');
let goods: Array<{ id: number, count: number }> = [];
let equip = await EquipModel.getEquip(eid);
@@ -919,9 +919,9 @@ export class EquipHandler {
}
// 任务
await checkTaskWithEquip(roleId, sid, funcs, TASK_TYPE.EQUIP_JEWEL, equip, [oldJewelCount]);
await checkTaskWithArgs(roleId, sid, funcs, TASK_TYPE.EQUIP_JEWEL_STAGE, [0, jewel]);
await checkTaskWithEquip(roleId, sid, funcs, TASK_TYPE.EQUIP_JEWEL_SUM, equip, [oldJewelCount]);
await checkTaskWithEquip(roleId, sid, TASK_TYPE.EQUIP_JEWEL, equip, [oldJewelCount]);
await checkTaskWithArgs(roleId, sid, TASK_TYPE.EQUIP_JEWEL_STAGE, [0, jewel]);
await checkTaskWithEquip(roleId, sid, TASK_TYPE.EQUIP_JEWEL_SUM, equip, [oldJewelCount]);
return resResult(STATUS.SUCCESS, { curEquip: { seqId: eid, holes: equip.holes } });
}
@@ -984,7 +984,7 @@ export class EquipHandler {
let roleName: string = session.get('roleName');
let sid: string = session.get('sid');
let serverId = session.get('serverId');
let funcs: number[] = session.get('funcs');
let goodInfo = getGoodById(jewel);
let good = ITID.get(goodInfo.itid);
let needUpdate = false;
@@ -1030,16 +1030,16 @@ export class EquipHandler {
//英雄满装备且都镶嵌相同阶数的宝石
let { isTask, jewelLevel } = await checkTaskConditionEquipSuitJewelStage(hero)
if (isTask) {
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.EQUIP_SUIT_JEWEL_STAGE, 1, { stage: jewelLevel })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_SUIT_JEWEL_STAGE, 1, { stage: jewelLevel })
}
}
// 任务
await checkTaskWithEquip(roleId, sid, funcs, TASK_TYPE.EQUIP_JEWEL, equip, [oldJewelCount]);
await checkTaskWithArgs(roleId, sid, funcs, TASK_TYPE.EQUIP_JEWEL_STAGE, [jewel, oldJewel]);
await checkTaskWithEquip(roleId, sid, funcs, TASK_TYPE.EQUIP_JEWEL_SUM, equip, [oldJewelCount]);
await checkTaskWithEquip(roleId, sid, TASK_TYPE.EQUIP_JEWEL, equip, [oldJewelCount]);
await checkTaskWithArgs(roleId, sid, TASK_TYPE.EQUIP_JEWEL_STAGE, [jewel, oldJewel]);
await checkTaskWithEquip(roleId, sid, TASK_TYPE.EQUIP_JEWEL_SUM, equip, [oldJewelCount]);
//成长任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.EQUIP_JEWEL_SUM, count)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_JEWEL_SUM, count)
return resResult(STATUS.SUCCESS, { curEquip: { seqId: eid, holes: equip.holes } });
} else {
@@ -1061,7 +1061,7 @@ export class EquipHandler {
const roleName = session.get('roleName');
const sid = session.get('sid');
const serverId = session.get('serverId');
const funcs: number[] = session.get('funcs');
const { target, original } = msg;
@@ -1103,7 +1103,7 @@ export class EquipHandler {
const { name } = gameData.goods.get(target);
pushNormalItemMsg(roleId, roleName, serverId, MSG_SOURCE.ORANGE_BLUEPRT_COMPOSE, target, name);
}
await checkTask(roleId, sid, funcs, TASK_TYPE.COM_BATTLE_BLUEPRT, 1, true, { quality: dicCompose.targetQuality });
await checkTask(roleId, sid, TASK_TYPE.COM_BATTLE_BLUEPRT, 1, true, { quality: dicCompose.targetQuality });
return resResult(STATUS.SUCCESS, { goods, costGold: 0 });
}
@@ -179,7 +179,7 @@ export class FriendHandler {
public async handleApply(msg: { applyCodeList: string[], isPass: boolean }, session: BackendSession) {
let roleId: string = session.get('roleId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
const serverId = session.get('serverId');
let { applyCodeList, isPass } = msg;
@@ -248,7 +248,7 @@ export class FriendHandler {
role = await RoleModel.increaseFriendApplyCnt(roleId, -1 * resultApplyCodeList.length, 50);
roles.push(role);
// 任务
await checkTaskWithRoles(serverId, roleId, sid, funcs, TASK_TYPE.FRIEND_NUM, roles);
await checkTaskWithRoles(serverId, roleId, sid, TASK_TYPE.FRIEND_NUM, roles);
// 特殊处理:如果他点一键同意,有很多人,这个单独的人就不做这个额外的提示,直接把他好友申请删掉就好
if (str == getResStr(STATUS.FRIEND_HAS_ADD) && resultApplyCodeList.length > 1) str = '';
@@ -310,7 +310,7 @@ export class FriendHandler {
public async setBlackList(msg: { roleId: string, type: number }, session: BackendSession) {
let roleId: string = session.get('roleId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
const serverId = session.get('serverId');
let { roleId: hisRoleId, type } = msg;
@@ -414,7 +414,7 @@ export class FriendHandler {
let { friendCnt = 0, blockCnt = 0 } = role;
// 任务
await checkTaskWithRoles(serverId, roleId, sid, funcs, TASK_TYPE.FRIEND_NUM, [role, friend]);
await checkTaskWithRoles(serverId, roleId, sid, TASK_TYPE.FRIEND_NUM, [role, friend]);
return resResult(STATUS.SUCCESS, {
frdRoleIds, blackRoleIds,
@@ -431,7 +431,7 @@ export class FriendHandler {
let roleName: string = session.get('roleName');
let sid: string = session.get('sid');
let serverId: number = session.get('serverId');
const funcs: number[] = session.get('funcs');
let { roleId: hisRoleId } = msg;
@@ -486,10 +486,10 @@ export class FriendHandler {
// 更新情谊值
frdPointRec = await FriendPointModel.updateSendCntToday(roleId, roleName, todaySendInc, max, FRIEND_DROP_TYPE.SEND_GIFT);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.FRIEND_SEND_HEART, todaySendInc, true, {});
await checkTask(roleId, sid, TASK_TYPE.FRIEND_SEND_HEART, todaySendInc, true, {});
// 活动任务
if (todaySendInc > 0) {
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.FRIEND_SEND_HEART, todaySendInc);
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.FRIEND_SEND_HEART, todaySendInc);
}
return resResult(STATUS.SUCCESS, {
@@ -104,7 +104,7 @@ export class HeroHandler {
let roleName: string = session.get('roleName');
let sid: string = session.get('sid');
let serverId: number = session.get('serverId');
let funcs: number[] = session.get('funcs');
let { hid } = msg;
@@ -119,7 +119,7 @@ export class HeroHandler {
let costResult = await handleCost(roleId, sid, [{ id: pieceId, count: pieceCount }]);
if (!costResult) return resResult(STATUS.ROLE_MATERIAL_NOT_ENOUGH);
// createHero
let { heroes } = await createHero(roleId, roleName, sid, serverId, funcs, { hid, count: 1 });
let { heroes } = await createHero(roleId, roleName, sid, serverId, { hid, count: 1 });
pushComposeOrangeHero(roleId, roleName, serverId, heroes[0]);
return resResult(STATUS.SUCCESS, { curHero: heroes[0] });
@@ -129,7 +129,7 @@ export class HeroHandler {
public async lvUp(msg: { hid: number, type: number }, session: BackendSession) {
let roleId: string = session.get('roleId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
const serverId = session.get('serverId');
let { hid, type } = msg;
@@ -188,8 +188,8 @@ export class HeroHandler {
hero = await calPlayerCeAndSave(HERO_SYSTEM_TYPE.LVUP, sid, roleId, hero, update);
// 任务
await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.HERO_LV, hero, [oldLv]);
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_LV, 1, { hid, lv: update.lv });
await checkTaskWithHero(roleId, sid, TASK_TYPE.HERO_LV, hero, [oldLv]);
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.HERO_LV, 1, { hid, lv: update.lv });
const curHero = {
hid, lv: hero.lv, exp: hero.exp
@@ -203,7 +203,7 @@ export class HeroHandler {
let roleId: string = session.get('roleId');
const serverId = session.get('serverId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
let { hid, star, starStage, isOneClick } = msg;
// 根据dic_hero 获得 1. 碎片id 2. 碎片数量 3. 初始武将星级 4. 初始品质
@@ -253,10 +253,10 @@ export class HeroHandler {
if (isUpStar) {
await calAllHeroCe(HERO_SYSTEM_TYPE.STAR, sid, roleId, {}, [hid, isUpStar ? 1 : 0]); // 升星可能影响到百家学院全局加成
// 任务
await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.HERO_STAR_UP, hero);
await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.HERO_QUALITY_STAR_UP, hero);
await checkTaskWithHero(roleId, sid, TASK_TYPE.HERO_STAR_UP, hero);
await checkTaskWithHero(roleId, sid, TASK_TYPE.HERO_QUALITY_STAR_UP, hero);
//成长任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_QUALITY_STAR_UP, 1, { quality: dicHero.quality, star: hero.star });
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.HERO_QUALITY_STAR_UP, 1, { quality: dicHero.quality, star: hero.star });
}
@@ -276,7 +276,7 @@ export class HeroHandler {
let roleName: string = session.get('roleName');
let sid: string = session.get('sid');
let serverId: number = session.get('serverId');
let funcs: number[] = session.get('funcs');
let { hid, quality } = msg;
let dicHero = gameData.hero.get(hid);
@@ -311,9 +311,9 @@ export class HeroHandler {
await calAllHeroCe(HERO_SYSTEM_TYPE.QUALITY, sid, roleId, {}, [hid, 0]); // 升品可能影响到百家学院全局加成
// 任务
await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.HERO_QUALITY_UP, hero);
await checkTaskWithHero(roleId, sid, TASK_TYPE.HERO_QUALITY_UP, hero);
// 任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_QUALITY_TO_QUALITY_COUNT, 1, { oldQuality: dicHero.quality, quality: hero.quality });
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.HERO_QUALITY_TO_QUALITY_COUNT, 1, { oldQuality: dicHero.quality, quality: hero.quality });
const curHero = {
hid,
@@ -330,7 +330,7 @@ export class HeroHandler {
let sid: string = session.get('sid');
let roleName: string = session.get('roleName');
const serverId = session.get('serverId');
let funcs: number[] = session.get('funcs');
let { hid, colorStar, colorStarStage, isOneClick } = msg;
// 根据dic_hero 获得 1. 碎片id 2. 碎片数量 3. 初始武将星级 4. 初始品质
@@ -386,11 +386,11 @@ export class HeroHandler {
await calAllHeroCe(HERO_SYSTEM_TYPE.COLORSTAR, sid, roleId, {}, [hid, isUpStar ? 1 : 0]); // 升星可能影响到百家学院全局加成
;
// 任务
await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.HERO_STAR_UP, hero);
await checkTask(roleId, sid, funcs, TASK_TYPE.HERO_WAKE_UP, 1, true, {});
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_QUALITY_WAKE_UP_COUNT, 1, { quality: hero.quality });
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_WAKE_UP_COUNT, 1, { hid: hid });
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_WAKE_UP_STAR_UP_COUNT, 1, { quality: dicHero.quality, colorStar: update.colorStar });
await checkTaskWithHero(roleId, sid, TASK_TYPE.HERO_STAR_UP, hero);
await checkTask(roleId, sid, TASK_TYPE.HERO_WAKE_UP, 1, true, {});
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.HERO_QUALITY_WAKE_UP_COUNT, 1, { quality: hero.quality });
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.HERO_WAKE_UP_COUNT, 1, { hid: hid });
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.HERO_WAKE_UP_STAR_UP_COUNT, 1, { quality: dicHero.quality, colorStar: update.colorStar });
}
const curHero = {
hid,
@@ -409,7 +409,7 @@ export class HeroHandler {
async heroJobTrain(msg: { hid: number, isOneClick: boolean }, session: BackendSession) {
let roleId: string = session.get('roleId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
const serverId = session.get('serverId');
let { hid, isOneClick } = msg;
let hero = await HeroModel.findByHidAndRole(hid, roleId);
@@ -445,11 +445,11 @@ export class HeroHandler {
jobStage: newJobStage
});
// 任务
await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.HERO_TRAIN, hero);
await checkTask(roleId, sid, funcs, TASK_TYPE.HERO_TRAIN_SUM, 1, true, {});
await checkTaskWithHero(roleId, sid, TASK_TYPE.HERO_TRAIN, hero);
await checkTask(roleId, sid, TASK_TYPE.HERO_TRAIN_SUM, 1, true, {});
//活动统计
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_TRAIN_SUM, 1)
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_TRAIN, 1, { hid })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.HERO_TRAIN_SUM, 1)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.HERO_TRAIN, 1, { hid })
return resResult(STATUS.SUCCESS, { curHero: { hid: hero.hid, job: hero.job, jobStage: hero.jobStage } });
}
@@ -459,7 +459,7 @@ export class HeroHandler {
let roleId: string = session.get('roleId');
const serverId = session.get('serverId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
let { hid } = msg;
let hero = await HeroModel.findByHidAndRole(hid, roleId);
if (!hero)
@@ -484,8 +484,8 @@ export class HeroHandler {
}
hero = await calPlayerCeAndSave(HERO_SYSTEM_TYPE.STAGEUP, sid, roleId, hero, update);
// 任务
await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.HERO_STAGE_UP, hero);
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_STAGE_UP, 1, { job: hero.job });
await checkTaskWithHero(roleId, sid, TASK_TYPE.HERO_STAGE_UP, hero);
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.HERO_STAGE_UP, 1, { job: hero.job });
return resResult(STATUS.SUCCESS, { curHero: { hid: hero.hid, job: hero.job, jobStage: hero.jobStage } });
}
@@ -494,7 +494,7 @@ export class HeroHandler {
async heroConectionActivate(msg: { shipId: number }, session: BackendSession) {
let roleId: string = session.get('roleId');
let sid: string = session.get('sid');
const funcs: number[] = session.get('funcs');
let { shipId } = msg;
let shipHidAndLevel = gameData.friendShipHidAandIds.get(shipId);
if (!shipHidAndLevel) return resResult(STATUS.HERO_CONECTION_IS_NOT_EXIT);
@@ -536,7 +536,7 @@ export class HeroHandler {
hero = await calPlayerCeAndSave(HERO_SYSTEM_TYPE.CONNECT, sid, roleId, hero, { connections: heroConnections }, [shipId]);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.HERO_CONNECT, 1, true, { connectLv: level })
await checkTask(roleId, sid, TASK_TYPE.HERO_CONNECT, 1, true, { connectLv: level })
return resResult(STATUS.SUCCESS, { curHero: { hid: hero.hid, connections: hero.connections } });
}
@@ -544,7 +544,7 @@ export class HeroHandler {
async heroGiveFavor(msg: { hid: number, type: number }, session: BackendSession) {
let roleId: string = session.get('roleId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
let { hid, type } = msg;
let addLv = 0;
@@ -610,7 +610,7 @@ export class HeroHandler {
}, [oldLv]);
// 任务
await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.HERO_FAVOUR_LV, hero);
await checkTaskWithHero(roleId, sid, TASK_TYPE.HERO_FAVOUR_LV, hero);
} else {
hero = await HeroModel.updateHeroInfo(roleId, hero.hid, { favour: newExp, favourLv: newLv });
}
@@ -658,7 +658,7 @@ export class HeroHandler {
let roleName: string = session.get('roleName');
let sid: string = session.get('sid');
let serverId: number = session.get('serverId');
let funcs: number[] = session.get('funcs');
const { magicWord } = msg;
if (magicWord !== DEBUG_MAGIC_WORD) {
@@ -681,7 +681,7 @@ export class HeroHandler {
}
}
}
let resultHeroes = await createHeroes(roleId, roleName, sid, serverId, funcs, heroInfos);
let resultHeroes = await createHeroes(roleId, roleName, sid, serverId, heroInfos);
return resResult(STATUS.SUCCESS, resultHeroes);
}
@@ -32,7 +32,7 @@ export class ItemHandler {
const serverId = session.get('serverId');
const sid = session.get('sid');
const roleName = session.get('roleName');
const funcs = session.get('funcs');
if (count > 0) {
let consumeResult = await handleCost(roleId, sid, [{ id: id, count: count }]);
@@ -51,7 +51,7 @@ export class ItemHandler {
if (!giftID) {
return resResult(STATUS.NOT_GIFTPACKAGE);
}
let result = await useGiftPackage(roleId, roleName, sid, serverId, funcs, giftID, selected, count)
let result = await useGiftPackage(roleId, roleName, sid, serverId, giftID, selected, count)
return resResult(STATUS.SUCCESS, result);
}
@@ -65,7 +65,7 @@ export class ItemHandler {
let { id, count } = msg;
const roleId = session.get('roleId');
const sid = session.get('sid');
const funcs = session.get('funcs');
if (count > 0) {
let dicGoods = gameData.goods.get(id);
@@ -85,7 +85,7 @@ export class ItemHandler {
let consumeResult = await handleCost(roleId, sid, [{ id: id, count: count }]);
if (!consumeResult) return resResult(STATUS.BATTLE_CONSUMES_NOT_ENOUGH);
let apJson = await setAp(roleId, role.lv, dicGoods.value * count, sid, funcs);
let apJson = await setAp(roleId, role.lv, dicGoods.value * count, sid);
return resResult(STATUS.SUCCESS, {
apJson
@@ -173,10 +173,10 @@ export class ItemHandler {
const roleId = session.get('roleId');
const sid = session.get('sid');
const funcs = session.get('funcs');
let role = await RoleModel.findByRoleId(roleId, 'lv');
let apJson = await setAp(roleId, role.lv, msg.ap, sid, funcs);
let apJson = await setAp(roleId, role.lv, msg.ap, sid);
if (!apJson) return resResult(STATUS.BATTLE_ACTION_POINT_LACK)
return resResult(STATUS.SUCCESS, { apJson });
}
@@ -37,7 +37,7 @@ export class RoleHandler {
let roleId = session.get('roleId');
let serverId = session.get('serverId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
let { roleName } = msg;
let role = await RoleModel.findByRoleId(roleId, 'roleName hasInit', true);
@@ -50,7 +50,7 @@ export class RoleHandler {
let initInfos: { role: RoleUpdate, initInfos: {heroInfo: HeroUpdate, skinInfo: SkinUpdate}[], figureInfo: { heads: Figure[], frames: Figure[], spines: Figure[] }}
= await this.app.rpc.role.roleRemote.getInitRoleInfos.toServer(this.app.getServerId());
role = await RoleModel.updateRoleInfo(roleId, {...initInfos.role, roleName, hasInit: true});
let createHero = new CreateHeroes(roleId, roleName, serverId, funcs);
let createHero = new CreateHeroes(roleId, roleName, serverId);
let infos = new Map();
for(let {heroInfo, skinInfo} of initInfos.initInfos) {
@@ -91,7 +91,7 @@ export class RoleHandler {
let roleId = session.get('roleId');
let sid: string = session.get('sid');
const serverId = session.get('serverId');
let funcs: number[] = session.get('funcs');
let role = await RoleModel.findByRoleId(roleId);
@@ -110,9 +110,9 @@ export class RoleHandler {
let calResult = await calAllHeroCe(HERO_SYSTEM_TYPE.TITLE, sid, roleId, update);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.ROLE_TITLE, 1, false, { title });
await checkTask(roleId, sid, TASK_TYPE.ROLE_TITLE, 1, false, { title });
//成长任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.ROLE_TITLE, update.title)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.ROLE_TITLE, update.title)
return resResult(STATUS.SUCCESS, { roleId: calResult.role, title: role.title });
}
@@ -122,7 +122,7 @@ export class RoleHandler {
let { id, count } = msg;
let roleId = session.get('roleId');
let sid: string = session.get('sid');
let funcs: number[] = session.get('funcs');
let role = await RoleModel.findByRoleId(roleId, 'roleId teraphs gold coin');
let teraphs = role.teraphs;
@@ -145,7 +145,7 @@ export class RoleHandler {
let calResult = await calAllHeroCe(HERO_SYSTEM_TYPE.TERAPH, sid, roleId, { teraphs }, [id]);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.ROLE_TERAPH_STRENGTHEN, count, true, {});
await checkTask(roleId, sid, TASK_TYPE.ROLE_TERAPH_STRENGTHEN, count, true, {});
return resResult(STATUS.SUCCESS, { roleId, teraphs: calResult.role.teraphs, criAttr });
}
@@ -156,7 +156,7 @@ export class RoleHandler {
let roleId = session.get('roleId');
let sid: string = session.get('sid');
const serverId = session.get('serverId');
let funcs: number[] = session.get('funcs');
let role = await RoleModel.findByRoleId(roleId);
let teraphs = role.teraphs;
@@ -189,7 +189,7 @@ export class RoleHandler {
let calResult = await calAllHeroCe(HERO_SYSTEM_TYPE.TERAPH_UP, sid, roleId, { teraphs }, [id]);
// 神像进阶,进阶一次就触发一次礼包弹框
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.ROLE_TERAPH_STAGE_UP, 1)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.ROLE_TERAPH_STAGE_UP, 1)
return resResult(STATUS.SUCCESS, { roleId, teraphs: calResult.role.teraphs });
}
@@ -207,7 +207,7 @@ export class RoleHandler {
async changeSchoolHero(msg: { schoolId: number, positionId: number, hid: number }, session: BackendSession) {
let roleId = session.get('roleId');
let sid = session.get('sid');
let funcs: number[] = session.get('funcs');
const serverId = session.get('serverId');
let { schoolId, positionId, hid } = msg;
@@ -246,10 +246,10 @@ export class RoleHandler {
await calAllHeroCe(HERO_SYSTEM_TYPE.SCHOOL, sid, roleId, {}, [schoolId, hid, preHid]);
// 任务
await checkTaskWithArgs(roleId, sid, funcs, TASK_TYPE.ROLE_SCHOOL_UNLOCK, [hid, preHid]);
await checkTaskWithArgs(roleId, sid, TASK_TYPE.ROLE_SCHOOL_UNLOCK, [hid, preHid]);
if (hid > 0) {
//成长任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.ROLE_SCHOOL_PUT_HERO, 1)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.ROLE_SCHOOL_PUT_HERO, 1)
}
return resResult(STATUS.SUCCESS, {
@@ -262,7 +262,7 @@ export class RoleHandler {
async unlockSchoolPosition(msg: { schoolId: number, positionId: number }, session: BackendSession) {
let roleId = session.get('roleId');
let sid = session.get('sid');
let funcs: number[] = session.get('funcs');
let { schoolId, positionId } = msg;
if (!gameData.school.has(schoolId)) {
@@ -288,7 +288,7 @@ export class RoleHandler {
curSchool = await SchoolModel.updateBySclAndPos(roleId, schoolId, positionId, { isOpen: true })
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.ROLE_SCHOOL_UNLOCK, 1, true, {});
await checkTask(roleId, sid, TASK_TYPE.ROLE_SCHOOL_UNLOCK, 1, true, {});
return resResult(STATUS.SUCCESS, {
schoolId, positionId, hid: curSchool.hid, isOpen: curSchool.isOpen
@@ -299,7 +299,7 @@ export class RoleHandler {
async activeHeroScroll(msg: { hid: number }, session: BackendSession) {
let roleId = session.get('roleId');
let sid = session.get('sid');
let funcs: number[] = session.get('funcs');
let serverId: number = session.get('serverId');
let { hid } = msg;
@@ -328,7 +328,7 @@ export class RoleHandler {
update.favour += SCROLL.SCROLL_ACTIVE_FAVOUR;
update.favourLv = getFriendLvByExp(update.favour);
}
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.HERO_UNLOCK, 1, { dicHeroes: [dicHero] })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.HERO_UNLOCK, 1, { dicHeroes: [dicHero] })
} else {
if (star > scrollStar) { // 可以升星
update.scrollStar++;
@@ -350,8 +350,8 @@ export class RoleHandler {
calAllHeroCe(HERO_SYSTEM_TYPE.SCROLL, sid, roleId, {}, [hid]); // 全局增加战力
// 任务
if (favourLv != hero.favourLv) await checkTaskWithHero(roleId, sid, funcs, TASK_TYPE.HERO_FAVOUR_LV, hero);
if (!scrollActive) await checkTask(roleId, sid, funcs, TASK_TYPE.ROLE_SCROLL_ACTIVE, 1, true, {});
if (favourLv != hero.favourLv) await checkTaskWithHero(roleId, sid, TASK_TYPE.HERO_FAVOUR_LV, hero);
if (!scrollActive) await checkTask(roleId, sid, TASK_TYPE.ROLE_SCROLL_ACTIVE, 1, true, {});
return resResult(STATUS.SUCCESS, {
curHero: {
@@ -215,14 +215,14 @@ export class ShopHandler {
async debugCompleteRandTask(msg: { type: number }, session: BackendSession) {
const roleId: string = session.get('roleId');
const sid: string = session.get('sid');
const funcs: number[] = session.get('funcs');
const { type } = msg
let tasks: (DicMainTask | DicDailyTask | DicAchievement)[] = [];
for (let [_id, task] of gameData.tasks.get(type)) {
tasks.push(task);
}
let task = getRandSingleEelm(tasks);
await checkTask(roleId, sid, [1, 2, 3, 4, 5], task.taskType, task.condition, false, { isDebug: true });
await checkTask(roleId, sid, task.taskType, task.condition, false, { isDebug: true });
return resResult(STATUS.SUCCESS, {
task
});
@@ -61,9 +61,8 @@ function getApWithDataAp(lv: number, dataAp: ActionPointType, fromGetAp = false)
* @param lv 玩家等级
* @param changeAp 体力变化,正是加,负是减
* @param sid
* @param funcs 开启的功能
*/
export async function setAp(roleId: string, lv: number, changeAp: number, sid: string, funcs: number[]) {
export async function setAp(roleId: string, lv: number, changeAp: number, sid: string) {
const now = Date.now();
const dicAp = getDicApByLv(lv);
let ApResult = await getAp(roleId, lv, true);
@@ -83,9 +82,9 @@ export async function setAp(roleId: string, lv: number, changeAp: number, sid: s
}
if (changeAp < 0) {
await checkTask(roleId, sid, funcs, TASK_TYPE.BATTLE_COST_AP, -1 * changeAp, true, {});
await checkTask(roleId, sid, TASK_TYPE.BATTLE_COST_AP, -1 * changeAp, true, {});
let { serverId } = await RoleModel.findByRoleId(roleId);
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_COST_AP, -1 * changeAp,);
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_COST_AP, -1 * changeAp,);
}
let apJson = await getApWithDataAp(lv, dataAp);
@@ -65,7 +65,7 @@ export async function getPlayerDailyRMBGiftsData(activityId: number, serverId: n
* @param {string} productID 商品ID
*
*/
export async function makeDailyRMBGiftsReward(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[],
export async function makeDailyRMBGiftsReward(roleId: string, roleName: string, sid: string, serverId: number,
activityId: number, productID: string) {
let activityData: ActivityModelType = await ActivityModel.findActivity(activityId);
if (activityData.type !== ACTIVITY_TYPE.DAILY_RMB_GIFTS) {
@@ -99,7 +99,7 @@ export async function makeDailyRMBGiftsReward(roleId: string, roleName: string,
}
}
let rewardParamArr: Array<RewardParam> = stringToRewardParam(item.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
await ActivityDailyRMBGiftsModel.receiveRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate(), [item.id]);
item.isReceive = true;
return {
@@ -17,7 +17,7 @@ import { decodeArrayListStr } from '../../pubUtils/util';
* @param giftCount 一共消耗多少个礼包
* @param sid
*/
export async function useGiftPackage(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[], giftID: number, selected: Array<number> = [], giftCount: number) {
export async function useGiftPackage(roleId: string, roleName: string, sid: string, serverId: number, giftID: number, selected: Array<number> = [], giftCount: number) {
console.log("bbbbbbbb", giftID, selected)
let result = { goods: [], addHeros: [] }
let giftPackageData = gameData.giftPackage.get(giftID);
@@ -39,7 +39,7 @@ export async function useGiftPackage(roleId: string, roleName: string, sid: stri
allReward = reward;
}
result = await addReward(roleId, roleName, sid, serverId, funcs, allReward);
result = await addReward(roleId, roleName, sid, serverId, allReward);
break;
}
case GIFT_PACKAGE_TYPE.SELECTED_X://手选
@@ -57,7 +57,7 @@ export async function useGiftPackage(roleId: string, roleName: string, sid: stri
} else {
allReward = selectedReward;
}
result = await addReward(roleId, roleName, sid, serverId, funcs, allReward);
result = await addReward(roleId, roleName, sid, serverId, allReward);
break;
}
case GIFT_PACKAGE_TYPE.RANDOM_X://随机
@@ -69,7 +69,7 @@ export async function useGiftPackage(roleId: string, roleName: string, sid: stri
let selectedReward = getSelectedReward(giftPackageData, selectedArray)
allReward = allReward.concat(selectedReward);
}
result = await addReward(roleId, roleName, sid, serverId, funcs, allReward);
result = await addReward(roleId, roleName, sid, serverId, allReward);
break;
}
default:
@@ -80,7 +80,7 @@ export async function useGiftPackage(roleId: string, roleName: string, sid: stri
}
//结算奖励的内容
export async function addReward(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[], reward: Array<RewardParam>) {
export async function addReward(roleId: string, roleName: string, sid: string, serverId: number, reward: Array<RewardParam>) {
let giftReward = rewardItemData(reward);
let goodArray = giftReward.goods;
let heroArray = giftReward.heroes;
@@ -89,7 +89,7 @@ export async function addReward(roleId: string, roleName: string, sid: string, s
let goods = await addItems(roleId, roleName, sid, goodArray)
let addHeros = [];
if (heroArray.length > 0) {
let heroResult = await createHeroes(roleId, roleName, sid, serverId, funcs, heroArray);
let heroResult = await createHeroes(roleId, roleName, sid, serverId, heroArray);
goods = goods.concat(heroResult.goods)
addHeros = addHeros.concat(heroResult.heroes);
}
@@ -124,7 +124,7 @@ export async function getPlayerGrowthFundData(activityId: number, serverId: numb
* @param {string} productID 商品ID
*
*/
export async function makeGrowthFund(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[],
export async function makeGrowthFund(roleId: string, roleName: string, sid: string, serverId: number,
activityId: number, productID: string) {
let activityData: ActivityModelType = await ActivityModel.findActivity(activityId);
if (!activityData) {
@@ -101,7 +101,7 @@ export async function newPlayerActivityDays(roleId: string) {
* @param {string} productID 商品ID
*
*/
export async function makeLimitPackageReward(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[],
export async function makeLimitPackageReward(roleId: string, roleName: string, sid: string, serverId: number,
activityId: number, productID: string) {
let activityData: ActivityModelType = await ActivityModel.findActivity(activityId);
if (!activityData) {
@@ -127,7 +127,7 @@ export async function makeLimitPackageReward(roleId: string, roleName: string, s
}
let rewardArray = stringToRewardParam(item.reward)
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardArray);
let result = await addReward(roleId, roleName, sid, serverId, rewardArray);
await ActivityShopModel.addRecord(activityId, roleId, playerData.roundIndex, item.id);
@@ -72,7 +72,7 @@ export async function getPlayerMonthlyTicketData(activityId: number, serverId: n
* @param {string} roleId 角色Id
*
*/
export async function getPlayerMonthlyTicketDayReward(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[],
export async function getPlayerMonthlyTicketDayReward(roleId: string, roleName: string, sid: string, serverId: number,
activityId: number,) {
let activityData: ActivityModelType = await ActivityModel.findActivity(activityId);
let { createTime } = await RoleModel.findByRoleId(roleId);
@@ -88,7 +88,7 @@ export async function getPlayerMonthlyTicketDayReward(roleId: string, roleName:
if (playerData.todayIndex > playerData.dayIndex) {//今天还没领取
await ActivityMonthlyTicketModel.setDayIndex(serverId, roleId, activityId, playerData.todayIndex);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(playerData.baseReward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
return result
}
}
@@ -104,7 +104,7 @@ export async function getPlayerMonthlyTicketDayReward(roleId: string, roleName:
* @param {string} productID 商品ID
*
*/
export async function makeMonthlyTicketReward(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[],
export async function makeMonthlyTicketReward(roleId: string, roleName: string, sid: string, serverId: number,
activityId: number, productID: string) {
let activityData: ActivityModelType = await ActivityModel.findActivity(activityId);
if (activityData.type !== ACTIVITY_TYPE.MONTHLY_TICKET_1 && activityData.type !== ACTIVITY_TYPE.MONTHLY_TICKET_2) {
@@ -120,7 +120,7 @@ export async function makeMonthlyTicketReward(roleId: string, roleName: string,
let firstReward = playerData.firstReward;
let rewardParamArr: Array<RewardParam> = stringToRewardParam(firstReward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
return {
code: 0,
data: Object.assign(result, { item: { isOpen: true, todayIndex: 1 }, activityId: activityData.activityId })
@@ -66,7 +66,7 @@ export async function getPlayerPopUpShopData(activityId: number, serverId: numbe
* @param {string} productID 商品ID
*
*/
export async function makePopUpShopReward(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[],
export async function makePopUpShopReward(roleId: string, roleName: string, sid: string, serverId: number,
activityId: number, productID: string, paramStr: string) {
if (!paramStr) {
return STATUS.ORDER_PARAM_ERROR;
@@ -105,7 +105,7 @@ export async function makePopUpShopReward(roleId: string, roleName: string, sid:
playerData.setPlayerRecords(playerRecord);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(playerData.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
return {
@@ -111,7 +111,7 @@ export async function newPlayerActivityDays(roleId: string) {
* @param {number} roundIndex 大富翁重置回合数
*
*/
export async function makeRefreshShopReward(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[],
export async function makeRefreshShopReward(roleId: string, roleName: string, sid: string, serverId: number,
activityId: number, productID: string, roundIndex: number) {
let activityData: ActivityModelType = await ActivityModel.findActivity(activityId);
if (!activityData) {
@@ -138,7 +138,7 @@ export async function makeRefreshShopReward(roleId: string, roleName: string, si
}
let rewardArray = stringToRewardParam(item.reward)
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardArray);
let result = await addReward(roleId, roleName, sid, serverId, rewardArray);
await ActivityRefreshShopModel.addRecord(activityId, roleId, playerData.roundIndex, item.pageIndex, item.id);
@@ -85,7 +85,7 @@ export async function getPlayerActivityData(activityId: number, serverId: number
*
*/
export async function addSelfServiceShopGiftReward(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[], activityId: number, roundIndex: number, index: number, item: SelfServiceShopItem) {
export async function addSelfServiceShopGiftReward(roleId: string, roleName: string, sid: string, serverId: number, activityId: number, roundIndex: number, index: number, item: SelfServiceShopItem) {
let playerGoods: ActivitySelfServiceGoodsModelType[] = await ActivitySelfServiceGoodsModel.findDataByIndex(activityId, roleId, roundIndex, index);
let rewardArray: Array<RewardParam> = [];
@@ -100,7 +100,7 @@ export async function addSelfServiceShopGiftReward(roleId: string, roleName: str
for (let obj of rewardArray) {
goodsStr += `${obj.type}&${obj.id}&${obj.count}|`;
}
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardArray);
let result = await addReward(roleId, roleName, sid, serverId, rewardArray);
//购买记录
console.log('dddddddd', rewardArray.length, serverId, activityId, roleId, roundIndex, index, goodsStr, JSON.stringify(item))
await ActivitySelfServiceShopModel.addBuyRecord(serverId, activityId, roleId, roundIndex, index, goodsStr);
@@ -117,7 +117,7 @@ export async function addSelfServiceShopGiftReward(roleId: string, roleName: str
* @param {string} productID 商品ID
*
*/
export async function makeSelfServerShop(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[],
export async function makeSelfServerShop(roleId: string, roleName: string, sid: string, serverId: number,
activityId: number, productID: string) {
let activityData: ActivityModelType = await ActivityModel.findActivity(activityId);
@@ -142,7 +142,7 @@ export async function makeSelfServerShop(roleId: string, roleName: string, sid:
}
}
}
let result = await addSelfServiceShopGiftReward(roleId, roleName, sid, serverId, funcs, activityId, playerData.roundIndex, item.index, item);
let result = await addSelfServiceShopGiftReward(roleId, roleName, sid, serverId, activityId, playerData.roundIndex, item.index, item);
item.buyCount += 1;
return {
code: 0,
@@ -153,7 +153,7 @@ export async function getPlayerSignInData(activityId: number, serverId: number,
* @param {string} productID 商品ID
*
*/
export async function makeSignInVIP(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[],
export async function makeSignInVIP(roleId: string, roleName: string, sid: string, serverId: number,
activityId: number, productID: string) {
let activityData: ActivityModelType = await ActivityModel.findActivity(activityId);
if (activityData.type !== ACTIVITY_TYPE.SIGN_IN_VIP) {
@@ -304,7 +304,7 @@ async function getNextActivityData(serverId: number, roleId: string, oldHuntActi
* @param {string} productID 商品ID
*
*/
export async function makeShop(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[],
export async function makeShop(roleId: string, roleName: string, sid: string, serverId: number,
activityId: number, productID: string) {
// let activityData: ActivityModelType = await ActivityModel.findActivity(activityId);
let { huntActivityId, huntBeginTime, huntEndTime, huntRoundIndex, activityData } = await getTreasureHuntData(serverId, roleId);
@@ -339,7 +339,7 @@ export async function makeShop(roleId: string, roleName: string, sid: string, se
await ActivityTreasureHuntShopModel.buyShopRecord(activityId, roleId, huntRoundIndex, playerData.todayIndex, cellIndex);
let rewardParamArr: Array<RewardParam> = stringToRewardParam(item.reward);
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr)
item.buyCount += 1;
return {
@@ -58,7 +58,7 @@ export async function getPlayerYuanbaoShopData(activityId: number, serverId: num
* @param {string} productID 商品ID
*
*/
export async function makeYuanbaoShopReward(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[],
export async function makeYuanbaoShopReward(roleId: string, roleName: string, sid: string, serverId: number,
activityId: number, productID: string) {
let records = await UserOrderModel.findSuccessOrderByProductID(productID, roleId, activityId);
let activityData: ActivityModelType = await ActivityModel.findActivity(activityId);
@@ -87,7 +87,7 @@ export async function makeYuanbaoShopReward(roleId: string, roleName: string, si
}
}
let result = await addReward(roleId, roleName, sid, serverId, funcs, arr)
let result = await addReward(roleId, roleName, sid, serverId, arr)
item.buyCount += 1;
return {
code: 0,
+3 -3
View File
@@ -202,7 +202,7 @@ function checkForbiddenChar(hid: number, fobiddenCharactor: {type: number, id: n
return flag;
}
export async function towerBattleEnd(sid: string, funcs: number[], roleId: string, serverId: number, battleCode: string, battleId: number, succeed: boolean, heroes: Array<number>) {
export async function towerBattleEnd(sid: string, roleId: string, serverId: number, battleCode: string, battleId: number, succeed: boolean, heroes: Array<number>) {
if (succeed) {
let battleRec = await BattleRecordModel.getBattleRecordByCode(battleCode);
if (battleRec.battleId != battleId) {
@@ -248,8 +248,8 @@ export async function towerBattleEnd(sid: string, funcs: number[], roleId: strin
await startHangUp(roleId, roleName);
}
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.BATTLE_TOWER_LV, role.towerLv, false, {});
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_TOWER_LV, 1, { towerLv: role.towerLv });
await checkTask(roleId, sid, TASK_TYPE.BATTLE_TOWER_LV, role.towerLv, false, {});
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_TOWER_LV, 1, { towerLv: role.towerLv });
}
return {
status: 0,
+3 -48
View File
@@ -83,9 +83,8 @@ export function getEventTime(now: Date) {
*/
export async function startEvent(session: FrontendOrBackendSession) {
// const funcs = session.get('funcs');
// const eventStatus = session.get('eventStatus')||EVENT_STATUS.WAITING;
// if(funcs && funcs.includes(FUNCS_ID.EVENT) && eventStatus == EVENT_STATUS.WAITING) {
const eventStatus = session.get('eventStatus');
if(eventStatus == EVENT_STATUS.WAITING) {
// console.log('*******setEventStatus')
let roleId = session.get('roleId');
let roleName = session.get('roleName');
@@ -95,52 +94,8 @@ export async function startEvent(session: FrontendOrBackendSession) {
session.set('eventStatus', EVENT_STATUS.STARTING);
session.push('eventStatus', () => {});
pushEventMsg(sid, roleId, { event }); // 推送
// }
}
/**
* 从filter调用,用于每次检查时间,获取事件并推送
*
* @param session
* @param isForce 即使不是12点和18点也强制刷新
*/
export async function checkEvent(session: FrontendOrBackendSession, isForce:boolean = false) {
try {
let roleId = session.get('roleId');
let serverId = session.get('serverId');
let funcs = session.get('funcs');
let sid = session.get('sid');
if(roleId) {
let roleName = session.get('roleName');
let eventStatus = session.get('eventStatus')||EVENT_STATUS.WAITING;
if(funcs && funcs.includes(FUNCS_ID.EVENT) && eventStatus == EVENT_STATUS.WAITING) {
await startEvent(session);
} else {
let eventTime = session.get('getEventTime')||0;
let now = new Date();
let t = getEventTime(now);
if(eventTime < t || isForce) { // 第一次登陆后可以刷新了
let event = await getEvent(eventStatus, roleId, roleName);
if (eventStatus == EVENT_STATUS.STARTING || eventStatus == EVENT_STATUS.OPEN) {
pushEventMsg(sid, roleId, { event }); // 推送
session.set('getEventTime', t);
session.push('getEventTime', () => {});
}
}
}
}
return;
}catch(err) {
console.log(err.stack);
throw err
}
}
}
/**
* 获取当前的奇遇事件
@@ -1,44 +0,0 @@
import { BackendSession, FrontendSession, pinus } from "pinus";
import { RoleModel } from "../db/Role";
import { resResult } from "../pubUtils/util";
import { STATUS, FUNC_OPT_TYPE } from "../consts";
import { eventOnPlayerLvUp } from '../services/playerEventService';
import { checkResetTrain } from '../services/guildTrainService';
import { getUserGuildWithRefActive } from '../services/guildService';
// 开启功能
export async function switchOnFunc(roleId: string, type: number, param: number, session: (BackendSession|FrontendSession)) {
const dataFuncs = session.get('funcs');
const sid = session.get('sid');
let addFuncs = new Array<number>();
switch (type) {
case FUNC_OPT_TYPE.LEVEL_UP://等级提升,触发事件
await eventOnPlayerLvUp(roleId, param, addFuncs, dataFuncs);
break;
case FUNC_OPT_TYPE.BATTLE_END://战斗结束,触发事件
// 暂无
break;
}
if (addFuncs.length) {
pinus.app.get('channelService').pushMessageByUids('onFuncSwitchOn', resResult(STATUS.SUCCESS, {addFuncs}), [{
uid: roleId,
sid: sid
}]);
const recs = await RoleModel.pushFuncs(roleId, addFuncs);
session.set('funcs', recs.funcs||[]);
session.push('funcs', () => {});
return recs;
}
}
/**
* 登录检查刷新
* @param role
* @param session
*/
export async function chackFunOpenWhenLogin(role: any, session: BackendSession|FrontendSession) {
await switchOnFunc(role.roleId, FUNC_OPT_TYPE.LEVEL_UP, role.lv, session);
await checkResetTrain(role.roleId, role.serverId);
await getUserGuildWithRefActive(role.roleId, '', true)
}
+2 -2
View File
@@ -115,7 +115,7 @@ export async function joinGuild(code: string, guildName: string, lv: number, rol
}
//成长任务-加入军团
await checkActivityTask(serverId, sid, [], roleId, TASK_TYPE.GUILD_JOIN, 1);
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.GUILD_JOIN, 1);
await pinus.app.rpc.connector.connectorRemote.setOtherUserGuildSession.toServer(sid,[{ roleId, userGuild }]);
@@ -307,7 +307,7 @@ export async function settleGuildWeekly() {
});
await sendMailByContent(MAIL_TYPE.GUILD_ACTIVE_REWARD, roleId, { goods: reward });
// 任务
await checkTask(roleId, null, null, TASK_TYPE.GUILD_JOB, 1, false, { job });
await checkTask(roleId, null, TASK_TYPE.GUILD_JOB, 1, false, { job });
}
await GuildModel.updateInfo(code, { activeWeekly: 0 }, {});
@@ -3,7 +3,7 @@ import { HeroModel } from '../db/Hero';
import Role, { RoleModel, RoleType } from '../db/Role'
import { getLvByExp, getExpByLv, gameData, getDicApByLv } from '../pubUtils/data';
import { updateUserInfo } from './redisService';
import { switchOnFunc } from './funcSwitchService';
// import { switchOnFunc } from './funcSwitchService';
import { FUNC_OPT_TYPE, TASK_TYPE, WAR_TYPE, STATUS, KING_EXP_RATIO_TYPE } from '../consts';
import { BackendSession, pinus } from 'pinus';
import { REDIS_KEY } from '../consts';
@@ -18,7 +18,7 @@ import { LineupParam } from '../domain/rank';
export async function roleLevelup(type: KING_EXP_RATIO_TYPE, roleId: string, kingExp: number = 0, session: BackendSession) {
const serverId = session.get('serverId');
const sid = session.get('sid');
const funcs = session.get('funcs');
let role = await RoleModel.findByRoleId(roleId);
let { lv = 1, exp = 0 } = role;
let canGetExp = lv < gameData.maxPlayerLv.max; // 当主公超过最大级后,挑战结算不再获得经验值
@@ -34,16 +34,16 @@ export async function roleLevelup(type: KING_EXP_RATIO_TYPE, roleId: string, kin
role = await RoleModel.levelup(roleId, newLv, newExp);
if (newLv > lv) { // 升级
await switchOnFunc(roleId, FUNC_OPT_TYPE.LEVEL_UP, newLv, session);
// await switchOnFunc(roleId, FUNC_OPT_TYPE.LEVEL_UP, newLv, session);
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'lv', value: newLv }]);
let r = new Rank(REDIS_KEY.USER_LV, { serverId: role.serverId });
await r.setRankWithRoleInfo(roleId, newLv, Date.now(), role);
// 任务
await checkTask(roleId, session.get('sid'), session.get('funcs'), TASK_TYPE.ROLE_LV, newLv, false, {});
await checkTask(roleId, session.get('sid'), TASK_TYPE.ROLE_LV, newLv, false, {});
//成长任务
await checkActivityTask(serverId, session.get('sid'), session.get('funcs'), roleId, TASK_TYPE.ROLE_LV, newLv);
await checkActivityTask(serverId, session.get('sid'), roleId, TASK_TYPE.ROLE_LV, newLv);
}
let actordata: { lv: number, exp: number, getExp: number, mostExp: number }[] = [];
@@ -65,7 +65,7 @@ export async function roleLevelup(type: KING_EXP_RATIO_TYPE, roleId: string, kin
});
if(i != lv) { // 升级加体力
let dicAp = getDicApByLv(i);
await setAp(roleId, i, dicAp.restoreAp, sid, funcs);
await setAp(roleId, i, dicAp.restoreAp, sid);
}
}
// 推送
+14 -14
View File
@@ -55,65 +55,65 @@ export async function makeOrder(localOrderID: string, sid: string, orderInfo: Us
switch (productType) {
case ACTIVITY_TYPE.SIGN_IN_VIP:
{
rewardResult = await makeSignInVIP(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID)
rewardResult = await makeSignInVIP(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID)
break;
}
case ACTIVITY_TYPE.NEW_PLAYER_LIMIT_PACKAGE:
{
rewardResult = await makeLimitPackageReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID)
rewardResult = await makeLimitPackageReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID)
break;
}
case ACTIVITY_TYPE.LIMIT_PACKAGE_SHOP_DAILY:
case ACTIVITY_TYPE.LIMIT_PACKAGE_SHOP_WEEKLY:
{
rewardResult = await makeLimitPackageReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID)
rewardResult = await makeLimitPackageReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID)
break;
}
case ACTIVITY_TYPE.YUAN_BAO_SHOP:
{
rewardResult = await makeYuanbaoShopReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID)
rewardResult = await makeYuanbaoShopReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID)
break;
}
case ACTIVITY_TYPE.MONTHLY_TICKET_1:
case ACTIVITY_TYPE.MONTHLY_TICKET_2:
{
rewardResult = await makeMonthlyTicketReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID)
rewardResult = await makeMonthlyTicketReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID)
break;
}
case ACTIVITY_TYPE.DAILY_RMB_GIFTS:
{
rewardResult = await makeDailyRMBGiftsReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID)
rewardResult = await makeDailyRMBGiftsReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID)
break;
}
case ACTIVITY_TYPE.POP_UP_SHOP://弹出礼包
{
rewardResult = await makePopUpShopReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID, orderInfo.paramStr)
rewardResult = await makePopUpShopReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID, orderInfo.paramStr)
break;
}
case ACTIVITY_TYPE.GROWTH_FUND_MAIN_VIP: //主线成长基金(高阶)
{
rewardResult = await makeGrowthFund(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID)
rewardResult = await makeGrowthFund(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID)
break;
}
case ACTIVITY_TYPE.GROWTH_FUND_TOWER_VIP://镇念塔成长基金(高阶)
{
rewardResult = await makeGrowthFund(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID)
rewardResult = await makeGrowthFund(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID)
break;
}
case ACTIVITY_TYPE.GROWTH_FUND_MAIN_ELITE_VIP://精英成长基金(高阶)
{
rewardResult = await makeGrowthFund(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID)
rewardResult = await makeGrowthFund(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID)
break;
}
case ACTIVITY_TYPE.TREASURE_HUNT://寻宝奇兵活动-每日物资商店
{
rewardResult = await makeShop(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID)
rewardResult = await makeShop(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID)
break;
}
case ACTIVITY_TYPE.SELF_SERVICE_SHOP://自选商店-购买礼包
{
rewardResult = await makeSelfServerShop(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID)
rewardResult = await makeSelfServerShop(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID)
break;
}
case ACTIVITY_TYPE.REFRESH_SHOP://通用的刷新商店(分页,可刷新,限制购买次数,支持rmb与资源兑换)
@@ -125,12 +125,12 @@ export async function makeOrder(localOrderID: string, sid: string, orderInfo: Us
let playerMonopolyData: ActivityMonopolyModelType = await ActivityMonopolyModel.findData(orderInfo.serverId, activityId, roleId);
let playerLandData: ActivityMonopolyLandModelType = await ActivityMonopolyLandModel.findDataByPosition(orderInfo.serverId, activityId, roleId, playerMonopolyData.curPosition);
let roundIndex = playerLandData.stopCount;
rewardResult = await makeRefreshShopReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID, roundIndex)
rewardResult = await makeRefreshShopReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID, roundIndex)
break;
}
}
//正常商店结算
rewardResult = await makeRefreshShopReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, roleInfo.funcs, orderInfo.activityId, orderInfo.productID, 0)
rewardResult = await makeRefreshShopReward(roleId, roleInfo.roleName, sid, orderInfo.serverId, orderInfo.activityId, orderInfo.productID, 0)
break;
}
default:
+3 -4
View File
@@ -279,8 +279,8 @@ export async function clearChannelServers() {
* @param userCode user表唯一字符串标识
* @param sid connector服的那个sid
*/
export async function roleLogin(roleId: string, userCode: string, sid: string, pkgName: string, funcs: number[]) {
let param = { userCode, sid, pkgName, funcs };
export async function roleLogin(roleId: string, userCode: string, sid: string, pkgName: string) {
let param = { userCode, sid, pkgName };
return await redisClient().hsetAsync(REDIS_KEY.ONLINE_USERS, roleId, JSON.stringify(param));
}
@@ -316,8 +316,7 @@ export async function getRoleOnlineInfo(roleId: string) {
isOnline: true,
userCode: result.userCode,
sid: result.sid,
pkgName: result.pkgName,
funcs: result.funcs
pkgName: result.pkgName
}
} catch(e) {
return { isOnline: false }
+8 -8
View File
@@ -136,7 +136,7 @@ export async function handleCost(roleId: string, sid: string, goods: Array<ItemI
}
await calPlayerCeAndSave(HERO_SYSTEM_TYPE.EQUIP, sid, roleId, hero, {}, args);
await checkTaskWithHero(roleId, sid, null, TASK_TYPE.EQUIP_BY_HERO, hero, [-1]);
await checkTaskWithHero(roleId, sid, TASK_TYPE.EQUIP_BY_HERO, hero, [-1]);
}
@@ -183,11 +183,11 @@ export async function addItems(roleId: string, roleName: string, sid: string, go
//装备推送
if (!!equipInfos.length)
pinus.app.get('channelService').pushMessageByUids('onEquipAdd', resResult(STATUS.SUCCESS, { equipInfos }), uids);
pushTaskUpdate(roleId, sid, null, pushMessages);
pushTaskUpdate(roleId, sid, pushMessages);
//统计装备
if (equipInfos.length > 0) {
let { serverId } = await RoleModel.findByRoleId(roleId);
await checkActivityTask(serverId, sid, [], roleId, TASK_TYPE.EQUIP_QUALITY_COUNT, equipInfos.length, { equips: equipInfos.map(obj => { return { quality: obj.quality } }) })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.EQUIP_QUALITY_COUNT, equipInfos.length, { equips: equipInfos.map(obj => { return { quality: obj.quality } }) })
}
// 发邮件的
if(mailEquips.length > 0) {
@@ -209,7 +209,7 @@ export async function addItems(roleId: string, roleName: string, sid: string, go
// 3. 货币推送
if(gold.length > 0 || coin > 0 || ap > 0) {
let { ap: addAp } = await setAp(roleId, role.lv, ap, sid, []);
let { ap: addAp } = await setAp(roleId, role.lv, ap, sid);
role = await RoleModel.increaseGoldAndCoin(roleId, gold, coin);
pinus.app.get('channelService').pushMessageByUids('onPlayerDataChange', resResult(STATUS.SUCCESS, {
@@ -437,7 +437,7 @@ export async function pushFigureUpdate(roleId: string, sid: string, figureInfo:
* @param serverId
* @param heroInfo
*/
export async function createHeroes(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[], heroInfo: CreateHeroParam[]) {
export async function createHeroes(roleId: string, roleName: string, sid: string, serverId: number, heroInfo: CreateHeroParam[]) {
let hids = heroInfo.map(cur => cur.hid);
let userHeroesMap = await HeroModel.findMapByHidRange(hids, roleId);
@@ -465,7 +465,7 @@ export async function createHeroes(roleId: string, roleName: string, sid: string
let resultHeroes: HeroType[] = [], resultItems: RewardInter[] = [];
if (infos.size > 0) {
let createHero = new CreateHeroes(roleId, roleName, serverId, funcs);
let createHero = new CreateHeroes(roleId, roleName, serverId);
await createHero.createWithHeroInfo(infos);
await createHero.pushMessage(pinus, sid);
await createHero.updateRedisRank(Rank);
@@ -479,8 +479,8 @@ export async function createHeroes(roleId: string, roleName: string, sid: string
return { heroes: resultHeroes, goods: resultItems }
}
export async function createHero(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[], heroInfo: CreateHeroParam) {
let result = await createHeroes(roleId, roleName, sid, serverId, funcs, [heroInfo]);
export async function createHero(roleId: string, roleName: string, sid: string, serverId: number, heroInfo: CreateHeroParam) {
let result = await createHeroes(roleId, roleName, sid, serverId, [heroInfo]);
return result;
}
+56 -58
View File
@@ -16,55 +16,54 @@ import { gameData, getGoodById } from '../pubUtils/data';
import { getSeconds, getZeroPointD } from '../pubUtils/timeUtil';
import { RoleStatus } from '../db/ComBattleTeam';
export async function checkTaskWithRoles(serverId: number, roleId: string, sid: string, funcs: number[], taskType: number, roles: RoleType[]) {
export async function checkTaskWithRoles(serverId: number, roleId: string, sid: string, taskType: number, roles: RoleType[]) {
for (let role of roles) {
if (role) {
await checkTaskWithRole(serverId, role.roleId, role.roleId == roleId ? sid : null, role.roleId == roleId ? funcs : null, taskType, role);
await checkTaskWithRole(serverId, role.roleId, role.roleId == roleId ? sid : null, taskType, role);
}
}
}
export async function checkTaskWithRole(serverId: number, roleId: string, sid: string, funcs: number[], taskType: number, role: RoleType) {
let pushMessage = await taskUtil.checkTaskWithRole(serverId, roleId, taskType, role, funcs);
pushTaskUpdate(roleId, sid, funcs, pushMessage);
export async function checkTaskWithRole(serverId: number, roleId: string, sid: string, taskType: number, role: RoleType) {
let pushMessage = await taskUtil.checkTaskWithRole(serverId, roleId, taskType, role);
pushTaskUpdate(roleId, sid, pushMessage);
}
export async function checkTaskWithHero(roleId: string, sid: string, funcs: number[], taskType: number, hero: HeroType, args?: number[]) {
let pushMessage = await taskUtil.checkTaskWithHero(roleId, taskType, hero, args, funcs);
pushTaskUpdate(roleId, sid, funcs, pushMessage);
export async function checkTaskWithHero(roleId: string, sid: string, taskType: number, hero: HeroType, args?: number[]) {
let pushMessage = await taskUtil.checkTaskWithHero(roleId, taskType, hero, args);
pushTaskUpdate(roleId, sid, pushMessage);
}
export async function checkTaskWithEquip(roleId: string, sid: string, funcs: number[], taskType: number, equip: EquipType, args?: number[]) {
let pushMessage = await taskUtil.checkTaskWithEquip(roleId, taskType, equip, args, funcs);
pushTaskUpdate(roleId, sid, funcs, pushMessage);
export async function checkTaskWithEquip(roleId: string, sid: string, taskType: number, equip: EquipType, args?: number[]) {
let pushMessage = await taskUtil.checkTaskWithEquip(roleId, taskType, equip, args);
pushTaskUpdate(roleId, sid, pushMessage);
}
export async function checkTaskWithArgs(roleId: string, sid: string, funcs: number[], taskType: number, args: number[]) {
let pushMessage = await taskUtil.checkTaskWithArgs(roleId, taskType, args, funcs);
pushTaskUpdate(roleId, sid, funcs, pushMessage);
export async function checkTaskWithArgs(roleId: string, sid: string, taskType: number, args: number[]) {
let pushMessage = await taskUtil.checkTaskWithArgs(roleId, taskType, args);
pushTaskUpdate(roleId, sid, pushMessage);
}
export async function checkTaskWithWar(roleId: string, sid: string, funcs: number[], taskType: number, warId: number, heroes: number[], count: number, star: number) {
let pushMessage = await taskUtil.checkTaskWithWar(roleId, taskType, warId, heroes, count, star, funcs);
pushTaskUpdate(roleId, sid, funcs, pushMessage);
export async function checkTaskWithWar(roleId: string, sid: string, taskType: number, warId: number, heroes: number[], count: number, star: number) {
let pushMessage = await taskUtil.checkTaskWithWar(roleId, taskType, warId, heroes, count, star);
pushTaskUpdate(roleId, sid, pushMessage);
}
export async function checkTaskWithGoods(roleId: string, sid: string, funcs: number[], taskType: number, goods: ItemInter[]) {
let pushMessage = await taskUtil.checkTaskWithGoods(roleId, taskType, goods, funcs);
pushTaskUpdate(roleId, sid, funcs, pushMessage);
export async function checkTaskWithGoods(roleId: string, sid: string, taskType: number, goods: ItemInter[]) {
let pushMessage = await taskUtil.checkTaskWithGoods(roleId, taskType, goods);
pushTaskUpdate(roleId, sid, pushMessage);
}
export async function checkTask(roleId: string, sid: string, funcs: number[], taskType: number, count: number, isInc: boolean, param: TaskParam) {
let pushMessage = await taskUtil.checkTask(roleId, taskType, count, isInc, param, funcs);
pushTaskUpdate(roleId, sid, funcs, pushMessage);
export async function checkTask(roleId: string, sid: string, taskType: number, count: number, isInc: boolean, param: TaskParam) {
let pushMessage = await taskUtil.checkTask(roleId, taskType, count, isInc, param);
pushTaskUpdate(roleId, sid, pushMessage);
}
export async function pushTaskUpdate(roleId: string, sid: string, funcs: number[], pushMessage: TaskListReturn[]) {
export async function pushTaskUpdate(roleId: string, sid: string, pushMessage: TaskListReturn[]) {
if (pushMessage.length > 0) {
if (!sid || !funcs) {
if (!sid) {
let onlineUser = await getRoleOnlineInfo(roleId);
sid = onlineUser.sid;
funcs = onlineUser.funcs || [];
}
if (!!sid) {
let uids = [{ uid: roleId, sid }];
@@ -74,19 +73,18 @@ export async function pushTaskUpdate(roleId: string, sid: string, funcs: number[
}
export async function checkActivityTask(serverId: number, sid: string, funcs: number[], roleId: string, taskType: TASK_TYPE, count: number, parma?: any) {
export async function checkActivityTask(serverId: number, sid: string, roleId: string, taskType: TASK_TYPE, count: number, parma?: any) {
let pushMessage = await taskUtil.accomplishTask(serverId, roleId, taskType, count, parma);
pushActivityUpdate(roleId, sid, funcs, pushMessage);
pushActivityUpdate(roleId, sid, pushMessage);
return pushMessage;
}
export async function pushActivityUpdate(roleId: string, sid: string, funcs: number[], pushMessage: any[]) {
export async function pushActivityUpdate(roleId: string, sid: string, pushMessage: any[]) {
console.log('pushActivityUpdate', JSON.stringify(pushMessage))
if (pushMessage.length > 0) {
if (!sid || !funcs) {
if (!sid) {
let onlineUser = await getRoleOnlineInfo(roleId);
sid = onlineUser.sid;
funcs = onlineUser.funcs || [];
}
if (!!sid) {
let uids = [{ uid: roleId, sid }];
@@ -98,30 +96,30 @@ export async function pushActivityUpdate(roleId: string, sid: string, funcs: num
/**
* battle.normalBattleHandler.battleEnd 中会触发的任务,因为有点多提出来了
*/
export async function checkTaskInBattleEnd(serverId: number, roleId: string, sid: string, funcs: number[], battleId: number, heroes: number[], star: number) {
export async function checkTaskInBattleEnd(serverId: number, roleId: string, sid: string, battleId: number, heroes: number[], star: number) {
await checkTaskWithWar(roleId, sid, funcs, TASK_TYPE.BATTLE_WITH_HERO, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, funcs, TASK_TYPE.BATTLE_MAIN, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, funcs, TASK_TYPE.BATTLE_DAILY_STAR, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, funcs, TASK_TYPE.BATTLE_DAILY, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, funcs, TASK_TYPE.BATTLE_DUNGEON, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, funcs, TASK_TYPE.BATTLE_DUNGEON_WAR, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, funcs, TASK_TYPE.BATTLE_TOWER, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, funcs, TASK_TYPE.BATTLE_VESTIGE, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, funcs, TASK_TYPE.BATTLE_EXPEDITION, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, TASK_TYPE.BATTLE_WITH_HERO, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, TASK_TYPE.BATTLE_MAIN, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, TASK_TYPE.BATTLE_DAILY_STAR, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, TASK_TYPE.BATTLE_DAILY, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, TASK_TYPE.BATTLE_DUNGEON, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, TASK_TYPE.BATTLE_DUNGEON_WAR, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, TASK_TYPE.BATTLE_TOWER, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, TASK_TYPE.BATTLE_VESTIGE, battleId, heroes, 1, star);
await checkTaskWithWar(roleId, sid, TASK_TYPE.BATTLE_EXPEDITION, battleId, heroes, 1, star);
//成长任务
let dicWar = gameData.war.get(battleId);
if (dicWar) {
if (dicWar.warType == WAR_TYPE.NORMAL) {
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_MAIN, 1, { warId: battleId })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_MAIN, 1, { warId: battleId })
} else if (dicWar.warType == WAR_TYPE.EXPEDITION) {
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_EXPEDITION, 1)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_EXPEDITION, 1)
} else if (dicWar.warType == WAR_TYPE.MYSTERY || dicWar.warType == WAR_TYPE.MYSTERY_ELITE) {
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_DUNGEON_WAR, 1, { warId: battleId })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_DUNGEON_WAR, 1, { warId: battleId })
} else if (dicWar.warType == WAR_TYPE.TOWER) {
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_TOWER, 1)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_TOWER, 1)
} else if (dicWar.warType == WAR_TYPE.DAILY) {
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_DAILY, 1, { warId: battleId })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_DAILY, 1, { warId: battleId })
}
}
@@ -135,30 +133,30 @@ export async function checkTaskInComBattleEnd(roleStatus: RoleStatus[], capId: s
let { serverId } = await RoleModel.findByRoleId(roleId);
if (roleId == capId && roleStatus.length > 1) { // 招募队友
await checkTask(roleId, null, null, TASK_TYPE.COM_BATTLE_CREATE_TEAM, 1, true, {});
await checkTask(roleId, null, TASK_TYPE.COM_BATTLE_CREATE_TEAM, 1, true, {});
} else if (roleId !== capId) { // 协助寻宝
await checkTask(roleId, null, null, TASK_TYPE.COM_BATTLE_ASSIST_TEAM, 1, true, {});
await checkTask(roleId, null, TASK_TYPE.COM_BATTLE_ASSIST_TEAM, 1, true, {});
//活动任务
await checkActivityTask(serverId, null, null, roleId, TASK_TYPE.COM_BATTLE_ASSIST_TEAM, 1);
await checkActivityTask(serverId, null, roleId, TASK_TYPE.COM_BATTLE_ASSIST_TEAM, 1);
}
await checkTask(roleId, null, null, TASK_TYPE.COM_BATTLE, 1, true, {});
await checkTask(roleId, null, null, TASK_TYPE.COM_BATTLE_QUALITY, 1, true, { quality });
await checkTask(roleId, null, TASK_TYPE.COM_BATTLE, 1, true, {});
await checkTask(roleId, null, TASK_TYPE.COM_BATTLE_QUALITY, 1, true, { quality });
//活动任务
await checkActivityTask(serverId, null, null, roleId, TASK_TYPE.COM_BATTLE, 1);
await checkActivityTask(serverId, null, roleId, TASK_TYPE.COM_BATTLE, 1);
}
}
}
export async function checkTaskInPvpEnd(roleId: string, sid: string, funcs: number[], isSuccess: boolean, heroScores: HeroScores[]) {
await checkTask(roleId, sid, funcs, TASK_TYPE.PVP, 1, true, {});
export async function checkTaskInPvpEnd(roleId: string, sid: string, isSuccess: boolean, heroScores: HeroScores[]) {
await checkTask(roleId, sid, TASK_TYPE.PVP, 1, true, {});
if (isSuccess) {
await checkTask(roleId, sid, funcs, TASK_TYPE.PVP_WIN, 1, true, {});
await checkTask(roleId, sid, funcs, TASK_TYPE.PVP_WIN_SERIES, 1, true, {});
await checkTask(roleId, sid, TASK_TYPE.PVP_WIN, 1, true, {});
await checkTask(roleId, sid, TASK_TYPE.PVP_WIN_SERIES, 1, true, {});
} else {
await checkTask(roleId, sid, funcs, TASK_TYPE.PVP_WIN_SERIES, 0, false, {});
await checkTask(roleId, sid, TASK_TYPE.PVP_WIN_SERIES, 0, false, {});
}
await checkTask(roleId, sid, funcs, TASK_TYPE.PVP_HERO_SCORE, 0, false, { heroScores });
await checkTask(roleId, sid, TASK_TYPE.PVP_HERO_SCORE, 0, false, { heroScores });
}
+2 -2
View File
@@ -232,8 +232,8 @@ export async function checkResult(pvpDefense: PvpDefenseType, seasonNum: number,
}, heroGoods, rankGoods, show: true
});//结算修改玩家pvp信息
// 更新任务
await checkTask(pvpDefense.roleId, null, null, TASK_TYPE.PVP_HERO_SCORE, 0, false, { heroScores: pvpDefense.heroScores });
await checkTask(pvpDefense.roleId, null, null, TASK_TYPE.PVP_RANK, 1, false, { rankLv });
await checkTask(pvpDefense.roleId, null, TASK_TYPE.PVP_HERO_SCORE, 0, false, { heroScores: pvpDefense.heroScores });
await checkTask(pvpDefense.roleId, null, TASK_TYPE.PVP_RANK, 1, false, { rankLv });
return {
rankLv, score, pLv, heroScores: pvpDefense.heroScores, seasonNum, challengeCnt: PVP.PVP_CHALLENGE_COUNTS, challengeRefTime: 0, oldSeasonEndTime, heroGoods: heroGoods.map(({ id, count }) => {
return { id, count };