所以我有这样的代码:
const Discord = require('discord.js');
const fs = require('fs');
const client = new Discord.Client();
let db = JSON.parse(fs.readFileSync("./database.json", "utf8"));
module.exports.run = async (bot, message, args) => {
const dawaeEmbed = new Discord.MessageEmbed()
.setColor(0xD4AF37)
.setTitle(message.author.username + " fait tourner la roue de la fortune \:\o")
.setImage('https://images-ext-2.discordapp.net/external/HsKDQ0E_aFmmt_y1C0MGjAtkkHEtJqvSgVVC6BEpcBI/https/cdn.zerotwo.dev/INTERNAL/WOF.gif')
.setFooter('J\'adore les commandes de Ikari :D');
var result = Math.floor(Math.random() * (983 - 42 + 1)) + 42;
const dawaeEmbed2 = new Discord.MessageEmbed()
.setColor(0xD4AF37)
.setTitle(message.author.username + ` a gagné ${result} 〷 grâce à la roue ! ✨`)
.setImage('https://images-ext-1.discordapp.net/external/0MadJ_5x3-sYSU-8p88EDiks0ieAendhBg5sMSh_RCI/https/cdn.zerotwo.dev/INTERNAL/MONEY.gif')
.setFooter('J\'adore les commandes de Ikari :D');
spining = await message.channel.send(dawaeEmbed)
setTimeout(() => {
// Edit msg 20 seconds later
spining.edit(dawaeEmbed2);
}, 5000);
if (!db[message.author.id]) db[message.author.id] = {
money: 0
};
let userInfo = db[message.author.id];
userInfo.money = userInfo.money + result
fs.writeFile("./database.json", JSON.stringify(db), (x) => {
if (x) console.error(x)
});
message.delete();
}
但有一个问题...滚轮旋转完成后,数据库未刷新。因此,如果我执行命令检查我的钱,我仍然有我启动机器人之前的钱。我想知道怎么把钱存起来!请尽快帮我。
发布于 2020-05-02 14:42:21
我替换了这个:
let userInfo = db[message.author.id];
userInfo.money = userInfo.money + result
通过以下方式:
db[message.author.id].money = db[message.author.id].money + result
现在它起作用了。
https://stackoverflow.com/questions/61549854
复制相似问题