let { getModule, messages: { receiveMessage } } = require("powercord/webpack")
let { createBotMessage } = getModule(["createBotMessage"], false)
function CreateCommand(name, description, options, callback, applicationId="-1") {
getModule(["getBuiltInCommands"], false).BUILT_IN_COMMANDS.push({
applicationId: applicationId,
description: description,
displayDescription: description,
displayName: name,
execute: (args, context) => {
let res = callback(args, context)
if (res) {
let msg = createBotMessage({channelId: context.channel.id, content: res.value})
receiveMessage(context.channel.id, msg)
}
},
id: `-${getModule(["getBuiltInCommands"], false).BUILT_IN_COMMANDS.length + 1}`,
inputType: 0,
name: name,
options: options,
type: 1,
})
}
function RemoveCommand(name) {
let cmds = getModule(["getBuiltInCommands"], false).BUILT_IN_COMMANDS
cmds.pop(cmds.indexOf(cmds.find(i => i.name.toLowerCase() == name.toLowerCase())))
}
// syntax: (name, description, options[], callback)
CreateCommand("test", "test command", [{name: "test", displayName: "test", type: 3, required: true, description: "test", displayDescription: "test"}], (args, context) => {return {value: args[0].value}})
// syntax: (name)
RemoveCommand("test")
I've applied the suggested changes, thanks!