寻宝:信息边窗
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
import { MemComBtlTeam } from './../../../domain/battleField/ComBattleTeamField';
|
||||
import { ComBattleInvitation, MemComBtlTeam } from './../../../domain/battleField/ComBattleTeamField';
|
||||
import { difference } from 'underscore';
|
||||
/*
|
||||
* @Author: 梁桐川
|
||||
@@ -14,8 +14,8 @@ import { resResult, getRandSingleEelm, cal } from '../../../pubUtils/util';
|
||||
import { RoleStatus, ComBattleTeamModel, ComBattleTeamType, BossHp, ComRoleStatusHero } from '../../../db/ComBattleTeam';
|
||||
import { ItemModel, ItemType } from '../../../db/Item';
|
||||
import { addItems, handleCost } from '../../../services/role/rewardService';
|
||||
import { checkRoleInQueue, rmRoleFromQueue, setTeamSearchReq } from '../../../services/redisService';
|
||||
import { getRandBlueprtId, clearComBtlTimer, getFrd, updateRobotHurtByTime, comBtlLvInvalid, clearRobotHurtTimer, setDismissTimer, dismissTeam, handleComBtlProgress, getComBattleFriendAdd, teammateInBlackList, blueprtIdValid, hasEnoughBlueprt, addRoleToTeam, addRoleStToTeam, addValidSearchingRoles, validToJoin, addRobotsToTeam, addRobotsLater, teamIsFullToStart, oneTeamNotInBlack, getAllAssistCnt, checkHasMyTeam, checkTeamStatusAndSend } from '../../../services/comBattleService';
|
||||
import { checkRoleInQueue, getServerName, rmRoleFromQueue, setTeamSearchReq } from '../../../services/redisService';
|
||||
import { getRandBlueprtId, clearComBtlTimer, getFrd, updateRobotHurtByTime, comBtlLvInvalid, clearRobotHurtTimer, setDismissTimer, dismissTeam, handleComBtlProgress, getComBattleFriendAdd, teammateInBlackList, blueprtIdValid, hasEnoughBlueprt, addRoleToTeam, addRoleStToTeam, addValidSearchingRoles, validToJoin, addRobotsToTeam, addRobotsLater, teamIsFullToStart, oneTeamNotInBlack, getAllAssistCnt, checkHasMyTeam, checkTeamStatusAndSend, getComBtlLvByPlayerLv } from '../../../services/comBattleService';
|
||||
import { setAp } from '../../../services/actionPointService';
|
||||
import { roleLevelup } from '../../../services/normalBattleService';
|
||||
import { getSimpleRoleInfo } from '../../../services/roleService';
|
||||
@@ -689,7 +689,8 @@ export class ComBattleHandler {
|
||||
const { teamCode } = msg;
|
||||
let teamStatus = this.teamMap.get(teamCode);
|
||||
if(!teamStatus) return resResult(STATUS.WRONG_PARMS);
|
||||
await pushTeamInviteMsg(roleId, roleName, serverId, guildCode, teamCode, teamStatus.blueprtId);
|
||||
await pushTeamInviteMsg(roleId, roleName, serverId, teamCode, teamStatus.blueprtId, teamStatus.lv, teamStatus.ceLimit);
|
||||
await ComBattleTeamModel.invite(teamCode, 'world');
|
||||
return resResult(STATUS.SUCCESS);
|
||||
}
|
||||
|
||||
@@ -707,6 +708,15 @@ export class ComBattleHandler {
|
||||
let teamStatus = this.teamMap.get(teamCode);
|
||||
if(!teamStatus) return resResult(STATUS.WRONG_PARMS);
|
||||
|
||||
let role = await RoleModel.findByRoleId(targetRoleId, 'lv');
|
||||
if(comBtlLvInvalid(role.lv, [teamStatus.lv])) {
|
||||
return resResult(STATUS.COM_BATTLE_INVITE_LV_NOT_ENOUGH);
|
||||
}
|
||||
if (role.topLineupCe < teamStatus.ceLimit) {
|
||||
return resResult(STATUS.COM_BATTLE_CE_LIMIT);
|
||||
}
|
||||
|
||||
await ComBattleTeamModel.invite(teamCode, targetRoleId);
|
||||
let relation = await getFriendRelationType(roleId, targetRoleId);
|
||||
const msgData = await pushFriendTeamInviteMsg(roleId, roleName, teamCode, teamStatus.blueprtId, targetRoleId, relation);
|
||||
if (!msgData) return resResult(STATUS.WRONG_PARMS);
|
||||
@@ -746,4 +756,28 @@ export class ComBattleHandler {
|
||||
|
||||
return resResult(STATUS.SUCCESS, { list: result });
|
||||
}
|
||||
|
||||
async getTeamInvitation(msg: { }, session: BackendSession) {
|
||||
let roleId = session.get('roleId');
|
||||
let role = await RoleModel.findByRoleId(roleId, 'lv topLineupCe');
|
||||
const assistCnt = await getAllAssistCnt(roleId);
|
||||
|
||||
let { minLv, maxLv } = getComBtlLvByPlayerLv(role.lv);
|
||||
let refreshTime = nowSeconds() - 60;
|
||||
const invitations = await ComBattleTeamModel.findInvitations(roleId, minLv, maxLv, role.topLineupCe, refreshTime, 10);
|
||||
let roleIds = invitations.map(cur => cur.capId);
|
||||
let roles = await RoleModel.findByRoleIds(roleIds);
|
||||
const teams: ComBattleInvitation[] = [];
|
||||
for(let invitation of invitations) {
|
||||
let leader = roles.find(role => role.roleId == invitation.capId);
|
||||
if(leader) {
|
||||
let leaderParam = new FriendParams(leader);
|
||||
let serverName = await getServerName(leader.serverId);
|
||||
leaderParam.setServerName(leader.serverId, serverName);
|
||||
teams.push(new ComBattleInvitation(invitation, leaderParam));
|
||||
}
|
||||
}
|
||||
|
||||
return resResult(STATUS.SUCCESS, { teams, assistCnt });
|
||||
}
|
||||
}
|
||||
|
||||
@@ -64,7 +64,7 @@ export class EntryHandler {
|
||||
}
|
||||
|
||||
let serverName = this.app.getServerId();
|
||||
await roleLogin(role.roleId, user.userCode, serverName, user.pkgName, role.createTime, role.serverId); // 保存在线用户
|
||||
await roleLogin(role.roleId, user.userCode, serverName, role.createTime, role.serverId, role.lv, role.topLineupCe); // 保存在线用户
|
||||
await this.addSession(user, role, session);
|
||||
|
||||
await reportCreateRoleEventToTa(role, this.getIp(session));
|
||||
|
||||
@@ -2,7 +2,7 @@ import { Application, BackendSession, pinus } from 'pinus';
|
||||
import { getRandSingleEelm, resResult } from '../../../pubUtils/util';
|
||||
import { STATUS } from '../../../consts/statusCode';
|
||||
import { GMMailModel, GMMailType } from '../../../db/GMMail';
|
||||
import { delGuildActivityRank, getRoleOnlineInfo } from '../../../services/redisService';
|
||||
import { delGuildActivityRank } from '../../../services/redisService';
|
||||
import { ACTIVITY_TYPE, GM_MAIL_STATUS, GM_MAIL_TYPE, MAIL_TIME_TYPE, PUSH_ROUTE, SURVEY_SELECT } from '../../../consts';
|
||||
import { checkActivityEditable, checkActivityGroupType, checkActivityGroupTypeWithId } from '../../../services/activity/activityService';
|
||||
import { ActivityModel } from '../../../db/Activity';
|
||||
|
||||
Reference in New Issue
Block a user