aboutsummaryrefslogtreecommitdiff
path: root/src/inhibitors/blacklist/userGlobalBlacklist.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/inhibitors/blacklist/userGlobalBlacklist.ts')
-rw-r--r--src/inhibitors/blacklist/userGlobalBlacklist.ts25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/inhibitors/blacklist/userGlobalBlacklist.ts b/src/inhibitors/blacklist/userGlobalBlacklist.ts
new file mode 100644
index 0000000..061bae9
--- /dev/null
+++ b/src/inhibitors/blacklist/userGlobalBlacklist.ts
@@ -0,0 +1,25 @@
+import { BushInhibitor, BushMessage, BushSlashMessage } from '@lib';
+
+export default class UserGlobalBlacklistInhibitor extends BushInhibitor {
+ public constructor() {
+ super('userGlobalBlacklist', {
+ reason: 'userGlobalBlacklist',
+ category: 'blacklist',
+ type: 'all'
+ });
+ }
+
+ public exec(message: BushMessage | BushSlashMessage): boolean {
+ if (!message.author) return false;
+ if (
+ this.client.isOwner(message.author) ||
+ this.client.isSuperUser(message.author) ||
+ this.client.user.id === message.author.id
+ )
+ return false;
+ if (this.client.cache.global.blacklistedUsers.includes(message.author.id)) {
+ this.client.console.debug(`userGlobalBlacklist blocked message.`);
+ return true;
+ }
+ }
+}