From 755d2d66a5d8a02485f44b5b9eed247d28093e01 Mon Sep 17 00:00:00 2001 From: Cyper Date: Thu, 31 Jul 2025 16:50:02 -0400 Subject: [PATCH] fix: Patched DM bug exploit --- index.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/index.js b/index.js index ca1b188..0d11036 100644 --- a/index.js +++ b/index.js @@ -80,6 +80,10 @@ client.once(Events.ClientReady, async () => { }); client.on(Events.InteractionCreate, async interaction => { + if (!interaction.guild) { + return interaction.reply({ content: 'This feature can only be used in a server.' }); + } + // Slash command: /register if (interaction.isChatInputCommand() && interaction.commandName === 'register') { // Check if loggingChannel is set @@ -230,8 +234,8 @@ client.on(Events.InteractionCreate, async interaction => { // Check for available keys data = loadData(); - const keyCount = data.keys ? data.keys.length : 0; - if (keyCount === 0) { + const keyCheck = data.keys ? data.keys.length : 0; + if (keyCheck === 0) { if (data.loggingChannel) { if (channel) { @@ -243,6 +247,7 @@ client.on(Events.InteractionCreate, async interaction => { // Assign and remove key from vault const key = data.keys.shift(); + const keyCount = data.keys.length; user = { id: interaction.user.id, key }; data.users.push(user); saveData(data); @@ -251,9 +256,9 @@ client.on(Events.InteractionCreate, async interaction => { if (data.loggingChannel) { if (channel) { if (keyCount <= 10) { - channel.send(`⚠️ Only ${data.keys.length} keys left in the vault!`); + channel.send(`⚠️ Only ${keyCount} keys left in the vault!`); } else if (keyCount <= 50) { - channel.send(`⚠️ Only ${data.keys.length} keys left in the vault.`); + channel.send(`⚠️ Only ${keyCount} keys left in the vault.`); } } }