我想做一个设置,用户首先输入一个命令(我已经这样做了),在我的例子中是 .create
。在该命令之后,用户应该用 .create (name)
给一些东西命名。有人知道我该怎么做吗?这是我的代码,我必须执行该命令:
client.on("message", (message) => {
if (message.content == ".create") {
const create = new Discord.MessageEmbed()
.setColor('#000033')
.setTitle('```Create Achievement```')
.setDescription("Step 1 of 5")
.addFields(
{ name: 'Choose a name', value: 'In this step you will have to choose a name for your new achievement' },
{ name: '.create (name)', value: 'Type `.create (name)` in the chat to give the achievement a name.' },
)
.setTimestamp()
.setFooter(message.author.username);
message.channel.send(create)
console.log(message.member.user.tag +' executed command .CREATE')
}
})
答案 0 :(得分:0)
让人们想知道如何正确处理这些事情有点邪恶,命令变得简单而没有额外的建议。
function Check(receivedMessage) {
var splitCommand = receivedMessage.substr(1).split(/\s+/);
// Command Check
try {
if (typeof PublicCommands[splitCommand[0]] == "function") {
PublicCommands[splitCommand[0]](splitCommand.slice(1), receivedMessage);
}
} catch (e) {
console.log("ERROR", e);
}
}
let PublicCommands = {
"something": (args, receivedMessage) => {
console.log(args);
if (args.includes("like")) {
console.log("we may have a taker");
}
}
};
Check(".something like this?");
// This example is very basic but very powerful. Enjoy.