diff --git a/game-server/app/servers/connector/filter/global.ts b/game-server/app/servers/connector/filter/global.ts index 00a1f20a9..aeb7959de 100644 --- a/game-server/app/servers/connector/filter/global.ts +++ b/game-server/app/servers/connector/filter/global.ts @@ -31,12 +31,14 @@ Filter.prototype.before = async function (routeRecord: RouteRecord, msg: any, se } let hasBlockWords = false; - if(routeRecord.route == 'guild.guildHandler.createGuild') { - hasBlockWords = await checkFilterWords(msg.name); - } else if (routeRecord.route == 'role.roleHandler.initRole') { - hasBlockWords = await checkFilterWords(msg.roleName); - } else if (routeRecord.route == 'role.roleHandler.rename') { - hasBlockWords = await checkFilterWords(msg.roleName); + if(pinus.app.get('env') == 'production') { + if(routeRecord.route == 'guild.guildHandler.createGuild') { + hasBlockWords = await checkFilterWords(msg.name); + } else if (routeRecord.route == 'role.roleHandler.initRole') { + hasBlockWords = await checkFilterWords(msg.roleName); + } else if (routeRecord.route == 'role.roleHandler.rename') { + hasBlockWords = await checkFilterWords(msg.roleName); + } } if(hasBlockWords) return next(new Error(), resResult(STATUS.BLOCK_WORDS)); diff --git a/game-server/app/servers/guild/handler/gateActivityHandler.ts b/game-server/app/servers/guild/handler/gateActivityHandler.ts index 3dfcecbc0..51adb6ed6 100644 --- a/game-server/app/servers/guild/handler/gateActivityHandler.ts +++ b/game-server/app/servers/guild/handler/gateActivityHandler.ts @@ -318,6 +318,7 @@ export class GateActivityHandler { for (let server of guildServers) { pinus.app.rpc.guild.guildActivityRemote.updateGuildActivityData.toServer(server.id, aid, true); } + await GuildActivityRecordModel.updateTodayInfo({ status: 2 }); return resResult(STATUS.SUCCESS); } diff --git a/game-server/app/servers/guild/handler/raceActivityHandler.ts b/game-server/app/servers/guild/handler/raceActivityHandler.ts index 874b06790..9dc1852d8 100644 --- a/game-server/app/servers/guild/handler/raceActivityHandler.ts +++ b/game-server/app/servers/guild/handler/raceActivityHandler.ts @@ -106,9 +106,9 @@ export class RaceActivityHandler { let statusResult = getGuildActivityStatus(this.aid); if (!statusResult) return resResult(STATUS.DIC_DATA_NOT_FOUND); - if (statusResult.status != GUILD_ACTIVITY_STATUS.START) { - return resResult(STATUS.GUILD_ACTIVITY_NOT_OPEN); - } + // if (statusResult.status != GUILD_ACTIVITY_STATUS.START) { + // return resResult(STATUS.GUILD_ACTIVITY_NOT_OPEN); + // } let obj = getRaceActivityObj(); let woodenHorse = await obj.getWoodenHorse(guildCode, serverId); @@ -170,9 +170,9 @@ export class RaceActivityHandler { let myGuildActivityRec = await UserGuildActivityRecModel.updateInfo(code, { isSuccess, isCompleted: true }); if (!guildActivityRec || !myGuildActivityRec) return resResult(STATUS.INTERNAL_ERR); - let hasShow = !!guildActivityRec.hasShow; + let hasShow = !!myGuildActivityRec.hasShow; if(!hasShow) { - await GuildActivityRecordModel.updateInfo(guildCode, { hasShow: true }); + await UserGuildActivityRecModel.updateInfo(guildCode, { hasShow: true }); } // 返回当前军团总军功 diff --git a/game-server/app/servers/role/handler/roleHandler.ts b/game-server/app/servers/role/handler/roleHandler.ts index 334b7dd44..93bda55b7 100644 --- a/game-server/app/servers/role/handler/roleHandler.ts +++ b/game-server/app/servers/role/handler/roleHandler.ts @@ -557,14 +557,14 @@ export class RoleHandler { let roleId = session.get('roleId'); let role = await RoleModel.findByRoleId(roleId); if(!role) return resResult(STATUS.ROLE_NOT_FOUND); - if(role?.hasInit) { + if(role.hasInit) { let userInfo = role.userInfo; let newRoleId = genCode(10); const seqId = await Counter.getNewCounter(COUNTER.ROLE) || -1; await RoleModel.findOneAndUpdate({ roleId }, { $set: { 'userInfo.uid': 0, roleName: 'deletedRole' } }); role = await RoleModel.createRole(userInfo.uid, role.serverId, { roleId: newRoleId, code: role.code, roleName: newRoleId, seqId, lv: DEFAULT_LV, exp: (getExpByLv(DEFAULT_LV - 1) || { sum: 0 }).sum || 0 }); - session.set('roleId', role.roleId); + session.set('roleId', newRoleId); session.push('roleId', () => {}); } @@ -583,4 +583,17 @@ export class RoleHandler { return resResult(STATUS.SUCCESS, { lv: role.lv }); } + + public async debugSetRole(msg: { magicWord: string, params: RoleUpdate }, session: BackendSession) { + let roleId: string = session.get('roleId'); + + let { magicWord, params } = msg; + if (magicWord !== DEBUG_MAGIC_WORD) { + return resResult(STATUS.TOKEN_ERR); + } + let role = await RoleModel.updateRoleInfo(roleId, params); + + return resResult(STATUS.SUCCESS, { role }); + + } } diff --git a/game-server/config/servers.ts b/game-server/config/servers.ts index b443feb0e..ade64ecd2 100644 --- a/game-server/config/servers.ts +++ b/game-server/config/servers.ts @@ -227,9 +227,6 @@ module.exports = { { 'id': 'connector-server-1', 'port': 4050, 'clientHost': 'zyz_monitor.trgame.cn', 'host': '127.0.0.1', 'clientPort': 3050, 'frontend': true }, { 'id': 'connector-server-2', 'port': 4051, 'clientHost': 'zyz_monitor.trgame.cn', 'host': '127.0.0.1', 'clientPort': 3051, 'frontend': true }, { 'id': 'connector-server-3', 'port': 4052, 'clientHost': 'zyz_monitor.trgame.cn', 'host': '127.0.0.1', 'clientPort': 3052, 'frontend': true }, - { 'id': 'connector-server-4', 'port': 4053, 'clientHost': 'zyz_monitor.trgame.cn', 'host': '127.0.0.1', 'clientPort': 3053, 'frontend': true }, - { 'id': 'connector-server-5', 'port': 4054, 'clientHost': 'zyz_monitor.trgame.cn', 'host': '127.0.0.1', 'clientPort': 3054, 'frontend': true } - ], 'chat': [ { 'id': 'chat-server-1', 'host': '127.0.0.1', 'port': 6050 }, @@ -237,7 +234,7 @@ module.exports = { 'role': [ { 'id': 'role-server-1', 'host': '127.0.0.1', 'port': 6053 }, { 'id': 'role-server-2', 'host': '127.0.0.1', 'port': 6061 }, - { 'id': 'role-server-3', 'host': '127.0.0.1', 'port': 6062 } + { 'id': 'role-server-3', 'host': '127.0.0.1', 'port': 6062 }, ], 'battle': [ { 'id': 'battle-server-1', 'host': '127.0.0.1', 'port': 6054 } diff --git a/shared/db/GuildActivityRec.ts b/shared/db/GuildActivityRec.ts index e85dfd5c4..1a054abae 100644 --- a/shared/db/GuildActivityRec.ts +++ b/shared/db/GuildActivityRec.ts @@ -18,6 +18,9 @@ export default class GuildActivityRecord extends BaseModel { @prop({ required: true }) serverId: number; // 分服 + @prop({ required: true, default: 1 }) + status: number; // 分服 + @prop({ required: true }) aid: number; // 军团活动id @@ -60,9 +63,6 @@ export default class GuildActivityRecord extends BaseModel { @prop({ required: true, type: () => Event, _id: false }) events: Event[]; // 粮草先行木马 - @prop({ required: true, default: false }) - hasShow: boolean; // 是否胜利 - // 每天一条记录 public static async getRecord(guildCode: string, serverId: number, aid: number, events?: Event[]) { let today = getZeroPointD(); @@ -71,7 +71,7 @@ export default class GuildActivityRecord extends BaseModel { let update = Object.assign(docs, { code, guildCode, serverId, aid, createdAt: new Date() }); if(events) update = Object.assign(update, { events }); let rec: GuildActivityRecordType = await GuildActivityRecordModel.findOneAndUpdate( - { guildCode, createdAt: { $gte: today }}, + { guildCode, createdAt: { $gte: today }, status: 1}, { $setOnInsert: update }, {new: true, upsert: true}).lean(); return rec; @@ -86,6 +86,14 @@ export default class GuildActivityRecord extends BaseModel { return rec; } + public static async updateTodayInfo(update: GuildActivityRecordUpdateParam) { + let today = getZeroPointD(); + + let rec = await GuildActivityRecordModel.updateMany( + { createdAt: { $gte: today } }, + { $set: update }, { new: true }).lean(); + return rec; + } public static async pushEvent(guildCode: string, event: Event) { let today = getZeroPointD(); diff --git a/shared/db/UserGuildActivityRec.ts b/shared/db/UserGuildActivityRec.ts index 8ff983237..23f26ebcc 100644 --- a/shared/db/UserGuildActivityRec.ts +++ b/shared/db/UserGuildActivityRec.ts @@ -86,6 +86,8 @@ export default class UserGuildActivityRec extends BaseModel { @prop({ required: true, default: 0 }) cityId: number; // 挑战城池 + @prop({ required: true, default: false }) + hasShow: boolean; // 是否显示了胜利 // 每天一条记录 public static async getRecord(roleId: string, roleName: string, guildCode: string, serverId: number, sourceCode: string, aid: number) {