From 9e4e20f6b8dc3374317492ced5032bdc7b0c0ed3 Mon Sep 17 00:00:00 2001 From: luying Date: Thu, 30 Dec 2021 21:44:17 +0800 Subject: [PATCH] =?UTF-8?q?=E5=86=9B=E5=9B=A2=E6=B4=BB=E5=8A=A8=EF=BC=9A?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=B2=A1=E6=9C=89=E6=8B=8D=E5=8D=96=E8=A1=8C?= =?UTF-8?q?bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/servers/gm/handler/gmHandler.ts | 2 +- .../guild/handler/gateActivityHandler.ts | 10 +++++----- .../app/services/guildActivityService.ts | 19 +++++++++++++------ game-server/app/services/timeTaskService.ts | 17 +++++++++-------- 4 files changed, 28 insertions(+), 20 deletions(-) diff --git a/game-server/app/servers/gm/handler/gmHandler.ts b/game-server/app/servers/gm/handler/gmHandler.ts index 69b6aceec..02ffd8b21 100644 --- a/game-server/app/servers/gm/handler/gmHandler.ts +++ b/game-server/app/servers/gm/handler/gmHandler.ts @@ -56,7 +56,7 @@ export class GmHandler { return await this.sendMail(gmmail, isPass, uid); } - async sendSserverMailTxt(msg: { id: string, isPass: boolean }, session: BackendSession) { + async sendServerMailTxt(msg: { id: string, isPass: boolean }, session: BackendSession) { const uid: number = session.get('uid') let { id, isPass } = msg; let gmmail = await GMMailModel.getGmMailByIdAndType(id, GM_MAIL_TYPE.SERVER, false); diff --git a/game-server/app/servers/guild/handler/gateActivityHandler.ts b/game-server/app/servers/guild/handler/gateActivityHandler.ts index 6720349b4..892142625 100644 --- a/game-server/app/servers/guild/handler/gateActivityHandler.ts +++ b/game-server/app/servers/guild/handler/gateActivityHandler.ts @@ -1,5 +1,5 @@ import { Application, BackendSession, ChannelService, pinus, HandlerService, } from "pinus"; -import { getMedianCe, getGuildActivityStatus, getRecordScore, getGateActivityObj, sendSingleGateActEndMsg, participants, getGateActivityRank, getCityActivityObj } from "../../../services/guildActivityService"; +import { getMedianCe, getGuildActivityStatus, getRecordScore, getGateActivityObj, participants, getGateActivityRank, getCityActivityObj } from "../../../services/guildActivityService"; import { resResult } from "../../../pubUtils/util"; import { STATUS, GUILD_ACTIVITY_TYPE, GUILD_POINT_WAYS, ENEMIES_TYPE, GET_POINT_WAYS, TASK_TYPE } from "../../../consts"; import { UserGuildActivityRecModel } from "../../../db/UserGuildActivityRec"; @@ -177,10 +177,10 @@ export class GateActivityHandler { // if(!statusResult.isOpen) return resResult(STATUS.GUILD_ACTIVITY_NOT_OPEN); gateHp = obj.getGateHpAndInc(guildCode, -1 * damage); - if (gateHp <= 0) { - // 推送 停止活动并结算奖励 - await sendSingleGateActEndMsg(guildCode, serverId); - } + // if (gateHp <= 0) { + // // 推送 停止活动并结算奖励 + // await sendSingleGateActEndMsg(guildCode, serverId); + // } // 推送 城门血量 let chatSid = await getGuildChannelSid(guildCode); pinus.app.rpc.chat.guildRemote.pushGateHp.toServer(chatSid, guildCode, gateHp); diff --git a/game-server/app/services/guildActivityService.ts b/game-server/app/services/guildActivityService.ts index a7a504b0f..64b64d84f 100644 --- a/game-server/app/services/guildActivityService.ts +++ b/game-server/app/services/guildActivityService.ts @@ -301,8 +301,11 @@ export async function sendGuildActEndMsg(aid: number) { if (aid == GUILD_ACTIVITY_TYPE.GATE_ACTIVITY) { let obj = getGateActivityObj(); + console.log('******** gateActivity', obj); let guilds = obj.getGuilds(); + console.log('******** guilds', guilds); for (let [serverId, guildCodes] of guilds) { + console.log('***** serverId', serverId, 'guildCodes', guildCodes); for (let guildCode of guildCodes) { await gateActivitySettleReward(guildCode, serverId); } @@ -342,11 +345,11 @@ export async function sendEndMsgToAll() { * 单个军团城门血条破了之后给他发奖励 * @param guildCode 军团code */ -export async function sendSingleGateActEndMsg(guildCode: string, serverId: number) { - let chatSid = await getGuildChannelSid(guildCode); - pinus.app.rpc.chat.guildRemote.sendGuildActivityEnd.toServer(chatSid, guildCode); - await gateActivitySettleReward(guildCode, serverId); -} +// export async function sendSingleGateActEndMsg(guildCode: string, serverId: number) { +// let chatSid = await getGuildChannelSid(guildCode); +// pinus.app.rpc.chat.guildRemote.sendGuildActivityEnd.toServer(chatSid, guildCode); +// await gateActivitySettleReward(guildCode, serverId); +// } /** @@ -381,14 +384,18 @@ export async function sendSingleRaceActEndMsg(guildCode: string, woodenHorse: Wo * @param serverId 服务器id */ export async function gateActivitySettleReward(guildCode: string, serverId: number) { + console.log('gateActivitySettleReward', guildCode, serverId); let obj = getGateActivityObj(); let { gateHp, members } = obj.getObj(guildCode, serverId); + console.log('***** gateHp', gateHp, 'members', members); let r = new Rank(REDIS_KEY.GATE_ACTIVITY, { serverId }, true); let rank = await r.getMyRank({ guildCode }); let guildScore = await r.getMyScore({ guildCode }); + console.log('****** ranks', rank, 'guildScore', guildScore); let rewards = getGuildAuctionRewards(GUILD_ACTIVITY_TYPE.GATE_ACTIVITY, rank); + console.log('***** rewards', JSON.stringify(rewards)); let rec = await GuildActivityRecordModel.updateInfo(guildCode, GUILD_ACTIVITY_TYPE.GATE_ACTIVITY, { isSuccess: gateHp > 0, @@ -415,7 +422,7 @@ export async function gateActivitySettleReward(guildCode: string, serverId: numb // 加入拍卖行 await genAuction(guildCode, AUCTION_SOURCE.GATE, rec.code, serverId, rewards); - obj.delGuildRecord(guildCode, serverId); + // obj.delGuildRecord(guildCode, serverId); } async function updateUserRecAndSendHonour(honour: number, myScore: number, rank: number, roleId: string, members: Member[]) { diff --git a/game-server/app/services/timeTaskService.ts b/game-server/app/services/timeTaskService.ts index a60299383..6672769eb 100644 --- a/game-server/app/services/timeTaskService.ts +++ b/game-server/app/services/timeTaskService.ts @@ -211,14 +211,6 @@ export async function guildActivitySchedule() { if (guildActStartJobId) { guildActStartJobId.cancel(); } - if (guildActSecondsJobId) { - guildActSecondsJobId.cancel(); - guildActSecondsJobId = undefined; - } - if (guildActEndJobId) { - guildActEndJobId.cancel(); - guildActEndJobId = undefined; - } let dicGuildActivity = getTodayGuildActivity(); await delGuildActivityRank(dicGuildActivity.id); @@ -240,6 +232,15 @@ export async function guildActivityStart(dicGuildActivity?: DicGuildActivity) { console.log('********', dicGuildActivity.id, Date.now() + dicGuildActivity.duringTime * 1000) let servers = await getAllServers(); // 玩家serverId列表 + console.log('****** guildActSecondsJobId', guildActSecondsJobId) + if (guildActSecondsJobId) { + guildActSecondsJobId.cancel(); + guildActSecondsJobId = undefined; + } + if (guildActEndJobId) { + guildActEndJobId.cancel(); + guildActEndJobId = undefined; + } if (dicGuildActivity.id == GUILD_ACTIVITY_TYPE.GATE_ACTIVITY) { guildActSecondsJobId = scheduleJob('guildActivitySeconds', '*/10 * * * * *', gateActivitySeconds); // 结束时间