🐞 fix(gvg): 联军信息变动同步

This commit is contained in:
luying
2023-02-27 21:21:29 +08:00
parent 1f04496865
commit a89692f4ef
11 changed files with 121 additions and 11 deletions

View File

@@ -10,7 +10,7 @@ import { getGVGBattleData, getGVGBattleMap } from "./gvgBattleMemory";
import { GVGAttackSpine, GVGCityMapInfo, GVGTeamInList, GVGTeamInListOnPoint, GVGTeamSpineInMap } from "../../domain/gvgField/returnData";
import { GVG } from "../../pubUtils/dicParam";
import { GVGHeroInfo, PvpEnemies, PvpHeroInfo } from "../../domain/dbGeneral";
import { getGroupKey, getGVGConfig } from "./gvgService";
import { getGroupKey, getGVGConfig, getGVGPeriodData } from "./gvgService";
import { GVGLeaguePrepareModel } from "../../db/GVGLeaguePrepare";
import { pinus } from "pinus";
import { dispatch } from "../../pubUtils/dispatcher";
@@ -391,17 +391,20 @@ export async function getBattleRanksByCity(configId: number, groupKey: string, c
// 每5秒一次结算
export async function gvgBattleSeconds() {
const { configId } = getGVGConfig();
const { configId, period } = getGVGPeriodData();
let { startFightTime, endFightTime } = getFightTimeByPeriod(period);
const serverNames = await getAllServerName();
let keys: { groupKey: string, cityId: number }[] = []
for(let [_key, teamObj] of getGVGBattleMap()) {
// 每5秒给据点上的人加积分
let teams = teamObj.findSettledPoint();
for(let teamMem of teams) {
if(teamMem.isBroken || teamMem.durability <= 0) continue;
let addScore = gameData.gvgAreaPoint.get(teamMem.pointId)?.score||0;
let team = await GVGTeamModel.addScore(teamMem.teamCode, 0, addScore);
await redisAddSettleScore(team, addScore);
if(startFightTime <= nowSeconds() && endFightTime >= nowSeconds()) {
// 每5秒给据点上的人加积分
let teams = teamObj.findSettledPoint();
for(let teamMem of teams) {
if(teamMem.isBroken || teamMem.durability <= 0) continue;
let addScore = gameData.gvgAreaPoint.get(teamMem.pointId)?.score||0;
let team = await GVGTeamModel.addScore(teamMem.teamCode, 0, addScore);
await redisAddSettleScore(team, addScore);
}
}
// 向下推送区域数据
let spinesByCity = new Map<number, GVGTeamSpineInMap[]>();