军团:退出军团时减少战力
This commit is contained in:
@@ -314,7 +314,7 @@ export class GuildHandler {
|
|||||||
// 添加动态
|
// 添加动态
|
||||||
const rec = await GuildRecModel.createGuildRec(roleId, code, GUILD_REC_TYPE.JOIN_GUILD, [roleName]);
|
const rec = await GuildRecModel.createGuildRec(roleId, code, GUILD_REC_TYPE.JOIN_GUILD, [roleName]);
|
||||||
// 更新人数增加
|
// 更新人数增加
|
||||||
this.app.rpc.chat.guildRemote.updateInfo.toServer(CHAT_SERVER, code, { memberCnt: joinResult.memberCnt });
|
this.app.rpc.chat.guildRemote.updateInfo.toServer(CHAT_SERVER, code, { memberCnt: joinResult.memberCnt, guildCe: joinResult.guildCe });
|
||||||
this.app.rpc.chat.guildRemote.addRec.toServer(CHAT_SERVER,rec);
|
this.app.rpc.chat.guildRemote.addRec.toServer(CHAT_SERVER,rec);
|
||||||
|
|
||||||
hasGuild = true;
|
hasGuild = true;
|
||||||
@@ -371,7 +371,7 @@ export class GuildHandler {
|
|||||||
if(joinResult.status == 0) continue;
|
if(joinResult.status == 0) continue;
|
||||||
|
|
||||||
// 更新人数增加
|
// 更新人数增加
|
||||||
this.app.rpc.chat.guildRemote.updateInfo.toServer(CHAT_SERVER, code, { memberCnt: joinResult.memberCnt });
|
this.app.rpc.chat.guildRemote.updateInfo.toServer(CHAT_SERVER, code, { memberCnt: joinResult.memberCnt, guildCe: joinResult.guildCe });
|
||||||
// 添加动态
|
// 添加动态
|
||||||
const rec = await GuildRecModel.createGuildRec(roleId, code, GUILD_REC_TYPE.JOIN_GUILD, [joinResult.roleName]);
|
const rec = await GuildRecModel.createGuildRec(roleId, code, GUILD_REC_TYPE.JOIN_GUILD, [joinResult.roleName]);
|
||||||
this.app.rpc.chat.guildRemote.addRec.toServer(CHAT_SERVER,rec);
|
this.app.rpc.chat.guildRemote.addRec.toServer(CHAT_SERVER,rec);
|
||||||
@@ -496,7 +496,7 @@ export class GuildHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 更新人数增加
|
// 更新人数增加
|
||||||
this.app.rpc.chat.guildRemote.updateInfo.toServer(CHAT_SERVER, code, { memberCnt: joinResult.memberCnt });
|
this.app.rpc.chat.guildRemote.updateInfo.toServer(CHAT_SERVER, code, { memberCnt: joinResult.memberCnt, guildCe: joinResult.guildCe });
|
||||||
// 添加动态
|
// 添加动态
|
||||||
const rec = await GuildRecModel.createGuildRec(roleId, code, GUILD_REC_TYPE.JOIN_GUILD, [joinResult.roleName]);
|
const rec = await GuildRecModel.createGuildRec(roleId, code, GUILD_REC_TYPE.JOIN_GUILD, [joinResult.roleName]);
|
||||||
this.app.rpc.chat.guildRemote.addRec.toServer(CHAT_SERVER, rec);
|
this.app.rpc.chat.guildRemote.addRec.toServer(CHAT_SERVER, rec);
|
||||||
@@ -599,7 +599,7 @@ export class GuildHandler {
|
|||||||
const role = await RoleModel.quitGuild(roleId, nowSeconds());
|
const role = await RoleModel.quitGuild(roleId, nowSeconds());
|
||||||
if(!role) return resResult(STATUS.GUILD_QUIT_ERROR);
|
if(!role) return resResult(STATUS.GUILD_QUIT_ERROR);
|
||||||
|
|
||||||
const guild = await GuildModel.quit(code, roleId, serverId);
|
const guild = await GuildModel.quit(code, roleId, serverId, role.ce, userGuild.auth == GUILD_AUTH.MANAGER);
|
||||||
if(!guild) return resResult(STATUS.GUILD_QUIT_ERROR);
|
if(!guild) return resResult(STATUS.GUILD_QUIT_ERROR);
|
||||||
|
|
||||||
// 添加动态
|
// 添加动态
|
||||||
@@ -633,7 +633,7 @@ export class GuildHandler {
|
|||||||
const role = await RoleModel.quitGuild(memberRoleId, nowSeconds());
|
const role = await RoleModel.quitGuild(memberRoleId, nowSeconds());
|
||||||
if(!role) return resResult(STATUS.GUILD_KICK_ERROR);
|
if(!role) return resResult(STATUS.GUILD_KICK_ERROR);
|
||||||
|
|
||||||
const guild = await GuildModel.quit(code, memberRoleId, serverId);
|
const guild = await GuildModel.quit(code, memberRoleId, serverId, role.ce, userGuild.auth == GUILD_AUTH.MANAGER);
|
||||||
if(!guild) return resResult(STATUS.GUILD_KICK_ERROR);
|
if(!guild) return resResult(STATUS.GUILD_KICK_ERROR);
|
||||||
|
|
||||||
this.app.rpc.chat.guildRemote.memberQuit.toServer(CHAT_SERVER,code, roleId, guild);
|
this.app.rpc.chat.guildRemote.memberQuit.toServer(CHAT_SERVER,code, roleId, guild);
|
||||||
|
|||||||
@@ -154,7 +154,7 @@ export class GuildRemote {
|
|||||||
roleId
|
roleId
|
||||||
}, sid);
|
}, sid);
|
||||||
// 更新人数减少
|
// 更新人数减少
|
||||||
this.updateInfo(guildCode, { memberCnt: guild.memberCnt });
|
this.updateInfo(guildCode, { memberCnt: guild.memberCnt, guildCe: guild.guildCe });
|
||||||
this.leaveChannel(guildCode, roleId, sid);
|
this.leaveChannel(guildCode, roleId, sid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ export async function joinGuild(code: string, guildName: string, lv: number, rol
|
|||||||
await UserGuildApplyModel.deleteApply(roleId); // 删除玩家所有对其他公会的申请
|
await UserGuildApplyModel.deleteApply(roleId); // 删除玩家所有对其他公会的申请
|
||||||
|
|
||||||
res.releaseCallback();//解锁
|
res.releaseCallback();//解锁
|
||||||
return { status: 1, guild, userGuild, roleName: role.roleName, memberCnt: guild.memberCnt }
|
return { status: 1, guild, userGuild, roleName: role.roleName, memberCnt: guild.memberCnt, guildCe: guild.guildCe }
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
+2
-2
@@ -165,8 +165,8 @@ export default class Guild extends BaseModel {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static async quit(code: string, roleId: string, serverId: number) {
|
public static async quit(code: string, roleId: string, serverId: number, ce: number, isManage: boolean) {
|
||||||
const result: GuildType = await GuildModel.findOneAndUpdate({ code, serverId }, { $inc: { memberCnt: -1}, $pull: { members: roleId }, isMemberMax: false }, { new: true }).lean();
|
const result: GuildType = await GuildModel.findOneAndUpdate({ code, serverId }, { $inc: { memberCnt: -1, guildCe: -ce, managerCnt: isManage?-1:0}, $pull: { members: roleId }, isMemberMax: false }, { new: true }).lean({ getters: true });
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user