This repository has been archived on 2024-03-06. You can view files and clone it, but cannot push or open issues or pull requests.
discord.js-rr-bot/Src/Structures/CommandOptions/loadCommandOptions.js
2022-06-18 23:28:38 -04:00

35 lines
2.1 KiB
JavaScript

const Discord = require("discord.js")
const { path, config } = require("../../../bot")
module.exports = async function (client, message, command, isInteraction, interactionType) {
if (!command) return;
const container = {
RootPath: path,
Config: config,
Discord: Discord
}
if (await require("./Cooldown")(client, message, command, isInteraction, interactionType, Discord)) return;
else if (await require("./OwnerOnly")(message, command, Discord)) return;
else if (await require("./UserPermissions")(message, command, Discord)) return;
else if (await require("./ClientPermissions")(message, command, Discord)) return;
else if (await require("./AnyUserPermissions")(message, command, Discord)) return;
else if (await require("./AnyClientPermissions")(message, command, Discord)) return;
else if (await require("./RequiredAnyRole")(message, command, Discord)) return;
else if (await require("./RequiredRoles")(message, command, Discord)) return;
else if (await require("./OnlyChannels")(message, command, Discord)) return;
else if (await require("./OnlyGuilds")(client, message, command, Discord)) return;
else if (await require("./OnlyUsers")(client, message, command, Discord)) return;
else {
if (isInteraction) command.run(client, message, container)
else {
container.Config.prefix.forEach(prefix => {
if (!message.content.toLowerCase().startsWith(prefix)) return;
const cmdName = message.content.trim().toLowerCase().slice(prefix.length).trim().split(" ")[0]
const command = client.commands.messageCommands.get(cmdName) ?? client.commands.messageCommands.get(client.commands.messageCommands.aliases.get(cmdName))
if (!command) return;
let args = message.content.slice(prefix.length).trim()
if (args.toLowerCase().startsWith(cmdName)) args = args.slice(cmdName.length).trim().split(" ")
command.run(client, message, args, container)
})
}
}
}