我最近做了一个不和谐的机器人,有几个功能,这个机器人有一个先进的命令处理程序,我想知道如何做一个命令,在那里,机器人说什么你告诉它。
示例:“.say(消息)”
bot以“(消息)”响应
这是我的命令处理程序
const Discord = require ('discord.js');
const { FILE } = require('dns');
const client = new Discord.Client();
const prefix = ".";
const fs = require('fs');
client.commands = new Discord.Collection();
const commandFiles = fs.readdirSync('./commands/').filter(file => file.endsWith('.js'));
for(const file of commandFiles){
const command = require(`./commands/${file}`);
client.commands.set(command.name, command);
}
client.once('ready', () => {
console.log('alpha 0.2.9, IM ONLINE!!!');
});
client.on('message', message =>{
if(!message.content.startsWith(prefix) || message.author.bot) return;
const args = message.content.slice(prefix.length).split(/ +/)
const command = args.shift().toLowerCase();
if(command === 'ping'){
client.commands.get('ping').execute(message, args);
} else if (command == 'pong'){
client.commands.get('pong').execute(message, args);
} else if (command == 'help'){
client.commands.get('help').execute(message, args, Discord);
} else if (command == 'kill'){
client.commands.get('kill').execute(message, args);
} else if (command == 'quote'){
client.commands.get('quote').execute(message, args);
} else if (command == 'kiss'){
client.commands.get('kiss').execute(message, args);
} else if (command == 'hug'){
client.commands.get('hug').execute(message, args);
} else if (command == 'pet'){
client.commands.get('pet').execute(message, args);
} else if (command == 'bruh'){
client.commands.get('bruh').execute(message, args);
}
})
client.login('no')
没有关于如何使用高级命令处理程序执行此操作的教程
现在的机器人是为了好玩,但我可能会使它成为适度。
使用字符串#split()
、数组#slice()
和数组#join()
的组合
else if (command === 'say') {
const sayMessage = message.content.split(' ').slice(1).join(' ');
message.channel.send(sayMessage);
}
我有一个Jenkins master运行在Windows Server2016上。我需要能够运行linux容器来运行一些自动化的e2e测试。由于我不想讨论的原因,我无法在这台机器上启用hyper-v。这使我无法在Jenkins master上安装lcow和docker 相反,我所做的是在virtualbox中设置一个Ubuntu18.04VM,并在那里安装docker。我已经将VM配置为Jenki
我制作了一个不和谐的机器人.js并尝试执行帮助命令以向用户显示所有可用的命令。 示例命令:头像.js 然后,我尝试发送一条包含完整命令列表的消息,比如: < li >命令1 < li >描述 < li >用法 < li >命令2 < li >描述 < li >用法 <李>... 帮助.js 我的代码有点工作,但它只发送第一个命令。 我对javascript很陌生,我找不到解决这个问题的方法。我试图
我正在开发一个带有命令处理程序的不和谐机器人,在那里我将所有命令导入到主文件中。我遇到的问题是,我正在努力在命令中实现前缀,以便所有命令都可以由文本触发。 我的命令处理程序的工作方式是,我在bot中有这段代码。js: 在那个文件的顶部我还有 然后我有一个名为index的文件。命令文件夹中的js,如下所示: 对于命令,它们看起来像这样: 在查看了机器人运行的控制台后,我注意到如果我先发送一条带有前缀
所以我为我的不和谐机器人做了一个静音命令,它会发现是否存在一个“静音”角色,如果不存在,机器人会创建一个“静音”角色,然后把这个角色给提到的成员,目前当我运行命令时,它只给我一个如果命令写入错误,它应该发送的嵌入。 我仍然无法找出问题所在以及原因,我非常想知道代码中的错误以及是否还有我不知道的错误。
所以我最近一直在开发一个机器人,我已经在这个机器人中实现了斜杠命令。我遇到过对类型5命令“响应”的需求,但是我似乎找不到关于斜杠命令的好文档。我似乎无法让它“停止思考”。任何帮助都将不胜感激! 编辑:我发现你需要编辑交互响应(https://discord.com/developers/docs/interactions/slash-commands#interaction-response),但
当用户使用一个新的不和谐斜杠命令时,我正试图从我们的不和谐机器人发送一个DM给他们。 代码在下面。Discord文档说`Interaction.Member应该是Discord GuildMember,但是,下面的代码给了我以下错误: TypeError:Interaction.Member.Send不是函数 我可以从data字段调用其他本地函数,但一直无法弄清楚如何将用户DM回来。我假设我做错了