奇遇:修复多次创建奇遇bug

This commit is contained in:
luying
2021-08-27 14:09:31 +08:00
parent 2b3993f4f2
commit cbc4087a5b
4 changed files with 16 additions and 19 deletions

View File

@@ -45,9 +45,9 @@ Filter.prototype.before = async function (routeRecord: RouteRecord, msg: any, se
next(null);
};
Filter.prototype.after = function (err: Error, routeRecord: RouteRecord, msg: any, session: FrontendOrBackendSession, resp: any, next: HandlerCallback) {
Filter.prototype.after = async function (err: Error, routeRecord: RouteRecord, msg: any, session: FrontendOrBackendSession, resp: any, next: HandlerCallback) {
//刷新
refresh(session);
await refresh(session);
// return checkEvent(session).then(()=>{
// next(err);
// }).catch(e => {

View File

@@ -83,16 +83,19 @@ export function getEventTime(now: Date) {
*/
export async function startEvent(session: FrontendOrBackendSession) {
// console.log('*******setEventStatus')
let roleId = session.get('roleId');
let roleName = session.get('roleName');
let sid = session.get('sid');
let event = await refreshEvent(1, roleId, roleName, 0, []); // 刷新初始的一件
await RoleModel.setEventStatus(roleId, EVENT_STATUS.STARTING);
session.set('eventStatus', EVENT_STATUS.STARTING);
session.push('eventStatus', () => {});
pushEventMsg(sid, roleId, { event }); // 推送
const funcs = session.get('funcs');
const eventStatus = session.get('eventStatus')||EVENT_STATUS.WAITING;
if(funcs && funcs.includes(FUNCS_ID.EVENT) && eventStatus == EVENT_STATUS.WAITING) {
// console.log('*******setEventStatus')
let roleId = session.get('roleId');
let roleName = session.get('roleName');
let sid = session.get('sid');
let event = await refreshEvent(1, roleId, roleName, 0, []); // 刷新初始的一件
await RoleModel.setEventStatus(roleId, EVENT_STATUS.STARTING);
session.set('eventStatus', EVENT_STATUS.STARTING);
session.push('eventStatus', () => {});
pushEventMsg(sid, roleId, { event }); // 推送
}
}
/**

View File

@@ -14,15 +14,11 @@ import { startEvent } from "./eventSercive";
export async function refresh(session: FrontendOrBackendSession) {
const roleId = session.get('roleId');
const sid = session.get('sid');
const funcs = session.get('funcs');
const eventStatus = session.get('eventStatus')||EVENT_STATUS.WAITING;
let uids = [{uid: roleId, sid}];
pinus.app.get('channelService').pushMessageByUids('onPushCurrentTime', resResult(STATUS.SUCCESS, {time: Date.now()}), uids);
await refreshDaily(session);
if(funcs && funcs.includes(FUNCS_ID.EVENT) && eventStatus == EVENT_STATUS.WAITING) {
await startEvent(session);
}
await startEvent(session);
}
/**

View File

@@ -1054,11 +1054,9 @@ function calTitle(role: RoleType, update: RoleUpdate) {
let dicOldTitle = gameData.title.get(oldTitle)||{ mainAttrValue: new Map(), assiAttrValue: new Map() };
let dicNewTitle = gameData.title.get(newTitle);
console.log('***** oldTitle, newTitle', oldTitle, newTitle);
for (let i = ABI_TYPE.ABI_HP; i < ABI_TYPE.ABI_MAX; i++) {
if (dicNewTitle.mainAttrValue.has(i) || dicOldTitle.mainAttrValue.has(i)) {
console.log()
let fixUp = ((dicNewTitle.mainAttrValue.get(i) || 0) - (dicOldTitle.mainAttrValue.get(i) || 0)) * HERO_CE_RATIO;
updateRoleAttr(roleAttrs, i, { inc: { fixUp } });
}