🐞 fix(gvg): 添加确认队伍
This commit is contained in:
@@ -44,9 +44,10 @@ export class GVGBattleHandler {
|
||||
// 获取我的编队信息
|
||||
async getTeams(msg: {}, session: BackendSession) {
|
||||
const roleId = session.get('roleId');
|
||||
const teams = await GVGTeamModel.findByRole(roleId, '-_id teamCode index head frame spine lineup')
|
||||
|
||||
return resResult(STATUS.SUCCESS, { teams: teams.map(team => new MyTeamSimpleInfo(team)) });
|
||||
let { configId } = getGVGConfig();
|
||||
const teams = await GVGTeamModel.findByRole(roleId, '-_id teamCode index head frame spine lineup confirmConfigId')
|
||||
|
||||
return resResult(STATUS.SUCCESS, { teams: teams.map(team => new MyTeamSimpleInfo(team, configId)) });
|
||||
}
|
||||
|
||||
// 保存队伍
|
||||
@@ -96,7 +97,23 @@ export class GVGBattleHandler {
|
||||
let teamObj = getGVGBattleData(groupKey);
|
||||
teamObj.enterCity(team);
|
||||
}
|
||||
return resResult(STATUS.SUCCESS, { curTeam: new MyTeamSimpleInfo(team) });
|
||||
return resResult(STATUS.SUCCESS, { curTeam: new MyTeamSimpleInfo(team, configId) });
|
||||
}
|
||||
|
||||
// 确认我的编队信息
|
||||
async confirmTeam(msg: {}, session: BackendSession) {
|
||||
const roleId = session.get('roleId');
|
||||
const guildCode = session.get('guildCode');
|
||||
const serverId = session.get('serverId');
|
||||
let { configId, period } = getGVGPeriodData();
|
||||
if (period != GVG_PERIOD.BATTLE) return resResult(STATUS.GVG_NOT_BATTLE_PERIOD);
|
||||
|
||||
let groupKey = await getGroupKey(serverId);
|
||||
let myLeague = await GVGLeagueModel.findLeagueByGuild(guildCode);
|
||||
if(!myLeague) return resResult(STATUS.GVG_LEAGUE_NOT_EXIST);
|
||||
let teams = await refreshTeams(configId, groupKey, roleId, myLeague, true);
|
||||
|
||||
return resResult(STATUS.SUCCESS, { teams: teams.map(team => new MyTeamSimpleInfo(team, configId)) });
|
||||
}
|
||||
|
||||
// 获取城池信息
|
||||
@@ -146,7 +163,7 @@ export class GVGBattleHandler {
|
||||
if(!myLeague) return resResult(STATUS.GVG_LEAGUE_NOT_EXIST);
|
||||
|
||||
let groupKey = await getGroupKey(serverId);
|
||||
let teams = await refreshTeams(configId, groupKey, roleId, myLeague);
|
||||
let teams = await refreshTeams(configId, groupKey, roleId, myLeague, false);
|
||||
// 玩家队伍信息中城池id不一致,说明玩家已经进入了其他城池
|
||||
for(let { cityId: teamCityId } of teams) {
|
||||
if(teamCityId > 0 && teamCityId != cityId) {
|
||||
@@ -180,7 +197,7 @@ export class GVGBattleHandler {
|
||||
// 初始化本城池的守擂机器人
|
||||
await initRobots(configId, groupKey, city||{ cityId, guardLeague: '' });
|
||||
// 每赛季初自己的几支队伍恢复耐久、城市、顺便更新一下自己的玩家名、联军
|
||||
let teams = await refreshTeams(configId, groupKey, roleId, myLeague);
|
||||
let teams = await refreshTeams(configId, groupKey, roleId, myLeague, true);
|
||||
|
||||
if(await GVGTeamModel.checkLockTeam(roleId, cityId)) return resResult(STATUS.GVG_BATTLE_TEAM_LOCK_ENTERY_CITY);
|
||||
let gvgUserData = await GVGUserDataModel.findByRole(configId, myLeague.leagueCode, roleId);
|
||||
|
||||
Reference in New Issue
Block a user