🐞 fix(gvg): 添加爵位参数
This commit is contained in:
@@ -73,8 +73,8 @@ export class GVGBattleHandler {
|
||||
let durability = gameData.gvgTeamDurability.get(index)||0;
|
||||
|
||||
let groupKey = await getGroupKey(serverId);
|
||||
let role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||
let updateParam: SaveTeamUpdateParam = { index, head, spine, frame, roleName, serverId, leagueCode, leagueName, lv: role.lv }
|
||||
let role = await RoleModel.findByRoleId(roleId, 'lv title');
|
||||
let updateParam: SaveTeamUpdateParam = { index, head, spine, frame, roleName, serverId, leagueCode, leagueName, lv: role.lv, title: role.title }
|
||||
if(lineup) {
|
||||
let { isOK, heroes } = await checkBattleHeroesByHid(roleId, lineup.map(cur => cur.actorId));
|
||||
if(!isOK) return resResult(STATUS.BATTLE_HERO_NOT_FOUND);
|
||||
|
||||
@@ -186,11 +186,11 @@ export async function refreshTeams(configId: number, groupKey: string, roleId: s
|
||||
for(let team of oldTeams) {
|
||||
if(team.configId != configId || (hasConfirm && team.confirmConfigId != configId)) {
|
||||
let { teamCode, maxDurability, lineup } = team;
|
||||
let { lv, roleName, guildCode } = await RoleModel.findByRoleId(roleId, 'lv roleName guildCode');
|
||||
let { lv, title, roleName, guildCode } = await RoleModel.findByRoleId(roleId, 'lv title roleName guildCode');
|
||||
let heroes = await HeroModel.findByHidRange(lineup.map(hero => hero.actorId), roleId);
|
||||
let { newLineup, newLineupCe } = await generNewLineup(roleId, heroes, lineup.map(({ actorId, dataId, outIndex }) => ({ actorId, dataId, order: outIndex })));
|
||||
let addUpdate = hasConfirm? { confirmConfigId: configId }: {};
|
||||
let newTeam = await GVGTeamModel.refreshByConfig(teamCode, { configId, lv, durability: maxDurability, cityId: 0, areaId: 0, pointId: 0, roleName, guildCode, leagueCode: myLeague.leagueCode, leagueName: myLeague.name, groupKey, lineup: newLineup, lineupCe: newLineupCe, ...addUpdate });
|
||||
let newTeam = await GVGTeamModel.refreshByConfig(teamCode, { configId, lv, title, durability: maxDurability, cityId: 0, areaId: 0, pointId: 0, roleName, guildCode, leagueCode: myLeague.leagueCode, leagueName: myLeague.name, groupKey, lineup: newLineup, lineupCe: newLineupCe, ...addUpdate });
|
||||
teams.push(newTeam);
|
||||
} else {
|
||||
teams.push(team);
|
||||
|
||||
@@ -32,6 +32,9 @@ export default class GVGTeam extends BaseModel {
|
||||
@prop({ required: true })
|
||||
lv: number; // 玩家等级
|
||||
|
||||
@prop({ required: true })
|
||||
title: number; // 爵位
|
||||
|
||||
@prop({ required: true })
|
||||
teamCode: string; // 玩家队伍唯一标识
|
||||
|
||||
@@ -218,7 +221,7 @@ export default class GVGTeam extends BaseModel {
|
||||
let teams: GVGTeamType[] = [];
|
||||
for(let { pointId, areaId, name, head, spine, ce, durability } of dicPoints) {
|
||||
let team: GVGTeamType = await GVGTeamModel.findOneAndUpdate({ configId, groupKey, cityId, areaId, pointId }, {
|
||||
$setOnInsert: {teamCode: genCode(8), maxDurability: durability, roleName: name, head, spine, frame: EXTERIOR.EXTERIOR_FACECASE, lineupCe: ce, isRobot: true, lv, isBroken: false, startMoveTime: 0, stopMoveTime: 0, guildCode: '', leagueCode: '', leagueName: '', fromAreaId: areaId, roleId: GVG_ROBOT,
|
||||
$setOnInsert: {teamCode: genCode(8), maxDurability: durability, roleName: name, head, spine, frame: EXTERIOR.EXTERIOR_FACECASE, title: 1, lineupCe: ce, isRobot: true, lv, isBroken: false, startMoveTime: 0, stopMoveTime: 0, guildCode: '', leagueCode: '', leagueName: '', fromAreaId: areaId, roleId: GVG_ROBOT,
|
||||
}, $set: { durability }
|
||||
}, { new: true, upsert: true }).lean();
|
||||
teams.push(team);
|
||||
@@ -237,7 +240,7 @@ export default class GVGTeam extends BaseModel {
|
||||
for(let { pointId, areaId, name, head, spine, ce } of dicPoints) {
|
||||
let team: GVGTeamType = await GVGTeamModel.findOneAndUpdate({ configId, groupKey, cityId, areaId, pointId }, {
|
||||
$setOnInsert: {
|
||||
teamCode: genCode(8), maxDurability: durability, roleName: name, head, spine, frame: EXTERIOR.EXTERIOR_FACECASE, lineupCe: ce, lv, leagueCode, leagueName, captapultAtk: atk,
|
||||
teamCode: genCode(8), maxDurability: durability, roleName: name, head, spine, frame: EXTERIOR.EXTERIOR_FACECASE, title: 1, lineupCe: ce, lv, leagueCode, leagueName, captapultAtk: atk,
|
||||
isRobot: true, isCatapult: true, isBroken: false, startMoveTime: 0, stopMoveTime: 0, guildCode: '', fromAreaId: areaId, roleId: GVG_CATAPULT,
|
||||
}, $set: { durability }
|
||||
}, { new: true, upsert: true }).lean();
|
||||
|
||||
@@ -273,6 +273,7 @@ export interface SaveTeamUpdateParam {
|
||||
leagueCode: string;
|
||||
leagueName: string;
|
||||
lv: number;
|
||||
title: number;
|
||||
}
|
||||
|
||||
export interface InitTeamParam {
|
||||
|
||||
@@ -796,6 +796,7 @@ export class MyTeamInfo {
|
||||
head: number; // 保存头像
|
||||
frame: number; // 保存相框
|
||||
spine: number; // 保存形象
|
||||
title: number; // 爵位
|
||||
lv: number;
|
||||
lineup: {
|
||||
actorId: number; // 武将
|
||||
@@ -820,6 +821,7 @@ export class MyTeamInfo {
|
||||
this.head = team.head;
|
||||
this.frame = team.frame;
|
||||
this.spine = team.spine;
|
||||
this.title = team.title;
|
||||
this.lv = team.lv;
|
||||
if(team.lineup) this.lineup = team.lineup.map(({ actorId, dataId, outIndex }) => ({ actorId, dataId, order: outIndex }));
|
||||
this.durability = team.durability;
|
||||
|
||||
Reference in New Issue
Block a user