diff options
author | TymanWasTaken <32660892+tymanwastaken@users.noreply.github.com> | 2021-04-27 21:06:22 -0600 |
---|---|---|
committer | TymanWasTaken <32660892+tymanwastaken@users.noreply.github.com> | 2021-04-27 21:06:22 -0600 |
commit | 763fb7d98c3accbb21adf035a7cf0a83cb9533c9 (patch) | |
tree | 9d333fbca2a2a8e19d79904a4e29226174925cfc /src/listeners | |
download | tanzanite-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.ts | 16 | ||||
-rw-r--r-- | src/listeners/commands/CommandBlockedListener.ts | 34 | ||||
-rw-r--r-- | src/listeners/guild/Unban.ts | 25 |
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(); + } + } +} |