Files
ZYZ/game-server/app/services/playerCeService.ts
2020-12-09 15:03:54 +08:00

40 lines
1.3 KiB
TypeScript

/**
* 体力系统
*/
import { ActionPointModel } from '../db/ActionPoint';
import { ACTION_POIN } from '../consts/consts';
import { ChannelService, pinus } from 'pinus';
import { STATUS } from '../consts/statusCode';
import {resResult } from '../pubUtils/util';
import {HeroModel} from '../db/Hero';
import {RoleModel} from '../db/Role';
import { forEach } from 'pinus-robot/lib/common/util';
//战力计算TODO
export function calPlayerCe(hero:any) {
let ce = 0;
return ce;
}
//修改并下发战力
export async function calPlayerCeAndSave(sid: string, roleId: string, heros:Array<any>) {
let playerCe = 0;
let pushHeros = [];
for (let hero of heros) {
hero.ce = calPlayerCe(hero);
playerCe = playerCe + hero.ce;
hero = await HeroModel.updateHeroInfo(roleId, hero.hid, hero);
pushHeros.push({
hid: hero.hid,
ce: hero.ce
});
}
let role = await RoleModel.findByRoleId(roleId);
role.ce = playerCe;
await RoleModel.updateRoleInfo(roleId, role);
//下发战力
let uids = [{uid: roleId, sid}];
pinus.app.get('channelService').pushMessageByUids('onPlayerCeUpdate', resResult(STATUS.SUCCESS, {ce: playerCe, heros:pushHeros, topFiveCe:0}), uids);
return heros;
}