🐞 fix(军团): 添加玩家等级限制
This commit is contained in:
@@ -69,6 +69,7 @@ export class GuildHandler {
|
|||||||
if(ARMY.ARMY_CREAT_CONDITION > role.totalPay) {
|
if(ARMY.ARMY_CREAT_CONDITION > role.totalPay) {
|
||||||
return resResult(STATUS.GUILD_PAY_CONDITION);
|
return resResult(STATUS.GUILD_PAY_CONDITION);
|
||||||
}
|
}
|
||||||
|
if(role.lv < 16) return resResult(STATUS.LV_LIMIT);
|
||||||
|
|
||||||
await handleCost(roleId, sid, [getGoldObject(ARMY.ARMY_CREAT_COST)], ITEM_CHANGE_REASON.CREATE_GUILD);
|
await handleCost(roleId, sid, [getGoldObject(ARMY.ARMY_CREAT_COST)], ITEM_CHANGE_REASON.CREATE_GUILD);
|
||||||
|
|
||||||
@@ -314,6 +315,7 @@ export class GuildHandler {
|
|||||||
if (ceLimit > role.ce) {
|
if (ceLimit > role.ce) {
|
||||||
return resResult(STATUS.GUILD_NOT_REACH_CONDI);
|
return resResult(STATUS.GUILD_NOT_REACH_CONDI);
|
||||||
}
|
}
|
||||||
|
if(role.lv < 16) return resResult(STATUS.LV_LIMIT);
|
||||||
|
|
||||||
if(nowSeconds() - role.quitGuildTime < (await getGuildQuitCdTime(serverId)) * 60) {
|
if(nowSeconds() - role.quitGuildTime < (await getGuildQuitCdTime(serverId)) * 60) {
|
||||||
return resResult(STATUS.GUILD_QUIT_TIME);
|
return resResult(STATUS.GUILD_QUIT_TIME);
|
||||||
@@ -483,6 +485,10 @@ export class GuildHandler {
|
|||||||
|
|
||||||
let code: string;
|
let code: string;
|
||||||
if (isReceived) { // 同意申请,加入
|
if (isReceived) { // 同意申请,加入
|
||||||
|
|
||||||
|
const role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||||
|
if(role.lv < 16) return resResult(STATUS.LV_LIMIT);
|
||||||
|
|
||||||
const { guildCode } = invite;
|
const { guildCode } = invite;
|
||||||
const guild = await GuildModel.findByCode(guildCode, serverId);
|
const guild = await GuildModel.findByCode(guildCode, serverId);
|
||||||
if (!guild) {
|
if (!guild) {
|
||||||
|
|||||||
+1
-1
@@ -658,7 +658,7 @@ export default class Role extends BaseModel {
|
|||||||
* @param invitedMembers 当天已邀请过的人
|
* @param invitedMembers 当天已邀请过的人
|
||||||
*/
|
*/
|
||||||
public static async getInviteList(time: number, serverId: number) {
|
public static async getInviteList(time: number, serverId: number) {
|
||||||
const result: RoleType[] = await RoleModel.find({ loginTime: { $gt: time }, hasGuild: false, serverId, hasInit: true })
|
const result: RoleType[] = await RoleModel.find({ loginTime: { $gt: time }, hasGuild: false, serverId, hasInit: true, lv: {$gte: 16} })
|
||||||
.select({ roleId: 1, roleName: 1, ce: 1, head: 1, frame: 1, lv: 1, title: 1, job: 1, quitTime: 1, _id: 0 })
|
.select({ roleId: 1, roleName: 1, ce: 1, head: 1, frame: 1, lv: 1, title: 1, job: 1, quitTime: 1, _id: 0 })
|
||||||
.sort({ quitTime: -1, lv: -1, ce: -1 })
|
.sort({ quitTime: -1, lv: -1, ce: -1 })
|
||||||
.limit(100).lean({ getters: true, virtuals: true });
|
.limit(100).lean({ getters: true, virtuals: true });
|
||||||
|
|||||||
Reference in New Issue
Block a user