因此,我正在使用硬币系统,但遇到了一个小问题。 通常,每次输入内容时,我都会得到1个硬币,但是当我使用!coins命令检查我拥有多少个硬币时,我不希望机器人给我硬币。 我希望它在使用此命令时忽略给我硬币。 那我应该添加什么?
这是我在index.js中的代码:
<div class="wrapper">
<select name="" id="">
<option value="">1</option>
<option value="">2</option>
<option value="">3</option>
</select>
<select name="" id="">
<option value="">1</option>
<option value="">2</option>
<option value="">3</option>
</select>
<button>Validar</button>
</div>
.wrapper {
display: flex;
}
coins.js文件:
if (message.channel.id === "528734148718886922"){
if(!coins[message.author.id]){
coins[message.author.id] = {
coins: 0
};
}
let coinAmt = Math.floor(Math.random() * 1) + 1;
let baseAmt = Math.floor(Math.random() * 1) + 1;
console.log(`${coinAmt}; ${baseAmt}`);
if(coinAmt === baseAmt){
coins[message.author.id] = {
coins: coins[message.author.id].coins + coinAmt
};
fs.writeFile("./coins.json", JSON.stringify(coins), (err) => {
if (err) console.log(err)
});
let coinEmbed = new Discord.RichEmbed()
.setAuthor(message.author.username)
.setColor("#6666ff")
.addField("", `You earned ${coinAmt} Scrap`)
message.channel.send(coinEmbed).then(message => {message.delete(100000)});
}
}
答案 0 :(得分:-1)
我想最简单的方法是将if (message.channel.id === "528734148718886922"){
替换为:
if (message.channel.id === "528734148718886922" && message.content !== "!coin"){`
另一种方法(稍微复杂一点,但是允许您做更多的事情)是仅在未找到命令的情况下才提供硬币。
根据您构建机器人的方式的不同,您可能拥有if(cmd) {
或if(commandfile)
或其他类似方式,然后可以将硬币代码放入else
部分中,以便硬币仅在没有运行命令的情况下给出。
答案 1 :(得分:-1)
您可以运行硬币并给出代码LAST,然后再运行所有命令。
并且build-native-image.sh
运行时。您可以跳过硬币代码。
!coins