thaldrin/src/discord/commands/nsfw/e621.ts

32 lines
1.3 KiB
TypeScript
Raw Normal View History

2021-09-11 11:36:51 +00:00
import yiff from "../../../utils/yiff"
import { Command } from '@thaldrin/eu';
import { Context } from "../../../utils/types";
2021-04-22 01:33:59 +00:00
import { MessageEmbed } from "discord.js"
2021-09-11 11:36:51 +00:00
import language from "../../../utils/language";
2021-04-22 01:33:59 +00:00
export = class E621 extends Command {
constructor() {
super({
2021-05-07 23:57:48 +00:00
name: "e621",
description: "Get an Image from E621",
aliases: ['e6', 'esix'],
2021-05-10 15:22:52 +00:00
cooldown: 2,
nsfw: true
2021-04-22 01:33:59 +00:00
})
}
async command(ctx: Context) {
2021-05-07 23:57:48 +00:00
let embed = new MessageEmbed().setColor(ctx.config.variables.color).setFooter(`${ctx.config.variables.name}`, ctx.config.variables.avatar)
2021-04-22 01:33:59 +00:00
// @ts-ignore
2021-07-09 17:52:25 +00:00
if (ctx.args.length < 1) return ctx.channel.send(embed.setTitle(language.get(ctx.settings.locale).missing.tags.name).setDescription(language.get(ctx.settings.locale).missing.tags.desc))
2021-05-07 23:57:48 +00:00
let request = await yiff.e621(ctx.args.join(" "))
2021-04-22 01:33:59 +00:00
if (ctx.settings.embeds) {
2021-05-07 23:57:48 +00:00
embed.setAuthor('e621.net', 'https://thaldrin.media/e621.png', `https://e621.net/post/${request[0].id}`)
2021-04-22 01:33:59 +00:00
.setImage(request[0].file.url)
2021-05-07 23:57:48 +00:00
.setDescription(`[Link](https://e621.net/post/${request[0].id})`)
2021-04-22 01:33:59 +00:00
ctx.channel.send(embed)
} else {
2021-05-07 23:57:48 +00:00
ctx.channel.send(`<https://e621.net/post/${request[0].id}>\n\n${request[0].file.url}`)
2021-04-22 01:33:59 +00:00
}
}
}