我有一个不一致的货币bot,每当我键入某个命令时,都会使玩家的钱在存储数据的.json文件中变为null。这是一些代码
{"468477297440063499549810913822244895":{"userData":null,"money":1000},"553378693968560128549810913822244895":{"money":1000},"468477297440063499":{"userData":953,"money":null},
每当我执行给目标用户钱并从用户中减去钱的命令时,目标用户的值就会变为“ null”
加/减金额的代码
let moneyAmount = parseInt(args[1]);
{code here}
userData[message.author.id] = {
userData: userData[sender.id + message.guild.id].money -= moneyAmount
};
userData[targetUser.id + message.guild.id] = {
userData: userData[targetUser.id].money += moneyAmount
};
如果有人可以告诉我如何做到这一点,那么它就不会变成空值,而实际上会增加很多钱。
答案 0 :(得分:1)
愚蠢的我,如果有人遇到此错误更改
userData[targetUser.id + message.guild.id] = {
userData: userData[targetUser.id + message.guild.id].money += moneyAmount
};
到
userData[targetUser.id] = {
userData: userData[targetUser.id].money += moneyAmount
};
我将message.guild.id放在错误的位置