From 047afbb51f1350dc18394d445271134d18ded64e Mon Sep 17 00:00:00 2001
From: Camille <ltheo2029@gmail.com>
Date: Wed, 3 Nov 2021 23:11:31 +0100
Subject: [PATCH] Upgrade : Bot is now availble on mutiple guilds.

---
 src/corps.js | 31 ++++++++++++++++++++++---------
 src/index.js |  4 +++-
 2 files changed, 25 insertions(+), 10 deletions(-)

diff --git a/src/corps.js b/src/corps.js
index 16edb18..0706b4f 100644
--- a/src/corps.js
+++ b/src/corps.js
@@ -1,8 +1,7 @@
 const help = require('./help');
 
-let map = new Map();
-let copy = new Map();
-
+const serversList = new Map();
+const copyList = new Map();
 
 
 /**
@@ -10,6 +9,12 @@ let copy = new Map();
  */
 function handleCommand(message, cmdName, args) {
 
+    const serverId = message.guildId;
+    
+    if (!serversList.has(serverId))
+        serversList.set(serverId, new Map());
+
+    
     switch (cmdName) {
 
         case "help" :
@@ -18,6 +23,7 @@ function handleCommand(message, cmdName, args) {
 
         case "list":
         case "liste":
+        case "listeuh": //POUR DEV PIPO SANS TUER LA LISTE DE CAMBOT
             list(message);
             break;
         
@@ -43,7 +49,9 @@ function handleCommand(message, cmdName, args) {
     }
 }
 
+
 function list(message){
+    const map = serversList.get(message.guildId);
     if (map.size === 0) return message.channel.send("La liste est vide.");
     let rep ="";
     for (const [key, value] of map)
@@ -54,7 +62,10 @@ function list(message){
 /**
  * @param {Array<string>} args
  */
+
+
 function add(args, message){
+    const map = serversList.get(message.guildId);
     const articles = args.join(" ").split(/;\s*/); //propre
     for (let article of articles) {
         if (article === "") continue;
@@ -73,6 +84,8 @@ function add(args, message){
 
 function remove(args, message){
 
+    const map = serversList.get(message.guildId);
+
     if (map.size === 0) return message.channel.send("La liste est vide.");
 
     const articles = args.join(" ").split(/;\s*/); //propre
@@ -85,19 +98,19 @@ function remove(args, message){
     message.channel.send("Vos articles ont bien été retirés.");    
 }
 
-
 function clear(message){
+
+    const map = serversList.get(message.guildId);
     if (map.size === 0) return message.channel.send("La liste est déjà vide.");
-    copy = new Map([...map]);
-    map.clear();
+    copyList.set(message.guildId, map);
+    serversList.set(message.guildId, new Map());
     message.channel.send("La liste a bien été supprimmée.");
 }
 
 function backup(message){
-    map = new Map([...copy]);
-    copy.clear();
+    const map = copyList.get(message.guildId);   
+    serversList.set(message.guildId, map);
     message.channel.send("Le backup a bien été effectué.");
 }
 
-
 module.exports = handleCommand ;
\ No newline at end of file
diff --git a/src/index.js b/src/index.js
index df432e6..83d0e9d 100644
--- a/src/index.js
+++ b/src/index.js
@@ -12,10 +12,12 @@ client.on('ready', () => {
 
 const PREFIX = "$";
 
+let serverList = [];
 
 client.on('messageCreate', (message) => {
-    
+
     if (message.author.bot) return;
+        
 
     if (message.content.startsWith(PREFIX)) {
         const [ cmdName, ...args] = message.content
-- 
GitLab