У меня есть собственный бот с системой экономии. Есть рулетка "! Flip", пользователь может поставить свои монеты, они хранятся в (../coins.json). Когда я запускаю бота с компьютера (индекс узла. js), все работает нормально , бот сам меняет баланс пользователя через несколько секунд, но когда я загружаю его на GitHub и запускаю, бот сначала работает нормально, баланс сохраняется, но после перезапуска все пропадает, в монеты не записывается. json файл, как это исправить?
const Discord = require("discord.js");
let coins = require("../coins.json");
const fs = require('fs');
const prefix = "!";
module.exports.run = async (bot, message, args) => {
let prefix = "!";
if (!message.content.startsWith(prefix)) return;
let random = Math.floor(Math.random() * 100) + 1;
let bal = parseInt(coins[message.author.id].coins); // Convert user's balance to number type
if (bal < parseInt(args[0])) return message.channel.send(`${message.author}, Not enough coins!`)
if (random >= 70) {
let win = new Discord.MessageEmbed()
.setDescription(`${message.author}`)
.addField(`You Won! ?`, `Number: ${random}`)
.setColor("GREEN")
message.channel.send(win)
coins[message.author.id] = {
coins: parseInt(coins[message.author.id].coins) + parseInt(args[0])
}
fs.writeFile("../coins.json", JSON.stringify(coins), (err) => {
if (err) console.log(err)
})
};
if (random < 70) {
let lose = new Discord.MessageEmbed()
.setDescription(`${message.author}`)
.addField(`You Lose! ?`, `Number: ${random}`)
.setColor("#CB2E2E")
message.channel.send(lose)
coins[message.author.id] = {
coins: parseInt(coins[message.author.id].coins) - parseInt(args[0])
}
fs.writeFile("../coins.json", JSON.stringify(coins), (err) => {
if (err) console.log(err)
})
}
};
module.exports.help = {
name: "flip"
}