diff --git a/events/messageCreate.js b/events/messageCreate.js index 13183e6..022139d 100644 --- a/events/messageCreate.js +++ b/events/messageCreate.js @@ -4,6 +4,7 @@ const Collector = require(path.join(__dirname, "../functions/messageCollector")) const EditCollector = require(path.join(__dirname, "../functions/messageEdit")); const CommandDB = require(path.join(__dirname, "../models/commands")); const { isJson } = require(path.join(__dirname, "../functions/randomStr")); +const botConfig = require(path.join(__dirname, "../botConfig.json")); module.exports = async (client, message) => { // Early return checks @@ -79,14 +80,14 @@ module.exports = async (client, message) => { } // Check if user has required roles - const hasRequiredRole = commandfile.config.roles && message.member.roles && client.botConfig.roles && client.botConfig.roles.length > 0 ? + const hasRequiredRole = commandfile.config.roles && message.member.roles && botConfig.roles[0] ? message.member.roles.some(role => { - const whitelistedRoles = Object.values(client.botConfig.roles[0] || {}); - return whitelistedRoles.includes(role); + const requiredRoleIds = commandfile.config.roles.map(roleName => botConfig.roles[0][roleName.toLowerCase()]); + return requiredRoleIds.includes(role); }) : false; // Command availability check (skip for DMs) - if (!commandfile.config.available && !hasRequiredRole && !client.botConfig.owners.includes(message.authorId)) { + if (!commandfile.config.available && !hasRequiredRole && !botConfig.owners.includes(message.authorId)) { return message.reply({ embeds: [new Embed() .setColor("#FF0000")