From b7b0e430631391e6c9f2964f28ee74677b1108a9 Mon Sep 17 00:00:00 2001 From: Zerotask Date: Sat, 24 Apr 2021 22:54:00 +0200 Subject: [PATCH] feat(debug): added debug command & enhanced server command --- config.json | 5 ++++- package.json | 4 ++-- src/commands/debug.js | 29 +++++++++++++++++++++++++++++ src/commands/server.js | 5 ++++- src/functions.js | 2 ++ 5 files changed, 41 insertions(+), 4 deletions(-) create mode 100644 src/commands/debug.js diff --git a/config.json b/config.json index 1517ee8..2c84d8b 100644 --- a/config.json +++ b/config.json @@ -8,5 +8,8 @@ }, "roles": { "mod": "803005364366213171" - } + }, + "developers": [ + "209292814599716865" + ] } \ No newline at end of file diff --git a/package.json b/package.json index b486a08..2093eec 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "discord-bot-goldi", - "version": "1.1.1", + "version": "1.1.2", "description": "", "main": "index.js", "scripts": { @@ -26,4 +26,4 @@ "nodemon": "^2.0.7", "openode": "^2.1.0" } -} +} \ No newline at end of file diff --git a/src/commands/debug.js b/src/commands/debug.js new file mode 100644 index 0000000..ef1d0d0 --- /dev/null +++ b/src/commands/debug.js @@ -0,0 +1,29 @@ +const { isDeveloper } = require('../functions'); + +module.exports = { + name: 'debug', + aliases: ['dev'], + description: 'Debug-Informationen über den Server', + execute(message, args, client) { + if (isDeveloper(message.author.id)) { + let response = []; + response.push('**MESSAGE OBJECT:**'); + response.push(JSON.stringify(message)); + response.push(''); + message.channel.send(response); + + response = []; + response.push('**AUTHOR OBJECT:**'); + response.push(JSON.stringify(message.author)); + response.push(''); + message.channel.send(response); + + response = []; + response.push('**CLIENT OBJECT:**'); + response.push(JSON.stringify(client)); + message.channel.send(response); + } else { + message.reply('Du musst ein Entwickler sein, um diesen Befehl auszuführen.'); + } + }, +}; diff --git a/src/commands/server.js b/src/commands/server.js index 38ec9b7..4d515b2 100644 --- a/src/commands/server.js +++ b/src/commands/server.js @@ -9,11 +9,14 @@ module.exports = { const totalOnline = fetchedMembers.filter((member) => member.presence.status === 'online'); const response = []; - response.push(`Name: ${guild.name}`); + response.push(`Name: ${guild.name} (ID: ${guild.id})`); response.push(`Anzahl User: ${guild.memberCount} | davon gerade online: ${totalOnline.size}`); response.push(`Anzahl Channels: ${guild.channels.cache.size}`); response.push(`Anzahl Rollen: ${guild.roles.cache.size}`); response.push(`Sprache: ${guild.preferredLocale}`); + response.push(`Region: ${guild.region}`); + response.push(`Features: ${guild.features.join(', ')}`); + response.push(`Premium Tier: ${guild.premiumTier} (${guild.premiumSubscriptionCount})`); message.channel.send(response); }); }, diff --git a/src/functions.js b/src/functions.js index 96bbe5c..8a9957c 100644 --- a/src/functions.js +++ b/src/functions.js @@ -34,6 +34,7 @@ const shuffleArray = (array) => { }; const isMod = (member) => member.roles.cache.some((role) => role.name === 'Mod' || role.name === 'Admin' || role.name === 'Goldman94'); +const isDeveloper = (userId) => config.developers.includes(userId); const reactToEmojis = (message) => { const lowerCaseContent = message.content.toLowerCase(); @@ -89,6 +90,7 @@ module.exports = { getUserFromMention, shuffleArray, isMod, + isDeveloper, reactToEmojis, reactToCommands, reactToMessages,