discord_bot/server/message.js
SileNce5k 7672d1941c
Some checks failed
Lint Codebase / eslint (push) Waiting to run
CI / CI (push) Has been cancelled
Change onmessage to use new custom commands set instead of json file
2024-12-19 18:23:47 +01:00

43 lines
No EOL
1.6 KiB
JavaScript

const fs = require('fs');
const customReplaceWithVariables = require('../util/custom_commands/customReplaceWithVariables');
module.exports = function(client, owners, message, globalPrefix){
let prefix = globalPrefix;
let serverPrefix = client.serverPrefixes.get(message.guild.id);
if (serverPrefix) {
prefix = serverPrefix;
}
if(message.content.startsWith(`<@${client.user.id}>`)){
let regex = new RegExp("(<@" + client.user.id + ">) *")
message.content = message.content.replace(regex, prefix);
}
if (!message.guild || message.author.bot || !message.content.startsWith(prefix)) return;
let args = message.content.slice(prefix.length).split(" ")
if(args[0] !== "fm" && args[0].startsWith("fm")){
let firstElement = args[0];
args.splice(0, 1, firstElement.substring(0, 2), firstElement.substring(2));
}
const commandName = args.shift().toLowerCase();
const command = client.commands.get(commandName);
if (!command){
const command = client.customCommands.get(commandName);
if(command){
let customMessage = customReplaceWithVariables(command.customMessage, message, prefix, globalPrefix);
message.channel.send(customMessage);
}
return;
}
if (command.admin && owners.indexOf(message.author.id.toString()) == -1) return;
try {
command.execute({ message: message, args: args, client: client, prefix: prefix, owners: owners, globalPrefix: globalPrefix})
console.log(`${message.author.username}(id: ${message.author.id}) executed ${command.name} with '${args}' as arguments`)
} catch (error) {
let divider = "------------------------"
console.log(divider)
console.error(error)
console.log(divider)
}
}