任务:埋点30/70

This commit is contained in:
luying
2021-04-19 13:17:17 +08:00
parent bc07e1ea31
commit 9f4f346447
38 changed files with 1088 additions and 692 deletions
+10 -4
View File
@@ -15,6 +15,7 @@ import { uniq, indexOf, findIndex } from 'underscore';
import { HeroModel } from '../db/Hero';
import { Figure } from '../domain/dbGeneral';
import { Rank } from './rankService';
import { pushTaskUpdate } from './taskService';
export async function handleFixedReward(roleId: string, roleName: string, sid: string, rewardStr: string, multi: number) {
let reward = parseGoodStr(rewardStr);
@@ -114,22 +115,25 @@ export async function addItems(roleId: string, roleName: string, sid: string, go
let figures: Array<number> = [];
let uids = [{uid: roleId, sid}];
sortItems(goods, bags, skins, figures, currencysMap, equips, showItems);
let equipInfos = [];
let equipInfos = [], taskPushMessage = [];
for (let equip of equips) {
let equipInfo = await addEquips(roleId, roleName, equip);
let { equipInfo, pushMessage } = await addEquips(roleId, roleName, equip);
showItems.push({seqId: equipInfo.seqId, id: equip.id, count: 1});
equipInfos.push(equipInfo);
taskPushMessage.concat(pushMessage);
}
//装备推送
if (!!equipInfos.length)
pinus.app.get('channelService').pushMessageByUids('onEquipAdd', resResult(STATUS.SUCCESS, {equipInfos}), uids);
pushTaskUpdate(roleId, sid, taskPushMessage);
//货币推送
if (!!Object.keys(currencysMap).length) {
let role = await RoleModel.findByRoleId(roleId);
for (let key in currencysMap) {
if (key == 'ap') {
let {ap} = await setAp(Date.now(), roleId, currencysMap[key]);
let {ap} = await setAp(Date.now(), roleId, sid, currencysMap[key]);
currencysMap.ap = ap;
} else {
currencysMap[key] += role[key];
@@ -301,7 +305,7 @@ export async function pushFigureUpdate(roleId: string, sid: string, figureInfo:
}
export async function createHero(roleId: string, sid: string, serverId: number, heroInfo) {
let { hero, role, figureInfo, calHeroResult, calAllHeroResult } = await pubCreateHero(roleId, heroInfo);
let { hero, role, figureInfo, calHeroResult, calAllHeroResult, taskPushMessage } = await pubCreateHero(roleId, heroInfo);
let r = new Rank(REDIS_KEY.HERO_NUM_RANK, { serverId });
await r.setRankWithRoleInfo(roleId, role.heroNum, role.heroNumUpdatedAt, role);
@@ -311,5 +315,7 @@ export async function createHero(roleId: string, sid: string, serverId: number,
hero = await pushCalPlayerCe(roleId, sid, calHeroResult);
await pushCalAllHeroCe(roleId, sid, calAllHeroResult);
pushTaskUpdate(roleId, sid, taskPushMessage);
return hero;
}