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