import { config } from "../config.js"; import { getJSONData } from "./utilities.js"; var currentStatus = []; function checkServersStatus(client) { const data = getJSONData("src/static/gameservers-list.json"); const newStatus = data.servers.map((server) => server.active); if (JSON.stringify(newStatus) === JSON.stringify(currentStatus)) { return; } updateMessage(client, data); currentStatus = newStatus; return true; } function updateMessage(client, data) { var newMessage = `Hello 😺 ! Voila les serveurs de jeux qu'on a chez nous :\n\n`; data.servers.forEach((server) => { newMessage = newMessage + "```ansi\n" + `${server.game} : ` + `${server.active ? "Online" : "Offline"}\n` + `${server.address}\n` + "```"; }); newMessage = newMessage + "\nAh d'ailleurs ! Si le serveur est sécurisé, le mot de passe c'est surement **0117**."; newMessage = newMessage + `\nPour mettre en ligne un serveur, faut voir avec <@${config.shinuwaUserId}> , c'est lui qui gère ca !\n`; const channel = client.channels.cache.get(config.textChannelId); channel.messages .fetch(config.gameServersMessageId) .then((message) => { message .edit(newMessage) .then( console.log( `[${new Date().toLocaleString()}] showGameServers: Game servers message updated` ) ) .catch(console.error); }) .catch(console.error); } function showGameServers(client) { const data = getJSONData("src/static/gameservers-list.json"); currentStatus = data.servers.map((server) => server.active); updateMessage(client, data); setInterval(checkServersStatus, 120000, client); } export { showGameServers };