summaryrefslogtreecommitdiff
path: root/src/commands/optional/copypasta.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/commands/optional/copypasta.rs')
-rw-r--r--src/commands/optional/copypasta.rs73
1 files changed, 0 insertions, 73 deletions
diff --git a/src/commands/optional/copypasta.rs b/src/commands/optional/copypasta.rs
deleted file mode 100644
index 06440b1..0000000
--- a/src/commands/optional/copypasta.rs
+++ /dev/null
@@ -1,73 +0,0 @@
-use crate::{Context, Error};
-
-use include_dir::{include_dir, Dir};
-use log::debug;
-
-const COPYPASTAS: Dir = include_dir!("src/copypastas");
-
-#[derive(Debug, poise::ChoiceParameter)]
-pub enum Copypasta {
- Astral,
- Dvd,
- Egrill,
- HappyMeal,
- Sus,
- TickTock,
- Twitter,
-}
-
-impl ToString for Copypasta {
- fn to_string(&self) -> String {
- let str = match self {
- Self::Astral => "astral",
- Self::Dvd => "dvd",
- Self::Egrill => "egrill",
- Self::HappyMeal => "happymeal",
- Self::Sus => "sus",
- Self::TickTock => "ticktock",
- Self::Twitter => "twitter",
- };
- str.to_string()
- }
-}
-
-impl Copypasta {
- fn contents(&self) -> Option<&str> {
- let file_name = format!("{}.txt", self.to_string());
- COPYPASTAS
- .get_file(file_name)
- .and_then(|file| file.contents_utf8())
- }
-}
-
-/// ask teawie to send funni copypasta
-#[poise::command(slash_command)]
-pub async fn copypasta(
- ctx: Context<'_>,
- #[description = "the copypasta you want to send"] copypasta: Copypasta,
-) -> Result<(), Error> {
- if let Some(guild_id) = ctx.guild_id() {
- if let Some(storage) = &ctx.data().storage {
- let settings = storage.get_guild_settings(&guild_id).await?;
-
- if !settings.optional_commands_enabled {
- debug!("Not running command in {guild_id} since it's disabled");
- ctx.reply("I'm not allowed to do that here").await?;
-
- return Ok(());
- }
- } else {
- debug!("Ignoring restrictions on command; no storage backend is attached!");
- }
- } else {
- debug!("Ignoring restrictions on command; we're not in a guild");
- }
-
- if let Some(contents) = copypasta.contents() {
- ctx.say(contents).await?;
- } else {
- ctx.reply("I couldn't find that copypasta :(").await?;
- }
-
- Ok(())
-}