diff --git a/game-server/app/servers/battle/handler/pvpHandler.ts b/game-server/app/servers/battle/handler/pvpHandler.ts index 3ea25d84c..d3c666acc 100644 --- a/game-server/app/servers/battle/handler/pvpHandler.ts +++ b/game-server/app/servers/battle/handler/pvpHandler.ts @@ -127,7 +127,7 @@ export class PvpHandler { await BattleRecordModel.updateBattleRecordByCode(battleCode, { $set: { - roleId, roleName, warId, + roleId, roleName, battleId: warId, status: 0, warName: warInfo.gk_name, warType: warInfo.warType, diff --git a/game-server/app/servers/connector/handler/entryHandler.ts b/game-server/app/servers/connector/handler/entryHandler.ts index 51da11221..7c3f2922e 100644 --- a/game-server/app/servers/connector/handler/entryHandler.ts +++ b/game-server/app/servers/connector/handler/entryHandler.ts @@ -78,7 +78,7 @@ export class EntryHandler { let equips = await EquipModel.findbyRole(role.roleId); let items = await ItemModel.findbyRole(role.roleId); - await chackFunOpenWhenLogin(role, session.get('funcs')); + await chackFunOpenWhenLogin(role, session); await loginRefresh(role.roleId); role['heros'] = heros.map(cur => returnHeroCeRatio(cur)); diff --git a/game-server/app/services/funcSwitchService.ts b/game-server/app/services/funcSwitchService.ts index c36db3a48..c6f326692 100644 --- a/game-server/app/services/funcSwitchService.ts +++ b/game-server/app/services/funcSwitchService.ts @@ -31,6 +31,6 @@ export async function switchOnFunc(roleId: string, type: number, param: number, } } -export async function chackFunOpenWhenLogin(role: any, dataFuncs:Array) { - await eventOnPlayerLvUp(role.roleId, role.lv, [], dataFuncs); +export async function chackFunOpenWhenLogin(role: any, session: BackendSession|FrontendSession) { + await switchOnFunc(role.roleId, FUNC_OPT_TYPE.LEVEL_UP, role.lv, session); } \ No newline at end of file diff --git a/game-server/app/services/playerEventService.ts b/game-server/app/services/playerEventService.ts index a52118b01..7263eee23 100644 --- a/game-server/app/services/playerEventService.ts +++ b/game-server/app/services/playerEventService.ts @@ -5,12 +5,14 @@ import { fromCallback } from 'bluebird'; import { checkPvp, findPvpDefByRoleId } from '../services/pvpService' import { getFuncsSwitch } from '../pubUtils/data'; import { FUNCS_ID, FUNC_OPT_TYPE } from '../consts/constModules/sysConst'; -import { RoleModel } from '../db/Role' +import { RoleModel } from '../db/Role'; +import { startEvent } from "./eventSercive"; + export async function eventOnPlayerLvUp(roleId: string, lv: number, addFuncs: Array, dataFuncs: Array) { if (!dataFuncs.includes(FUNCS_ID.PVP)) {//开启pvp let res = getFuncsSwitch(FUNCS_ID.PVP); - if (!res || lv >= res.param) { + if (res && lv >= res.param) { let role = await RoleModel.findByRoleId(roleId); await checkPvp(role); addFuncs.push(FUNCS_ID.PVP); @@ -19,7 +21,7 @@ export async function eventOnPlayerLvUp(roleId: string, lv: number, addFuncs: Ar if (!dataFuncs.includes(FUNCS_ID.EVENT)) {//开启奇遇 let res = getFuncsSwitch(FUNCS_ID.EVENT); - if (!res || lv >= res.param) { + if (res && lv >= res.param) { addFuncs.push(FUNCS_ID.EVENT); } } diff --git a/shared/resource/jsons/dic_func_switch.json b/shared/resource/jsons/dic_func_switch.json index 67818d004..56fab94fd 100644 --- a/shared/resource/jsons/dic_func_switch.json +++ b/shared/resource/jsons/dic_func_switch.json @@ -5,5 +5,12 @@ "conditionType": 1, "param": 1, "script": "&" + }, + { + "id": 2, + "desc": "PVP", + "conditionType": 1, + "param": 1, + "script": "&" } ] \ No newline at end of file