diff --git a/src/onebot11/action/go-cqhttp/SetGroupSpecialTitle.ts b/src/onebot11/action/go-cqhttp/SetGroupSpecialTitle.ts index 8aa48e7..0344939 100644 --- a/src/onebot11/action/go-cqhttp/SetGroupSpecialTitle.ts +++ b/src/onebot11/action/go-cqhttp/SetGroupSpecialTitle.ts @@ -1,6 +1,8 @@ import { BaseAction, Schema } from '../BaseAction' import { ActionName } from '../types' import { getBuildVersion } from '@/common/utils/misc' +import { selfInfo } from '@/common/globalVars' +import { GroupMemberRole } from '@/ntqqapi/types' interface Payload { group_id: number | string @@ -19,6 +21,10 @@ export class SetGroupSpecialTitle extends BaseAction { async _handle(payload: Payload) { const uid = await this.ctx.ntUserApi.getUidByUin(payload.user_id.toString(), payload.group_id.toString()) if (!uid) throw new Error(`用户${payload.user_id}的uid获取失败`) + const self = await this.ctx.ntGroupApi.getGroupMember(payload.group_id.toString(), selfInfo.uid, false) + if (self.role !== GroupMemberRole.Owner){ + throw new Error(`不是群${payload.group_id}的群主,无法设置群头衔`) + } await this.ctx.app.ntqqPacketApi.sendSetSpecialTittlePacket(payload.group_id.toString(), uid, payload.special_title || "") return null }