From b58a112fc77dae8b7e221697c2343c55780e7e3b Mon Sep 17 00:00:00 2001 From: Dragon Fire Date: Wed, 20 Mar 2024 21:02:24 -0400 Subject: [PATCH] Remove 15 commands, patreon and bot list stuff --- .env.example | 11 - .gitignore | 1 - Xiao.js | 40 -- assets/sounds/explosion.mp3 | Bin 459469 -> 0 bytes assets/sounds/soundboard/alarm.mp3 | Bin 159141 -> 0 bytes assets/sounds/soundboard/car-crash.mp3 | Bin 13165 -> 0 bytes assets/sounds/soundboard/cat.mp3 | Bin 36342 -> 0 bytes assets/sounds/soundboard/cow.mp3 | Bin 65664 -> 0 bytes assets/sounds/soundboard/dun-dun-dun.mp3 | Bin 122880 -> 0 bytes assets/sounds/soundboard/hello-there.mp3 | Bin 80685 -> 0 bytes assets/sounds/soundboard/here-we-go-again.mp3 | Bin 184202 -> 0 bytes assets/sounds/soundboard/laugh-track.mp3 | Bin 29674 -> 0 bytes assets/sounds/soundboard/nipah.mp3 | Bin 20612 -> 0 bytes assets/sounds/soundboard/rooster.mp3 | Bin 36102 -> 0 bytes assets/sounds/soundboard/sad-violin.mp3 | Bin 68224 -> 0 bytes assets/sounds/soundboard/slow-clap.mp3 | Bin 56103 -> 0 bytes assets/sounds/soundboard/windows-error.mp3 | Bin 15846 -> 0 bytes assets/sounds/soundboard/windows-start-up.mp3 | Bin 118400 -> 0 bytes assets/txt/kino/00 A hare's encounter.txt | 37 -- assets/txt/kino/01 Country of Embrace.txt | 239 ------------ assets/txt/kino/02 Country of Regret.txt | 357 ------------------ assets/txt/kino/03 The Honest Truth.txt | 63 ---- assets/txt/txt_definition.txt | 4 - commands/analyze/face.js | 76 ---- commands/cleverbot/cleverbot-end.js | 3 +- commands/cleverbot/cleverbot.js | 1 - commands/code/docs.js | 29 -- commands/edit-face/anime-eyes.js | 94 ----- commands/edit-face/danny-devito.js | 88 ----- commands/edit-face/emoji-face.js | 102 ----- commands/edit-face/eyes.js | 92 ----- commands/other/kino.js | 143 ------- commands/util-public/cloc.js | 3 - commands/util-public/donate.js | 38 -- commands/util-public/info.js | 5 +- commands/util-public/invite.js | 26 -- commands/util-public/prefix.js | 18 - commands/util/force-patron.js | 29 -- commands/util/unforce-patron.js | 30 -- commands/util/webhook.js | 33 -- commands/voice/soundboard.js | 141 ------- commands/voice/vocodes.js | 71 ---- framework/Client.js | 9 - framework/Command.js | 1 - package.json | 1 - structures/BotList.js | 102 ----- structures/Client.js | 15 +- structures/Patreon.js | 66 ---- 48 files changed, 5 insertions(+), 1963 deletions(-) delete mode 100644 assets/sounds/explosion.mp3 delete mode 100644 assets/sounds/soundboard/alarm.mp3 delete mode 100644 assets/sounds/soundboard/car-crash.mp3 delete mode 100644 assets/sounds/soundboard/cat.mp3 delete mode 100644 assets/sounds/soundboard/cow.mp3 delete mode 100644 assets/sounds/soundboard/dun-dun-dun.mp3 delete mode 100644 assets/sounds/soundboard/hello-there.mp3 delete mode 100644 assets/sounds/soundboard/here-we-go-again.mp3 delete mode 100644 assets/sounds/soundboard/laugh-track.mp3 delete mode 100644 assets/sounds/soundboard/nipah.mp3 delete mode 100644 assets/sounds/soundboard/rooster.mp3 delete mode 100644 assets/sounds/soundboard/sad-violin.mp3 delete mode 100644 assets/sounds/soundboard/slow-clap.mp3 delete mode 100644 assets/sounds/soundboard/windows-error.mp3 delete mode 100644 assets/sounds/soundboard/windows-start-up.mp3 delete mode 100644 assets/txt/kino/00 A hare's encounter.txt delete mode 100644 assets/txt/kino/01 Country of Embrace.txt delete mode 100644 assets/txt/kino/02 Country of Regret.txt delete mode 100644 assets/txt/kino/03 The Honest Truth.txt delete mode 100644 assets/txt/txt_definition.txt delete mode 100644 commands/analyze/face.js delete mode 100644 commands/code/docs.js delete mode 100644 commands/edit-face/anime-eyes.js delete mode 100644 commands/edit-face/danny-devito.js delete mode 100644 commands/edit-face/emoji-face.js delete mode 100644 commands/edit-face/eyes.js delete mode 100644 commands/other/kino.js delete mode 100644 commands/util-public/donate.js delete mode 100644 commands/util-public/invite.js delete mode 100644 commands/util-public/prefix.js delete mode 100644 commands/util/force-patron.js delete mode 100644 commands/util/unforce-patron.js delete mode 100644 commands/util/webhook.js delete mode 100644 commands/voice/soundboard.js delete mode 100644 commands/voice/vocodes.js delete mode 100644 structures/BotList.js delete mode 100644 structures/Patreon.js diff --git a/.env.example b/.env.example index bb65d976..44a7aeaf 100644 --- a/.env.example +++ b/.env.example @@ -5,19 +5,10 @@ OWNERS= LOVER_USER_ID= XIAO_PREFIX= INVITE= -XIAO_WEBHOOK_ID= -XIAO_WEBHOOK_TOKEN= REPORT_CHANNEL_ID= JOIN_LEAVE_CHANNEL_ID= COMMAND_CHANNEL_ID= -# Bot list tokens -TOP_GG_TOKEN= -BOTS_GG_TOKEN= -DISCORDBOTLIST_TOKEN= -CARBON_TOKEN= -BLIST_TOKEN= - # Redis info REDIS_HOST= REDIS_PASS= @@ -62,8 +53,6 @@ GOV_KEY= IMGUR_KEY= OPENWEATHERMAP_KEY= OSU_KEY= -PATREON_ACCESS_TOKEN= -PATREON_CAMPAIGN_ID= PERSONAL_GOOGLE_CALENDAR_ID= SPOTIFY_KEY= SPOTIFY_SECRET= diff --git a/.gitignore b/.gitignore index b61d43a7..69d6b2b5 100644 --- a/.gitignore +++ b/.gitignore @@ -16,7 +16,6 @@ config.json command-leaderboard.json command-last-run.json blacklist.json -patreon.json # Tensorflow Models tf_models/ diff --git a/Xiao.js b/Xiao.js index edfce33e..80cc21c9 100644 --- a/Xiao.js +++ b/Xiao.js @@ -53,7 +53,6 @@ client.registry ['edit-image', 'Image Manipulation'], ['edit-image-text', 'Image Text Manipulation'], ['edit-avatar', 'Avatar Manipulation'], - ['edit-face', 'Face Manipulation'], ['edit-meme', 'Meme Generators'], ['edit-text', 'Text Manipulation'], ['edit-number', 'Number Manipulation'], @@ -128,18 +127,6 @@ client.on('ready', async () => { } }, 1.8e+6); - // Import forced patrons - try { - const results = client.patreon.importForced(); - if (results) { - client.logger.info('[PATREON] patreon.json successfully loaded.'); - } else { - client.logger.error('[PATREON] patreon.json is not formatted correctly.'); - } - } catch (err) { - client.logger.error(`[PATREON] Could not parse patreon.json:\n${err.stack}`); - } - // Import blacklist try { const results = client.importBlacklist(); @@ -222,33 +209,6 @@ client.on('ready', async () => { client.logger.error(`[NSFW MODEL] Failed to load NSFW model\n${err.stack}`); } - // Import Patrons - try { - await client.patreon.fetchPatrons(); - setInterval(() => { - client.patreon.fetchPatrons() - .then(() => client.logger.info('[PATREON] Updated patron list.')) - .catch(err => client.logger.error(`[PATREON] Failed to update patron list:\n${err.stack}`)); - }, 3.6e+6); - client.logger.info('[PATREON] Fetched patrons.'); - } catch (err) { - client.logger.error(`[PATREON] Failed to fetch patrons:\n${err.stack}`); - } - - // Post bot list stats - await client.botList.postTopGGStats(); - await client.botList.postBotsGGStats(); - await client.botList.postDiscordBotListStats(); - await client.botList.postCarbonStats(); - await client.botList.postBlistStats(); - setInterval(() => { - client.botList.postTopGGStats(); - client.botList.postBotsGGStats(); - client.botList.postDiscordBotListStats(); - client.botList.postCarbonStats(); - client.botList.postBlistStats(); - }, 1.8e+6); - // Fetch all members for (const [id, guild] of client.guilds.cache) { // eslint-disable-line no-unused-vars await guild.members.fetch(); diff --git a/assets/sounds/explosion.mp3 b/assets/sounds/explosion.mp3 deleted file mode 100644 index ceb5fa230dc3ad585e04411215ffda037e4a793f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 459469 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