diff options
Diffstat (limited to 'src/commands/moderation/warn.ts')
-rw-r--r-- | src/commands/moderation/warn.ts | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/commands/moderation/warn.ts b/src/commands/moderation/warn.ts index 3d353ca..d5bf009 100644 --- a/src/commands/moderation/warn.ts +++ b/src/commands/moderation/warn.ts @@ -28,6 +28,11 @@ export default class WarnCommand extends BushCommand { retry: '{error} Choose a valid warn reason.', optional: true } + }, + { + id: 'force', + flag: '--force', + match: 'flag' } ], slash: true, @@ -52,10 +57,11 @@ export default class WarnCommand extends BushCommand { } public async exec( message: BushMessage | BushSlashMessage, - { user, reason }: { user: BushUser; reason: string } + { user, reason, force }: { user: BushUser; reason: string; force: boolean } ): Promise<unknown> { const member = message.guild.members.cache.get(user.id) as BushGuildMember; - const canModerateResponse = this.client.util.moderationPermissionCheck(message.member, member, 'warn'); + const useForce = force && message.author.isOwner(); + const canModerateResponse = this.client.util.moderationPermissionCheck(message.member, member, 'warn', true, useForce); const victimBoldTag = `**${member.user.tag}**`; if (canModerateResponse !== true) { |