30 lines
969 B
JavaScript
30 lines
969 B
JavaScript
import cmds from '../util/commands.js'
|
|
import settings from '../settings.js'
|
|
import Command from '../util/Command.js'
|
|
export default function load (b) {
|
|
b.on('chat', (data) => {
|
|
const fullCommand = data.message
|
|
for (const prefix of settings.prefixes) {
|
|
if (fullCommand.startsWith(prefix)) {
|
|
const command = fullCommand.slice(prefix.length)
|
|
b.runCommand(data.username, data.nickname, data.uuid, command, data.type, data.subtype, prefix)
|
|
}
|
|
}
|
|
})
|
|
b.runCommand = function (user, nick, uuid, command, type, subtype, prefix) {
|
|
const context = new Command(uuid, user, nick, command, 'minecraft', type, subtype, prefix, b, 0)
|
|
|
|
b.emit('command', context)
|
|
|
|
if (cmds[context.cmdName.toLowerCase()]) {
|
|
try {
|
|
cmds[context.cmdName.toLowerCase()].execute(context)
|
|
} catch (e) {
|
|
console.log(e)
|
|
context.reply({
|
|
text: 'An error occured (check console)'
|
|
})
|
|
}
|
|
}
|
|
}
|
|
}
|