aboutsummaryrefslogtreecommitdiff
path: root/src/listeners
diff options
context:
space:
mode:
authorTymanWasTaken <32660892+tymanwastaken@users.noreply.github.com>2021-04-27 21:06:22 -0600
committerTymanWasTaken <32660892+tymanwastaken@users.noreply.github.com>2021-04-27 21:06:22 -0600
commit763fb7d98c3accbb21adf035a7cf0a83cb9533c9 (patch)
tree9d333fbca2a2a8e19d79904a4e29226174925cfc /src/listeners
downloadtanzanite-763fb7d98c3accbb21adf035a7cf0a83cb9533c9.tar.gz
tanzanite-763fb7d98c3accbb21adf035a7cf0a83cb9533c9.tar.bz2
tanzanite-763fb7d98c3accbb21adf035a7cf0a83cb9533c9.zip
legit just copy utilibot v2 code
Diffstat (limited to 'src/listeners')
-rw-r--r--src/listeners/client/ReadyListener.ts16
-rw-r--r--src/listeners/commands/CommandBlockedListener.ts34
-rw-r--r--src/listeners/guild/Unban.ts25
3 files changed, 75 insertions, 0 deletions
diff --git a/src/listeners/client/ReadyListener.ts b/src/listeners/client/ReadyListener.ts
new file mode 100644
index 0000000..ae510f6
--- /dev/null
+++ b/src/listeners/client/ReadyListener.ts
@@ -0,0 +1,16 @@
+import { BotListener } from '../../lib/extensions/BotListener';
+
+export default class CommandBlockedListener extends BotListener {
+ public constructor() {
+ super('ready', {
+ emitter: 'client',
+ event: 'ready'
+ });
+ }
+
+ public async exec(): Promise<void> {
+ await this.client.util.info(
+ `Sucessfully logged in as ${this.client.user.tag}`
+ );
+ }
+}
diff --git a/src/listeners/commands/CommandBlockedListener.ts b/src/listeners/commands/CommandBlockedListener.ts
new file mode 100644
index 0000000..82e53a9
--- /dev/null
+++ b/src/listeners/commands/CommandBlockedListener.ts
@@ -0,0 +1,34 @@
+import { BotListener } from '../../lib/extensions/BotListener';
+import { Command } from 'discord-akairo';
+import { Message } from 'discord.js';
+
+export default class CommandBlockedListener extends BotListener {
+ public constructor() {
+ super('commandBlocked', {
+ emitter: 'commandHandler',
+ event: 'commandBlocked'
+ });
+ }
+
+ public async exec(
+ message: Message,
+ command: Command,
+ reason: string
+ ): Promise<void> {
+ switch (reason) {
+ case 'owner': {
+ await message.util.send(
+ `You must be an owner to run command \`${message.util.parsed.command}\``
+ );
+ break;
+ }
+ case 'blacklist': {
+ // pass
+ break;
+ }
+ default: {
+ await message.util.send(`Command blocked with reason \`${reason}\``);
+ }
+ }
+ }
+}
diff --git a/src/listeners/guild/Unban.ts b/src/listeners/guild/Unban.ts
new file mode 100644
index 0000000..7f85132
--- /dev/null
+++ b/src/listeners/guild/Unban.ts
@@ -0,0 +1,25 @@
+import { User } from 'discord.js';
+import { BotGuild } from '../../lib/extensions/BotGuild';
+import { BotListener } from '../../lib/extensions/BotListener';
+import { Ban } from '../../lib/types/Models';
+
+export default class CommandBlockedListener extends BotListener {
+ public constructor() {
+ super('guildBanRemove', {
+ emitter: 'client',
+ event: 'guildBanRemove'
+ });
+ }
+
+ public async exec(guild: BotGuild, user: User): Promise<void> {
+ const bans = await Ban.findAll({
+ where: {
+ user: user.id,
+ guild: guild.id
+ }
+ });
+ for (const dbBan of bans) {
+ await dbBan.destroy();
+ }
+ }
+}