🐞 fix(gvg): 激战期有时areaId为0
This commit is contained in:
@@ -61,7 +61,7 @@ export class GVGBattleHandler {
|
||||
const serverId = session.get('serverId');
|
||||
const roleName = session.get('roleName');
|
||||
const guildCode = session.get('guildCode');
|
||||
const { index, head, spine, frame, lineup } = msg;
|
||||
const { cityId, index, head, spine, frame, lineup } = msg;
|
||||
|
||||
let { configId, period } = getGVGPeriodData();
|
||||
// if (period != GVG_PERIOD.BATTLE) return resResult(STATUS.GVG_NOT_BATTLE_PERIOD); // TODO 测试临时注
|
||||
@@ -99,11 +99,20 @@ export class GVGBattleHandler {
|
||||
updateParam.lineup = newLineup;
|
||||
updateParam.lineupCe = lineupCe;
|
||||
}
|
||||
|
||||
let originTeam = await GVGTeamModel.findByRoleAndIndex(roleId, index, 'cityId');
|
||||
if(!originTeam && cityId > 0) {
|
||||
let city = await GVGCityModel.increaseTeam(configId, groupKey, cityId, roleId);
|
||||
updateParam.cityId = cityId;
|
||||
updateParam.areaId = getBirthAreaOfCity(city, leagueCode)
|
||||
}
|
||||
const team = await GVGTeamModel.saveTeam(roleId, index, updateParam, { roleName, serverId, leagueCode, leagueName, durability, maxDurability: durability });
|
||||
if (!team) {
|
||||
return resResult(STATUS.GVG_SAVE_TEAM_FAILED);
|
||||
}
|
||||
if(cityId > 0) {
|
||||
let teamObj = getGVGBattleData(groupKey);
|
||||
teamObj.enterCity(team);
|
||||
}
|
||||
return resResult(STATUS.SUCCESS, { curTeam: new MyTeamSimpleInfo(team) });
|
||||
}
|
||||
|
||||
@@ -199,8 +208,7 @@ export class GVGBattleHandler {
|
||||
|
||||
gvgUserData = await GVGUserDataModel.changeCity(configId, myLeague.leagueCode, roleId, cityId);
|
||||
let areaId = getBirthAreaOfCity(city, myLeague.leagueCode);
|
||||
await GVGTeamModel.enterCity(roleId, cityId, areaId, groupKey);
|
||||
teams = await GVGTeamModel.findByRole(roleId, '-_id');
|
||||
teams = await GVGTeamModel.enterCity(roleId, cityId, areaId, groupKey);
|
||||
// 更新内存队伍信息
|
||||
let teamObj = getGVGBattleData(groupKey);
|
||||
teamObj.enterCity(...teams);
|
||||
|
||||
Reference in New Issue
Block a user