✨ feat(gvg): 组建期聊天和邮件
This commit is contained in:
@@ -19,6 +19,8 @@ export async function createNewGVGConfig() {
|
||||
setGVGConfigToRemote(config);
|
||||
// TODO 每周自动解散一些联军
|
||||
await pinus.app.rpc.guild.guildRemote.setGVGServerGroup.broadcast();
|
||||
await pinus.app.rpc.chat.chatRemote.setGVGServerGroup.broadcast();
|
||||
await pinus.app.rpc.connector.connectorRemote.setGVGServerGroup.broadcast();
|
||||
return config;
|
||||
}
|
||||
|
||||
@@ -157,12 +159,16 @@ export async function getServersOfSameGroup(type: GVG_SERVER_TYPE, id: number) {
|
||||
if(type == GVG_SERVER_TYPE.SINGLE) return [id];
|
||||
|
||||
let groupId = await getGroupIdOfServer(id);
|
||||
return await getServersByGroupId(groupId);
|
||||
}
|
||||
|
||||
export async function getServersByGroupId(groupId: number) {
|
||||
let arr: { serverId: number; groupId: number }[] = pinus.app.get('gvgServerGroup')||[];
|
||||
let serverCreateTimes = await getAllServerCreateTime();
|
||||
|
||||
return arr.filter(obj => {
|
||||
let openTime = parseInt(serverCreateTimes[obj.serverId]);
|
||||
return obj.groupId == groupId && getServerTypeByTime(openTime) == type;
|
||||
return obj.groupId == groupId && getServerTypeByTime(openTime) == GVG_SERVER_TYPE.MULTI;
|
||||
}).map(obj => obj.serverId);
|
||||
}
|
||||
|
||||
|
||||
@@ -190,11 +190,13 @@ function getAuthFromManageType(type: LEAGUE_MANAGE_TYPE) {
|
||||
case LEAGUE_MANAGE_TYPE.KICK:
|
||||
case LEAGUE_MANAGE_TYPE.DISSMISS:
|
||||
case LEAGUE_MANAGE_TYPE.ABDICATE:
|
||||
case LEAGUE_MANAGE_TYPE.RERUIT:
|
||||
return [LEAGUE_AUTH.LEADER];
|
||||
case LEAGUE_MANAGE_TYPE.QUIT:
|
||||
case LEAGUE_MANAGE_TYPE.BE_ABDICATED:
|
||||
return [LEAGUE_AUTH.SUB_LEADER];
|
||||
case LEAGUE_MANAGE_TYPE.SET_INFO:
|
||||
case LEAGUE_MANAGE_TYPE.SEND_MAIL:
|
||||
return [LEAGUE_AUTH.LEADER, LEAGUE_AUTH.SUB_LEADER];
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user