军团活动:修复rpc调用以及其他问题

This commit is contained in:
luying
2021-03-19 18:28:50 +08:00
parent 7324556852
commit f7627f85d1
23 changed files with 351 additions and 109 deletions
+10
View File
@@ -123,6 +123,14 @@ app.configure('production|development|alpha|dev|isbn', 'gm', function () {
init();//将gm后台数据加载到gate服
});
app.configure('production|development|alpha|dev|isbn', 'guild', function () {
app.set('connectorConfig',
{
connector: pinus.connectors.hybridconnector,
useProtobuf: true
});
});
app.configure('production|development|alpha|dev|isbn', 'systimer', function () {
app.set('connectorConfig',
{
@@ -176,6 +184,7 @@ app.configure('production|development|alpha|dev|isbn', function () {
app.route('chat', routeUtil.chat);
app.route('battle', routeUtil.battle);
app.route('gm', routeUtil.gm);
app.route('guild', routeUtil.guild);
// filter configures
app.filter(new pinus.filters.time());
@@ -198,6 +207,7 @@ app.configure('production|development|alpha|dev|isbn', function () {
});
});
app.configure('development', function () {
// enable the system monitor modules
app.enable('systemMonitor');
@@ -27,6 +27,7 @@ export class GuildRemote {
private GUILD_REC_ADD = 'onGuildRecAdd';
private GUILD_ACT_RANK = 'onGuildGateRankUpdate'; // 军团活动排行榜
private GUILD_GATE_ACT_HP = 'onGuildGateHpUpdate'; // 军团活动蛮夷入侵排行榜
private GUILD_ACTIVITY_END = 'onGuildActivityEnd';
/**
* 封装,军团相关channel名: 'guild'+guildCode
@@ -158,6 +159,14 @@ export class GuildRemote {
this.pushMessage(guildCode, this.GUILD_REC_ADD, {type, params, createTime});
}
/**
* 向军团推送城门血量
* @param guildCode
*/
public pushGateHp(guildCode: string, msg: GuildGateRankParam) {
this.pushMessage(guildCode, this.GUILD_GATE_ACT_HP, msg);
}
/**
* 向军团推送排行榜名次
* @param guildCode
@@ -165,4 +174,13 @@ export class GuildRemote {
public pushRank(guildCode: string, msg: GuildGateRankParam) {
this.pushMessage(guildCode, this.GUILD_ACT_RANK, msg);
}
/**
* @description 向军团推送结束活动
* @param guildCode
*/
public async sendGuildActivityEnd(guildCode: string) {
console.log("MSG END")
this.pushMessage(guildCode, this.GUILD_ACTIVITY_END, {});
}
}
@@ -1,5 +1,5 @@
import { Application, BackendSession, ChannelService } from "pinus";
import { setMedianCe, getMedianCe, getGuildActivityStatus, getRecordScore, getGuildActivityObj, getGuildActivityRank } from "../../../services/guildActivityService";
import { Application, BackendSession, ChannelService, pinus } from "pinus";
import { setMedianCe, getMedianCe, getGuildActivityStatus, getRecordScore, getGuildActivityObj, getGuildActivityRank, sendSingleGuildGateActEndMsg, sendGuildActEndMsg } from "../../../services/guildActivityService";
import { resResult } from "../../../pubUtils/util";
import { STATUS, GUILD_ACTIVITY_TYPE, GUILD_POINT_WAYS, ENEMIES_TYPE, GET_POINT_WAYS } from "../../../consts";
import { GameModel } from "../../../db/Game";
@@ -14,6 +14,8 @@ import { setRank, getGuildKeyName, getRankScore, getRank, getUnionRank } from ".
import { REDIS_KEY } from "../../../consts";
import { addActive } from "../../../services/guildService";
import { gameData } from "../../../pubUtils/data";
import { getGuildChannelSid } from "../../../services/chatService";
import { guildActivityStart } from "../../../services/timeTaskService";
export default function (app: Application) {
return new GateActivityHandler(app);
@@ -42,7 +44,7 @@ export class GateActivityHandler {
if(!guildActivityRec) return resResult(STATUS.INTERNAL_ERR);
let { code: sourceCode } = guildActivityRec;
let myGuildActivityRec = await UserGuildActivityRecModel.getRecord(roleId, roleName, guildCode, serverId, sourceCode, [], this.aid);
let myGuildActivityRec = await UserGuildActivityRecModel.getRecord(roleId, roleName, guildCode, serverId, sourceCode, this.aid);
let { challengeCnt } = myGuildActivityRec;
let ranks = await getGuildActivityRank(guildCode, serverId, roleId, roleName);
@@ -64,8 +66,9 @@ export class GateActivityHandler {
const serverId = session.get('serverId');
const guildCode = session.get('guildCode');
if(!guildCode) return resResult(STATUS.GUILD_AUTH_NOT_ENOUGH);
let obj = getGuildActivityObj(this.aid);
let gateHp = getGuildActivityObj(this.aid).getGateHpAndInc(guildCode);
let gateHp = obj.getGateHpAndInc(guildCode);
if(gateHp <= 0) return resResult(STATUS.GATE_HP_IS_ZERO);
let statusResult = getGuildActivityStatus(this.aid);
@@ -77,11 +80,15 @@ export class GateActivityHandler {
if(!guildActivityRec) return resResult(STATUS.INTERNAL_ERR);
let { code: sourceCode } = guildActivityRec;
let myGuildActivityRec = await UserGuildActivityRecModel.getRecord(roleId, roleName, guildCode, serverId, sourceCode, heroes, this.aid);
let myGuildActivityRec = await UserGuildActivityRecModel.getRecord(roleId, roleName, guildCode, serverId, sourceCode, this.aid);
if(myGuildActivityRec.challengeCnt > 0) {
return resResult(STATUS.CHALLENGE_CNT_NOT_ENOUGH);
}
await UserGuildActivityRecModel.incChallengeCnt(myGuildActivityRec.code, heroes);
let { code, challengeCnt } = myGuildActivityRec;
// 更新公会参与的玩家
getGuildActivityObj(this.aid).pushMembers(guildCode, serverId, roleId);
obj.pushMembers(guildCode, serverId, roleId);
// 返回当前军团总军功
let guildScore = await getRankScore(REDIS_KEY.GUILD_ACTIVITY, serverId, guildCode);
@@ -108,21 +115,22 @@ export class GateActivityHandler {
let serverId = session.get('serverId');
let { code, record } = msg;
let obj = getGuildActivityObj(this.aid);
let statusResult = getGuildActivityStatus(this.aid);
if(!statusResult) return resResult(STATUS.DIC_DATA_NOT_FOUND);
// TODO 测试完成后去掉这条判断
// if(!statusResult.isOpen) return resResult(STATUS.GUILD_ACTIVITY_NOT_OPEN);
let gateHp = getGuildActivityObj(this.aid).getGateHpAndInc(guildCode);
let gateHp = obj.getGateHpAndInc(guildCode);
if(gateHp <= 0) return resResult(STATUS.GATE_HP_IS_ZERO);
// 计算record内得分
let memberRecord = getGuildActivityObj(this.aid).getMemberRecord(code, roleId);
let memberRecord = obj.getMemberRecord(code, roleId);
let scoreResult = getRecordScore(this.aid, record, memberRecord);
if(!scoreResult) return resResult(STATUS.DIC_DATA_NOT_FOUND);
let { score, newRecords, memberRecord: newMemberRecord } = scoreResult;
getGuildActivityObj(this.aid).setMemberRecord(code, memberRecord);
obj.setMemberRecord(code, newMemberRecord);
// 更新redis数据
let role = await RoleModel.findByRoleId(roleId);
@@ -154,7 +162,8 @@ export class GateActivityHandler {
let serverId = session.get('serverId');
let { code, damage } = msg;
let gateHp = getGuildActivityObj(this.aid).getGateHpAndInc(guildCode);
let obj = getGuildActivityObj(this.aid);
let gateHp = obj.getGateHpAndInc(guildCode);
if(gateHp <= 0) return resResult(STATUS.GATE_HP_IS_ZERO);
let statusResult = getGuildActivityStatus(this.aid);
@@ -162,11 +171,14 @@ export class GateActivityHandler {
// TODO 测试完成后去掉这条判断
// if(!statusResult.isOpen) return resResult(STATUS.GUILD_ACTIVITY_NOT_OPEN);
gateHp = getGuildActivityObj(this.aid).getGateHpAndInc(guildCode, -1 * damage);
gateHp = obj.getGateHpAndInc(guildCode, -1 * damage);
if(gateHp <= 0) {
// TODO 推送 停止活动
// 推送 停止活动并结算奖励
await sendSingleGuildGateActEndMsg(guildCode, serverId);
}
// TODO 推送 城门血量
// 推送 城门血量
let chatSid = await getGuildChannelSid(guildCode);
pinus.app.rpc.chat.guildRemote.pushGateHp.toServer(chatSid, guildCode, { gateHp });
// 返回当前军团总军功
let guildScore = await getRankScore(REDIS_KEY.GUILD_ACTIVITY, serverId, guildCode);
@@ -189,6 +201,7 @@ export class GateActivityHandler {
let serverId = session.get('serverId');
let { code, isSuccess } = msg;
let obj = getGuildActivityObj(this.aid);
let statusResult = getGuildActivityStatus(this.aid);
if(!statusResult) return resResult(STATUS.DIC_DATA_NOT_FOUND);
@@ -217,7 +230,7 @@ export class GateActivityHandler {
let role = await RoleModel.findByRoleId(roleId);
let { lv, vLv, head, frame, spine, title } = role;
let userParam = new RankParam(roleName, lv, vLv, head, frame, spine, title);
await setRank(getGuildKeyName(REDIS_KEY.USER_GUILD_ACTIVITY, guildCode), serverId, guildCode, score, Date.now(), userParam);
await setRank(getGuildKeyName(REDIS_KEY.USER_GUILD_ACTIVITY, guildCode), serverId, roleId, score, Date.now(), userParam);
let guild = await GuildModel.findByCode(guildCode, serverId);
let leader = <RoleType>guild.leader;
@@ -230,9 +243,9 @@ export class GateActivityHandler {
// 返回当前军团总军功
let guildScore = await getRankScore(REDIS_KEY.GUILD_ACTIVITY, serverId, guildCode);
let myScore = await getRankScore(getGuildKeyName(REDIS_KEY.USER_GUILD_ACTIVITY, guildCode), serverId, roleId, true);
let gateHp = getGuildActivityObj(this.aid).getGateHpAndInc(guildCode);
let gateHp = obj.getGateHpAndInc(guildCode);
getGuildActivityObj(this.aid).delMemberRecord(code);
obj.delMemberRecord(code);
let info = {
round,
enemyCnt, littleBossCnt, bossCnt,
@@ -261,7 +274,9 @@ export class GateActivityHandler {
async debugGetPrivate(msg: { }, session: BackendSession) {
let guildCode = session.get('guildCode');
let res = getGuildActivityObj(this.aid).getObj(guildCode);
console.log(guildCode);
let serverId = session.get('serverId');
let res = getGuildActivityObj(this.aid).getObj(guildCode, serverId);
return resResult(STATUS.SUCCESS, res)
}
@@ -270,4 +285,24 @@ export class GateActivityHandler {
let result = await setMedianCe();
return resResult(STATUS.SUCCESS, {result});
}
async debugIncChallengeCnt(msg: { }, session: BackendSession) {
let roleId = session.get('roleId');
let res = await UserGuildActivityRecModel.updateInfoByRoleId(roleId, { challengeCnt: 0 });
return resResult(STATUS.SUCCESS, { challengeCnt: res.challengeCnt });
}
async debugStartActivity(msg: { aid: number }, session: BackendSession) {
let { aid } = msg;
let dic = gameData.guildActivity.get(aid);
await guildActivityStart(dic);
return resResult(STATUS.SUCCESS);
}
async debugEndActivity(msg: { aid: number }, session: BackendSession) {
let { aid } = msg;
await sendGuildActEndMsg(aid);
return resResult(STATUS.SUCCESS);
}
}
@@ -17,14 +17,14 @@ export class GuildActivityRemote {
/**
* 从systimer服分发到guild各个服,发送排行榜数据
*/
public async sendRankToGuilds() {
await sendAllGuildRanks();
public async sendRankToGuilds(aid: number) {
await sendAllGuildRanks(aid);
}
/**
* 发送结束活动消息
*/
public async guildActivityEnd() {
await sendGuildActEndMsg();
public async guildActivityEnd(aid: number) {
await sendGuildActEndMsg(aid);
}
}
+4 -4
View File
@@ -11,9 +11,12 @@ import { SystimerRemote } from './systimer/remote/systimerRemote';
import { GuildRemote } from './chat/remote/guildRemote';
import { GMRemote } from './gm/remote/gmRemote';
import { RoleRemote } from './role/remote/roleRemote';
import { GuildActivityRemote } from './guild/remote/guildActivitRemote';
import { GuildActivityRemote } from './guild/remote/guildActivityRemote';
declare global {
interface UserRpc {
guild: {
guildActivityRemote: RemoterClass<FrontendSession, GuildActivityRemote>;
},
chat: {
chatRemote: RemoterClass<FrontendSession, ChatRemote>;
guildRemote: RemoterClass<FrontendSession, GuildRemote>;
@@ -33,9 +36,6 @@ declare global {
},
role: {
roleRemote: RemoterClass<FrontendSession, RoleRemote>;
},
guild: {
guildActivityRemote: RemoterClass<FrontendSession, GuildActivityRemote>;
}
}
}
@@ -2,17 +2,22 @@ import { ServerlistModel } from "../db/Serverlist";
import { RoleModel } from "../db/Role";
import { reduceCe } from "../pubUtils/util";
import { GUILDACTIVITY } from "../pubUtils/dicParam";
import { gameData, getTodayGuildActivity } from "../pubUtils/data";
import { gameData, getGuildAuctionRewards, getTodayGuildActivity } from "../pubUtils/data";
import { getCurHourPoint, getCutDay, nowSeconds } from "../pubUtils/timeUtil";
import { GUILD_ACTIVITY_STATUS, GET_POINT_WAYS, GUILD_ACTIVITY_TYPE, REDIS_KEY } from "../consts";
import { Record } from "../db/UserGuildActivityRec";
import { GUILD_ACTIVITY_STATUS, GET_POINT_WAYS, GUILD_ACTIVITY_TYPE, REDIS_KEY, AUCTION_SOURCE, MAIL_TYPE } from "../consts";
import { Record, UserGuildActivityRecModel } from "../db/UserGuildActivityRec";
import { GateMembersRec, GateActivityObject } from "../domain/battleField/guildActivity";
import { DicGuildActivity } from "../pubUtils/dictionary/DicGuildActivity";
import { getUnionRank, getRank, getGuildKeyName } from "./redisService";
import { getUnionRank, getRank, getGuildKeyName, getMyUnionRank, getRankScore } from "./redisService";
import { GuildModel } from "../db/Guild";
import { SimpleGuildRankParam, SimpleRoleRankParam } from "../domain/rank";
import { getGuildChannelSid, getWorldChannelSid } from "./chatChannelService";
import { pinus } from "pinus";
import { GuildActivityRecordModel } from "../db/GuildActivityRec";
import { uniq } from 'underscore'
import { genAuction } from "./auctionService";
import { sendMail } from "./mailService";
import { getHonourObject } from '../pubUtils/itemUtils';
let gateActivityObj: GateActivityObject;
export function getGuildActivityObj(aid: number) {
@@ -177,25 +182,85 @@ export async function getGuildActivityRank(guildCode: string, serverId: number,
/**
* 对这个guild服内所有军团发排行榜信息
* @param aid 活动类型
*/
export async function sendAllGuildRanks() {
let obj = getGuildActivityObj(GUILD_ACTIVITY_TYPE.GATE_ACTIVITY);
export async function sendAllGuildRanks(aid: number) {
let obj = getGuildActivityObj(aid);
let guilds = obj.getGuilds();
for(let [ serverId, guildCodes ] of guilds) {
// TODO 不需要每个军团都排序一次
for(let guildCode of guildCodes) {
let ranks = await getGuildActivityRank(guildCode, serverId);
let chatSid = await getGuildChannelSid(guildCode);
pinus.app.rpc.chat.guildRemote.pushRank.toServer(chatSid, ranks);
pinus.app.rpc.chat.guildRemote.pushRank.toServer(chatSid, guildCode, ranks);
}
}
}
export async function sendGuildActEndMsg() {
let obj = getGuildActivityObj(GUILD_ACTIVITY_TYPE.GATE_ACTIVITY);
/**
* 活动结束发送结束信号以及结算奖励
* @param aid 活动类型
*/
export async function sendGuildActEndMsg(aid: number) {
let obj = getGuildActivityObj(aid);
let guilds = obj.getGuilds();
for(let [ serverId ] of guilds) {
for(let [ serverId, guildCodes ] of guilds) {
let chatSid = await getWorldChannelSid(serverId);
pinus.app.rpc.chat.chatRemote.sendGuildActivityEnd.toServer(chatSid, serverId);
if(aid == GUILD_ACTIVITY_TYPE.GATE_ACTIVITY) {
for(let guildCode of guildCodes) {
await gateActivitySettleReward(guildCode, serverId);
}
}
}
}
/**
* 单个军团城门血条破了之后给他发奖励
* @param guildCode
*/
export async function sendSingleGuildGateActEndMsg(guildCode: string, serverId: number) {
let chatSid = await getGuildChannelSid(guildCode);
pinus.app.rpc.chat.guildRemote.sendGuildActivityEnd.toServer(chatSid, guildCode);
await gateActivitySettleReward(guildCode, serverId);
}
/**
* 军团结算奖励
* @param guildCode
* @param serverId
*/
export async function gateActivitySettleReward(guildCode: string, serverId: number) {
let obj = getGuildActivityObj(GUILD_ACTIVITY_TYPE.GATE_ACTIVITY);
let { gateHp, members } = obj.getObj(guildCode, serverId);
members = uniq(members);
let rank = await getMyUnionRank(REDIS_KEY.GUILD_ACTIVITY, serverId, guildCode);
let guildScore = await getRankScore(REDIS_KEY.GUILD_ACTIVITY, serverId, guildCode);
let rewards = getGuildAuctionRewards(GUILD_ACTIVITY_TYPE.GATE_ACTIVITY, rank);
let rec = await GuildActivityRecordModel.updateInfo(guildCode, {
isSuccess: gateHp > 0,
isCompleted: true,
rank, score: guildScore, remainGateHp: gateHp,
members, memberCnt: members.length,
rewards
});
// 结算功勋等奖励
let dic = gameData.guildActivity.get(GUILD_ACTIVITY_TYPE.GATE_ACTIVITY);
let memberRankResult = await getRank(getGuildKeyName(REDIS_KEY.USER_GUILD_ACTIVITY, guildCode), serverId, '');
for(let { rank, roleId, num: myScore } of memberRankResult.ranks) {
let honour = dic.honour + myScore * GUILDACTIVITY.GATEACTIVITY_HONOUR_RATIO;
let honourObj = getHonourObject(Math.floor(honour));
await sendMail(MAIL_TYPE.GUILD_ACTIVITY_REWARD, roleId, '系统', [], [honourObj])
await UserGuildActivityRecModel.updateInfoByRoleId(roleId, { score: myScore, rank });
}
// 加入拍卖行
await genAuction(guildCode, AUCTION_SOURCE.GATE, rec.code, serverId, rewards);
obj.delGuildRecord(guildCode, serverId);
}
+1 -1
View File
@@ -173,7 +173,7 @@ export async function setRank(key: string, serverId: number, myId: string, score
if(!hasCurUser) {
await redisUserInfoAdd(infoKey, myId, params);
}
return true;
return newScore;
}
// 获取排行榜
+33 -21
View File
@@ -12,7 +12,7 @@ import { MAIL_TYPE, REDIS_KEY, ADULT_AGE, GUEST_MAX_TIME, ADDICTION_PREVENTION_C
import { RankParam } from '../domain/rank';
import { RoleModel } from '../db/Role';
import { MailModel, MailType } from '../db/Mail';
import { pinus } from 'pinus';
import { pinus, Application } from 'pinus';
import { indexOf } from 'underscore';
import { PvpSeasonResultModel } from '../db/PvpSeasonResult';
import { settleGuildWeekly } from './guildService';
@@ -20,8 +20,9 @@ import { STATUS } from '../consts/statusCode';
import { getMailContent, sendMail } from './mailService';
import { reportOnline } from '../pubUtils/httpUtil';
import User, { UserModel } from '../db/User';
import { getGuildActivityByDic, getGuildActivityRank } from './guildActivityService';
import { getGuildActivityByDic, getGuildActivityRank, setMedianCe } from './guildActivityService';
import { sendUngotDividend, startGuildAuction, startWorldAuction, stopAuction } from './auctionService';
import { DicGuildActivity } from '../pubUtils/dictionary/DicGuildActivity';
const PER_SECOND = 1 * 1000;
const PER_DAY = 24 * 60 * 60;
const SETTLE_DIFF = 29 * 60;
@@ -68,9 +69,14 @@ export async function init() {
// 每5分钟汇报在线玩家在线情况
scheduleJob('reportOnline', '0 0/5 * * * *', reportOnlineSchedule);
// 军团活动排行榜
guildActivitySchedule();
// 每天0点计算前一天活跃玩家中位数战力
scheduleJob('setMedian', '0 0 5 * * ?', setMedianCe);
// 拍卖行刷新:拍卖阶段刷新,分红发放
auctionSchedule();
}
function setPvpSeasonSchdule() {
@@ -334,8 +340,9 @@ export async function reportOneOnline(roleId: string, userCode: string, sid: str
* 军团活动,每晚8点开启
*/
async function guildActivitySchedule() {
// 军团晚间活动,每天8点开始
scheduleJob('guildActivityStart', '0 0 20 * * ?', guildActivityStart);
/***********guildActivitySchedule***********/
scheduleJob('guildActivityStart', '0 0 20 * * ?', guildActivityStartSchedule);
let dicGuildActivity = getTodayGuildActivity();
let statusResult = getGuildActivityByDic(dicGuildActivity);
@@ -347,38 +354,44 @@ async function guildActivitySchedule() {
if(dicGuildActivity.id == GUILD_ACTIVITY_TYPE.RACE_ACTIVITY) {
seconds = 1;
}
guildActSecondsJobId = scheduleJob('guildActivitySeconds', seconds, guildActivitySeconds);
guildActSecondsJobId = scheduleJob('guildActivitySeconds', `*/${seconds} * * * * *`, gateActivitySeconds);
}
if(!guildActEndJobId) {
guildActEndJobId = scheduleJob('guildActivityEnd', statusResult.time, guildActivityEnd);
guildActEndJobId = scheduleJob('guildActivityEnd', statusResult.time, gateActivityEnd);
}
}
}
// 开始军团活动
export async function guildActivityStart() {
// 军团晚间活动,每天8点开始
async function guildActivityStartSchedule() {
await guildActivityStart();
}
let dicGuildActivity = getTodayGuildActivity();
export async function guildActivityStart(dicGuildActivity?: DicGuildActivity) {
console.log('***********开始军团晚间活动****')
if(!dicGuildActivity) dicGuildActivity = getTodayGuildActivity();
if(!dicGuildActivity) return;
let seconds = 10; // 每10秒下发一次
if(dicGuildActivity.id == GUILD_ACTIVITY_TYPE.RACE_ACTIVITY) {
seconds = 1;
if(dicGuildActivity.id == GUILD_ACTIVITY_TYPE.GATE_ACTIVITY) {
guildActSecondsJobId = scheduleJob('guildActivitySeconds', '*/10 * * * * *', gateActivitySeconds);
// 结束时间
guildActEndJobId = scheduleJob('guildActivityEnd', dicGuildActivity.duringTime, gateActivityEnd);
} else if (dicGuildActivity.id == GUILD_ACTIVITY_TYPE.CITY_ACTIVITY) {
} else if (dicGuildActivity.id == GUILD_ACTIVITY_TYPE.RACE_ACTIVITY) {
}
guildActSecondsJobId = scheduleJob('guildActivitySeconds', seconds, guildActivitySeconds);
// 结束时间
guildActEndJobId = scheduleJob('guildActivityEnd', dicGuildActivity.duringTime, guildActivityEnd);
}
// 蛮夷入侵
// 结束军团活动
export async function guildActivityEnd() {
export async function gateActivityEnd() {
let servers = pinus.app.getServersByType('guild');
console.log(servers);
for(let { id } of servers) {
await pinus.app.rpc.guild.guildActivityRemote.guildActivityEnd.toServer(id);
await pinus.app.rpc.guild.guildActivityRemote.guildActivityEnd.toServer(id, GUILD_ACTIVITY_TYPE.GATE_ACTIVITY);
}
if(guildActSecondsJobId) guildActSecondsJobId.cancel();
@@ -386,11 +399,10 @@ export async function guildActivityEnd() {
}
// 每10秒下发一次的任务
export async function guildActivitySeconds() {
export async function gateActivitySeconds() {
let servers = pinus.app.getServersByType('guild');
console.log(servers);
for(let { id } of servers) {
await pinus.app.rpc.guild.guildActivityRemote.sendRankToGuilds.toServer(id);
await pinus.app.rpc.guild.guildActivityRemote.sendRankToGuilds.toServer(id, GUILD_ACTIVITY_TYPE.GATE_ACTIVITY);
}
}
+4 -1
View File
@@ -60,7 +60,10 @@ export function guild(session: Session, msg: any, app: Application, cb: (err: Er
if (['guild.gateActivityHandler.checkBattle', // 军团活动蛮夷入侵路由,按军团路由
'guild.gateActivityHandler.action',
'guild.gateActivityHandler.hitGate',
'guild.gateActivityHandler.battleEnd'
'guild.gateActivityHandler.battleEnd',
'guild.gateActivityHandler.debugGetPrivate',
'guild.gateActivityHandler.debugStartActivity',
'guild.gateActivityHandler.debugEndActivity'
].indexOf(arg.route) !== -1) {
rid = session.get('guildCode');
}
+10 -10
View File
@@ -45,8 +45,8 @@ module.exports = {
{'id': 'systimer-server-1', 'host': '127.0.0.1', 'port': 6056, "args": " --inspect=9233"}
],
'guild': [
{'id': 'guild-server-1', 'host': '127.0.0.1', 'port': 6057, "args": " --inspect=9238"},
{'id': 'guild-server-2', 'host': '127.0.0.1', 'port': 6058, "args": " --inspect=9238"}
{'id': 'guild-server-1', 'host': '127.0.0.1', 'port': 6057, "args": " --inspect=9239"},
{'id': 'guild-server-2', 'host': '127.0.0.1', 'port': 6058, "args": " --inspect=9240"}
]
},
'production': {
@@ -81,8 +81,8 @@ module.exports = {
{'id': 'systimer-server-1', 'host': '127.0.0.1', 'port': 6056}
],
'guild': [
{'id': 'guild-server-1', 'host': '127.0.0.1', 'port': 6057, "args": " --inspect=9238"},
{'id': 'guild-server-2', 'host': '127.0.0.1', 'port': 6058, "args": " --inspect=9238"}
{'id': 'guild-server-1', 'host': '127.0.0.1', 'port': 6057, "args": " --inspect=9239"},
{'id': 'guild-server-2', 'host': '127.0.0.1', 'port': 6058, "args": " --inspect=9240"}
]
},
'alpha': {
@@ -119,8 +119,8 @@ module.exports = {
{'id': 'systimer-server-1', 'host': '127.0.0.1', 'port': 6056}
],
'guild': [
{'id': 'guild-server-1', 'host': '127.0.0.1', 'port': 6057, "args": " --inspect=9238"},
{'id': 'guild-server-2', 'host': '127.0.0.1', 'port': 6058, "args": " --inspect=9238"}
{'id': 'guild-server-1', 'host': '127.0.0.1', 'port': 6057, "args": " --inspect=9239"},
{'id': 'guild-server-2', 'host': '127.0.0.1', 'port': 6058, "args": " --inspect=9240"}
]
},
'dev': {
@@ -158,8 +158,8 @@ module.exports = {
{'id': 'systimer-server-1', 'host': '127.0.0.1', 'port': 6056, "args": " --inspect=9233"}
],
'guild': [
{'id': 'guild-server-1', 'host': '127.0.0.1', 'port': 6057, "args": " --inspect=9238"},
{'id': 'guild-server-2', 'host': '127.0.0.1', 'port': 6058, "args": " --inspect=9238"}
{'id': 'guild-server-1', 'host': '127.0.0.1', 'port': 6057, "args": " --inspect=9239"},
{'id': 'guild-server-2', 'host': '127.0.0.1', 'port': 6058, "args": " --inspect=9240"}
]
},
'isbn': {
@@ -194,8 +194,8 @@ module.exports = {
{'id': 'systimer-server-1', 'host': '127.0.0.1', 'port': 6056}
],
'guild': [
{'id': 'guild-server-1', 'host': '127.0.0.1', 'port': 6057, "args": " --inspect=9238"},
{'id': 'guild-server-2', 'host': '127.0.0.1', 'port': 6058, "args": " --inspect=9238"}
{'id': 'guild-server-1', 'host': '127.0.0.1', 'port': 6057, "args": " --inspect=9239"},
{'id': 'guild-server-2', 'host': '127.0.0.1', 'port': 6058, "args": " --inspect=9240"}
]
}
};