Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const Discord = require("discord.js");
- var fs=require("fs");
- const https = require('https');
- // this is what we're refering to. Your client.
- const client = new Discord.Client();
- // Here we load the config.json file that contains our token and our prefix values.
- const config = require("../config.json");
- async function loadJSON(){
- //la funzione ritorna una promessa
- return new Promise(resolve => {
- fs.readFile('variabili.json','utf8', (err,data) => {resolve(JSON.parse(data))})//risolvera una lettura per un file e lo trasformera in un oggetto
- })
- }
- async function postJSON(jsonData){//praticamente conferma il fatto che abbia preso un biglietto
- //la funzione non ritorna nulla ma aggiorna il json variabile
- fs.writeFile("variabili.json",JSON.stringify(jsonData), err => {//funzione per aggiornare il file
- if(err) return console.log(err);
- console.log("è stato preso un biglitto! Mancano "+ jsonData.persone)
- })
- }
- client.on("ready", guild => {
- console.log(`processo1 inizializzato in ${client.guilds.size} gilde`)
- });
- client.on("message", async message => {
- console.log(`è stato Creato un messeggio:${message.author}: ${message.content}`);
- /*var x = await loadJSON() //aspetta per la risposta alla promessa oggetto
- console.log(x.persone) *///pubblica il valore persone della promessa oggetto
- // This event will run on every single message received, from any channel or DM.
- if(message.author.bot) return; //non acetta messaggi inviati dai bot
- if(message.content.indexOf(config.prefix) !== 0) return; //accetta solo messaggi il prfisso posto in config
- // Here we separate our "command" name, and our "arguments" for the command.
- // e.g. if we have the message "+say Is this the real life?" , we'll get the following:
- // command = say
- // args = ["Is", "this", "the", "real", "life?"]
- var args = message.content.slice(config.prefix.length).trim().split(/ +/g);
- var command = args.shift().toLowerCase();
- if(command==="inizia"){
- console.log("è passato di qui")
- message.channel.send("Processo **1** iniziato")//indica l'inizio del primo processo
- variabili = await loadJSON();//prende il file delle variabili come oggetto
- console.log("superato il load \n")
- console.log(variabili)
- while(variabili.persone>0){//inizio ciclo, finche i biglietti ci saranno continuera il ciclo
- console.log("passato dal while")
- console.log(variabili)
- variabili = await loadJSON();//riprende il file delle variabili lo fa ogni volta per prendere sempre la variabile aggiornata
- console.log("preso")
- if(variabili.process){//controllo se è il turno del processo
- variabili.persone--//leva un biglietto
- variabili.process=false //cambia il turno
- await postJSON(variabili) //aspetto che mi aggiorni il json
- }
- console.log(`**Processo 1:** ho Consegnato un biglietto, *Biglietti mancanti: ${variabili.persone}*`) //messaggio per avvisare l'utente del biglietto
- }
- const m = await message.channel.send("Chiusura in corso...");
- m.edit(`Processo **1** finito con latenza di ${m.createdTimestamp - message.createdTimestamp}ms. e latenza API da ${Math.round(client.ping)}ms`);
- }
- });
- client.login(config.token);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement