🐞 fix(gvg): 对手添加等级
This commit is contained in:
@@ -28,6 +28,7 @@ import { GVGCityAreaPointModel } from '../../../db/GVGCityAreaPoint';
|
||||
import { Rank } from '../../../services/rankService';
|
||||
import { LeagueRankInfo, RoleRankInfo } from '../../../domain/rank';
|
||||
import { addBattleEndRec, addTeamSettleRec } from '../../../services/gvg/gvgRecService';
|
||||
import { RoleModel } from '../../../db/Role';
|
||||
|
||||
export default function (app: Application) {
|
||||
new HandlerService(app, {});
|
||||
@@ -105,7 +106,8 @@ export class GVGBattleHandler {
|
||||
updateParam.cityId = cityId;
|
||||
updateParam.areaId = getBirthAreaOfCity(city, leagueCode)
|
||||
}
|
||||
const team = await GVGTeamModel.saveTeam(roleId, index, updateParam, { roleName, serverId, leagueCode, leagueName, durability, maxDurability: durability });
|
||||
let role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||
const team = await GVGTeamModel.saveTeam(roleId, index, updateParam, { roleName, serverId, leagueCode, leagueName, durability, maxDurability: durability, lv: role.lv });
|
||||
if (!team) {
|
||||
return resResult(STATUS.GVG_SAVE_TEAM_FAILED);
|
||||
}
|
||||
|
||||
@@ -26,6 +26,9 @@ export default class GVGTeam extends BaseModel {
|
||||
@prop({ required: true })
|
||||
serverId: number; // 小区id
|
||||
|
||||
@prop({ required: true })
|
||||
lv: number; // 玩家等级
|
||||
|
||||
@prop({ required: true })
|
||||
teamCode: string; // 玩家队伍唯一标识
|
||||
|
||||
@@ -220,13 +223,13 @@ export default class GVGTeam extends BaseModel {
|
||||
}
|
||||
|
||||
// 每赛季初刷新机器人
|
||||
public static async initRobots(configId: number, groupKey: string, cityId: number, dicPoints: DicGVGAreaPoint[]) {
|
||||
public static async initRobots(configId: number, groupKey: string, cityId: number, dicPoints: DicGVGAreaPoint[], lv: number) {
|
||||
await GVGTeamModel.bulkWrite(dicPoints.map(({ pointId, areaId, name, head, spine, ce, durability }) => {
|
||||
return {
|
||||
updateOne: {
|
||||
filter: { groupKey, cityId, areaId, pointId },
|
||||
update: { $setOnInsert: {
|
||||
teamCode: genCode(8), maxDurability: durability, roleName: name, head, spine, frame: EXTERIOR.EXTERIOR_FACECASE, lineupCe: ce, isRobot: true,
|
||||
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,
|
||||
}, $set: { configId, durability } },
|
||||
upsert: true
|
||||
@@ -242,14 +245,14 @@ export default class GVGTeam extends BaseModel {
|
||||
}
|
||||
|
||||
// 生成投石车
|
||||
public static async initCatapult(configId: number, groupKey: string, cityId: number, leagueCode: string, leagueName: string, areaIds: number[], atk: number, durability: number) {
|
||||
public static async initCatapult(configId: number, groupKey: string, cityId: number, leagueCode: string, leagueName: string, areaIds: number[], atk: number, durability: number, lv: number) {
|
||||
await GVGTeamModel.bulkWrite(areaIds.map(areaId => {
|
||||
return {
|
||||
updateOne: {
|
||||
filter: { groupKey, cityId, areaId },
|
||||
update: { $setOnInsert: {
|
||||
teamCode: genCode(8), maxDurability: durability, captapultAtk: atk, leagueCode, leagueName,
|
||||
roleName: GVG.GVG_CATAPULT_NAME, head: GVG.GVG_CATAPULT_HEAD, spine: GVG.GVG_CATAPULT_SPINE, frame: EXTERIOR.EXTERIOR_FACECASE, lineupCe: GVG.GVG_CATAPULT_CE,
|
||||
roleName: GVG.GVG_CATAPULT_NAME, head: GVG.GVG_CATAPULT_HEAD, spine: GVG.GVG_CATAPULT_SPINE, frame: EXTERIOR.EXTERIOR_FACECASE, lineupCe: GVG.GVG_CATAPULT_CE, lv,
|
||||
isRobot: true, isCatapult: true, fromAreaId: areaId,
|
||||
isBroken: false, startMoveTime: 0, stopMoveTime: 0, guildCode: '', pointId: 0, roleId: GVG_CATAPULT
|
||||
}, $set: { configId, durability } },
|
||||
|
||||
@@ -279,4 +279,5 @@ export interface InitTeamParam {
|
||||
leagueName: string;
|
||||
durability: number;
|
||||
maxDurability: number;
|
||||
lv: number;
|
||||
}
|
||||
@@ -676,6 +676,7 @@ export class GVGTeamInList {
|
||||
roleName: string;
|
||||
head: number;
|
||||
frame: number;
|
||||
lv: number;
|
||||
lineupCe: number;
|
||||
leagueCode: string;
|
||||
leagueName: string;
|
||||
@@ -688,6 +689,7 @@ export class GVGTeamInList {
|
||||
this.roleName = team.roleName;
|
||||
this.head = team.head;
|
||||
this.frame = team.frame;
|
||||
this.lv = team.lv;
|
||||
this.lineupCe = team.lineupCe;
|
||||
this.leagueCode = team.leagueCode;
|
||||
this.leagueName = team.leagueName;
|
||||
|
||||
@@ -55,6 +55,7 @@ export interface DicWar {
|
||||
readonly secondAttrLevel: number;
|
||||
// 显示
|
||||
readonly selectView: number;
|
||||
readonly level: number;
|
||||
}
|
||||
|
||||
export interface DicComBattleReward {
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
"mapid": 85001,
|
||||
"warType": 23,
|
||||
"gk_name": "逐鹿中原&城池守卫",
|
||||
"level": 0,
|
||||
"level": 50,
|
||||
"lvLimted": 1,
|
||||
"quality": 0,
|
||||
"star": 0,
|
||||
@@ -58,7 +58,7 @@
|
||||
"mapid": 85001,
|
||||
"warType": 23,
|
||||
"gk_name": "逐鹿中原&城池守卫",
|
||||
"level": 0,
|
||||
"level": 50,
|
||||
"lvLimted": 1,
|
||||
"quality": 0,
|
||||
"star": 0,
|
||||
|
||||
Reference in New Issue
Block a user