diff --git a/.idea/cogue.iml b/.idea/cogue.iml old mode 100644 new mode 100755 diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml old mode 100644 new mode 100755 diff --git a/.idea/misc.xml b/.idea/misc.xml old mode 100644 new mode 100755 diff --git a/.idea/modules.xml b/.idea/modules.xml old mode 100644 new mode 100755 diff --git a/.idea/workspace.xml b/.idea/workspace.xml old mode 100644 new mode 100755 diff --git a/LICENSE b/LICENSE old mode 100644 new mode 100755 diff --git a/bot.py b/bot.py old mode 100644 new mode 100755 diff --git a/cogs/admin.py b/cogs/admin.py old mode 100644 new mode 100755 index 38b37b2..2ae1d30 --- a/cogs/admin.py +++ b/cogs/admin.py @@ -1,10 +1,8 @@ from discord.ext import commands -from random import choice, shuffle import aiohttp import asyncio import time import discord -import platform from .utils import checks class Admin: @@ -33,7 +31,7 @@ class Admin: self.bot.unload_extension(module) self.bot.load_extension(module) await self.bot.say("Nice !") - except Exception as e: + except Exception as e: #TODO : A virer dans l'event on_error await self.bot.say(':( Erreur :') await self.bot.say('{}: {}'.format(type(e).__name__, e)) else: @@ -46,17 +44,16 @@ class Admin: number = number + 1 await self.bot.purge_from(ctx.message.channel, limit=number) await self.bot.say("Hello World !") - except Exception as e: + except Exception as e: #TODO : A virer dans l'event on_error await self.bot.say(':sob: Une erreur est survenue : \n {}: {}'.format(type(e).__name__, e)) @checks.is_owner() @commands.command(name='say', pass_context=True, hidden=True) - async def _say(self, ctx, dire): + async def _say(self, ctx, *dire:str): try: - arg = ctx.message.content.split("say ") - await self.bot.say(arg[1]) + await self.bot.say(dire) await self.bot.delete_message(ctx.message) - except Exception as e: + except Exception as e: #TODO : A virer dans l'event on_error await self.bot.say(':sob: Une erreur est survenue : \n {}: {}'.format(type(e).__name__, e)) @checks.is_owner() diff --git a/cogs/basics.py b/cogs/basics.py old mode 100644 new mode 100755 diff --git a/cogs/ci.py b/cogs/ci.py old mode 100644 new mode 100755 index c154f49..0164dc4 --- a/cogs/ci.py +++ b/cogs/ci.py @@ -84,6 +84,22 @@ class Identity: conn.commit() await self.bot.say(":clap: Bievenue à toi {} dans le communisme {} ! Fait ``.ci`` pour plus d'informations !".format(ctx.message.author.name, ctx.message.server.name)) + @_ci.command(pass_context=True, name="upimage") + async def ci_image(self, ctx): + try: + cursor.execute("""SELECT id, userid FROM users WHERE userid=?""", (ctx.message.author.id,)) + existansw = cursor.fetchone() + + if existansw != None: + cursor.execute("""UPDATE users SET useravatar = ? WHERE userid = ?""", (ctx.message.author.avatar_url, ctx.message.author.id)) + conn.commit() + await self.bot.say(ctx.message.author.mention + "> :ok_hand: Carte d'identité mise à jour; Sympa ton nouvel avatar :wink: !") + else: + await self.bot.say(ctx.message.author.mention + "> :x: Veuillez enregistrer votre carte d'identité pour commencer !") + except Exception as e: #TODO : A virer dans l'event on_error + await self.bot.say(':( Erreur veuillez contacter votre administrateur :') + await self.bot.say('{}: {}'.format(type(e).__name__, e)) + @_ci.command(pass_context=True, name="setconfig") async def ci_setconfig(self, ctx, args_): try: diff --git a/cogs/funs.py b/cogs/funs.py old mode 100644 new mode 100755 index c8afd87..9c86bf7 --- a/cogs/funs.py +++ b/cogs/funs.py @@ -22,6 +22,11 @@ class Funs: embed.set_thumbnail(url=user.avatar_url) await self.bot.say(embed=embed) + @commands.command(pass_context=True) + async def poke(self, user : discord.Member): + """Poke quelqu'un""" + await self.bot.say(":clap: Hey {0} tu t'es fait poker par {1}.".format(user.mention, ctx.message.author)) + @commands.command() async def btcprice(self): """Le prix du BTC""" @@ -56,7 +61,7 @@ class Funs: @commands.command() async def ethylotest(self): """Ethylotest simulator 2018""" - results_poulet = ["Désolé mais mon ethylotest est sous Windows Vista, merci de patienter...", "_(ethylotest)_ ``Une erreur est survenue. Windows cherche une solution à se prolbème...``", "Mais j'l'ai foutu où ce p*** d'ethylotest de m..... bordel fait ch..... tab....", "C'est pas possible z'avez cassé l'ethylotest !"] + results_poulet = ["Désolé mais mon ethylotest est sous Windows Vista, merci de patienter...", "_(ethylotest)_ ``Une erreur est survenue. Windows cherche une solution à se problème...``", "Mais j'l'ai foutu où ce p*** d'ethylotest de m*** bordel fait ch*** tab***", "C'est pas possible z'avez cassé l'ethylotest !"] results_client = ["D'accord, il n'y a pas de problème à cela je suis complètement clean", "Bien sur si c'est votre devoir !", "Suce bi** !", "J'ai l'air d'être bourré ?", "_laissez moi prendre un bonbon à la menthe..._"] result_p = random.choice(results_poulet) @@ -71,8 +76,8 @@ class Funs: @commands.command() async def coin(self): """Coin flip simulator 2025""" - starts_msg = ["Je lance la pièce !", "C'est partit !", "C'est une pièce de d'un cent faut pas la perdre", "C'est une pièce de d'un euro faut pas la perdre", "Je lance !"] - results_coin = ["{0} pile", "{0} face", "{1} Heu c'est quoi pile c'est quoi face enfaite ?", "{1} How shit, je crois que je l'ai perdu", "{1} Et bim je te vol ta pièce !", "{0} Oh une erreur d'impression y'a ni pile ni face !"] + starts_msg = ["Je lance la pièce !", "C'est parti !", "C'est une pièce d'un cent faut pas la perdre", "C'est une pièce d'un euro faut pas la perdre", "Je lance !"] + results_coin = ["{0} pile", "{0} face", "{1} Heu c'est quoi pile c'est quoi face enfaite ?", "{1} Oh shit, je crois que je l'ai perdue", "{1} Et bim je te vol ta pièce !", "{0} Oh une erreur d'impression il n'y a ni pile ni face !"] start = random.choice(starts_msg) result = random.choice(results_coin) diff --git a/cogs/search.py b/cogs/search.py old mode 100644 new mode 100755 index 32b6044..93c3a2f --- a/cogs/search.py +++ b/cogs/search.py @@ -69,7 +69,7 @@ class Search: @_search.command(pass_context=True, name="wikipedia") async def search_wikipedia(self, ctx, args): """Fait une recherche sur wikipd""" - try: + try: # C'est quoi ce try-except de la mort ? wait = await self.bot.say("_Je cherche..._") results = wikipedia.search(args) nbmr = 0 @@ -109,11 +109,11 @@ class Search: await self.bot.delete_message(wait) await self.bot.say(embed=em) - except wikipedia.exceptions.PageError: + except wikipedia.exceptions.PageError: #TODO : A virer dans l'event on_error await self.bot.say(":open_mouth: Une **erreur interne** est survenue, si cela ce reproduit contactez votre administrateur ou faites une Issue sur ``github`` !") except UnboundLocalError: await self.bot.say(":interrobang: Veuillez choisir une réaction valide !") - except: + except DisambiguationError: #TODO : A virer dans l'event on_error await self.bot.say(":open_mouth: Une **erreur interne** est survenue, si cela ce reproduit contactez votre administrateur ou faites une Issue sur ``github`` !") except IndexError: await self.bot.say(" :interrobang: Veuillez entrer un terme de recherche !") diff --git a/cogs/utility.py b/cogs/utility.py old mode 100644 new mode 100755 diff --git a/cogs/utils/__init__.py b/cogs/utils/__init__.py old mode 100644 new mode 100755 diff --git a/cogs/utils/__pycache__/__init__.cpython-35.pyc b/cogs/utils/__pycache__/__init__.cpython-35.pyc old mode 100644 new mode 100755 diff --git a/cogs/utils/__pycache__/checks.cpython-35.pyc b/cogs/utils/__pycache__/checks.cpython-35.pyc old mode 100644 new mode 100755 diff --git a/cogs/utils/checks.py b/cogs/utils/checks.py old mode 100644 new mode 100755 diff --git a/cogs/utils/config.py b/cogs/utils/config.py old mode 100644 new mode 100755 diff --git a/cogs/utils/formats.py b/cogs/utils/formats.py old mode 100644 new mode 100755 diff --git a/cogs/utils/maps.py b/cogs/utils/maps.py old mode 100644 new mode 100755 diff --git a/cogs/utils/paginator.py b/cogs/utils/paginator.py old mode 100644 new mode 100755 diff --git a/logs/NOT A EMPTY FOLDER b/logs/NOT A EMPTY FOLDER old mode 100644 new mode 100755 diff --git a/params.json b/params.json old mode 100644 new mode 100755 diff --git a/readme.md b/readme.md old mode 100644 new mode 100755 index 8360888..d3a96df --- a/readme.md +++ b/readme.md @@ -1,21 +1,22 @@ -# Titre du projet +# Tuxbot [![forthebadge](http://forthebadge.com/images/badges/contains-cat-gifs.svg)](http://forthebadge.com) +[![forthebadge](https://forthebadge.com/images/badges/made-with-python.svg)](http://forthebadge.com) TuxBot, un bot discord écrit en Python. -Ici se trouve le code source de ce bot proventant du serveur Discord "Aide GNU/Linux-Fr", il à été créé spécialement pour ce discord, si vous souhaitez l'utiliser il vous faudra modifier ``settings.json`` et ``cogs/utils/checks.py`` ;) +Ici ce trouve le code source du bot provenant du serveur Discord [Aide GNU/Linux-Fr"](https://discord.gg/79943dJ "Rejoindre le serveur"), il à été créé spécialement pour ce discord, si vous souhaitez l'utiliser il vous faudra modifier ``settings.json`` et ``cogs/utils/checks.py`` ;) ### Pré-requis Il vous faut : -- Un ordinateur sous **linux** avec une connexion à l'internet -- Python3.5 ou + +- Un ordinateur sous **GNU/Linux** avec une connexion à internet; +- Python3.5 ou + ; - Installer ``requirements.txt`` (avec ``pip install -r requirements.txt`` par ex) ### Installation -Une fois les prérequis installés et les paramètres édités placez vous dans le repertoire du bot et lancez ``bot.py`` avec python3 (ex: ``python3 bot.py``) +Une fois les pré-requis installés et les paramètres édités, placez vous dans le repertoire du bot et lancez ``bot.py`` avec python3 (ex: ``python3 bot.py``) ## Démarrage diff --git a/requirements.txt b/requirements.txt old mode 100644 new mode 100755 diff --git a/texts/ci-info.md b/texts/ci-info.md old mode 100644 new mode 100755 index a230a3e..2e36c6f --- a/texts/ci-info.md +++ b/texts/ci-info.md @@ -2,8 +2,9 @@ La carte d'identité est un petit système dans tuxbot permetant de vous démarq **Liste des commandes : ** -> ci : Affiche l'aide sur les cartes d'identité --> ci show _@pseudo_ : Affiche la carte d'identité de _pseudo_ +-> ci show _pseudo_ : Affiche la carte d'identité de _pseudo_ -> ci register : Vous enregistre dans la base de donnée des cartes d'identité -> ci setos _nom de l'os_ : Défini le système d'exploitation -> ci setconfig _votre configuration pc_ : Défini la configuration de votre ordinateur --> ci setcountry : Défini votre Pays +-> ci setcountry : Défini votre pays +-> ci upimage : Met à jour votre image si vous l'avez changé :wink: diff --git a/texts/clocks.md b/texts/clocks.md old mode 100644 new mode 100755 index 45cc12c..e72f932 --- a/texts/clocks.md +++ b/texts/clocks.md @@ -1,5 +1,5 @@ -_Pour utiliser les Horloges utilisez la commande : **clock **nom de l'horloge_ +_Pour utiliser les horloges utilisez la commande : **clock ** ville_ -> Montreal (Canada, QC) -> Vancouver (Canada, BC) -> New-York / N-Y (U.S.A.) diff --git a/texts/help.md b/texts/help.md old mode 100644 new mode 100755 index 1c54294..7200370 --- a/texts/help.md +++ b/texts/help.md @@ -1,12 +1,3 @@ - -**Commandes diverses** : --> info : Affiche des informations sur le bot --> help : Affiche ce message --> ci : Affiche l'aide et des infos sur le système de carte d'identité --> clock list: Affiche la liste des horloges des villes --> ping : Ping le bot --> github : Affiche le repos Github du Bot :heart: - **Commandes utilitaires** -> afk : Signaler son absence -> back : Signaler son retour @@ -14,23 +5,31 @@ -> ytdiscover : Découvrir des chaines youtube -> search _site_ _contenu_ : Fait une recherche sur un site (.search pour plus d'infos) -> avatar _@pseudo_ : Récupère l'avatar de _@pseudo_ +-> poke _@pseudo_ : Poke _@pseudo_ **Commandes Funs** -> joke : Affiche une blague aléatoire -> ethylotest : Simule un ethylotest détraqué -> pokemon : Lance un combat de pokémons aléatoires --> coin : Fait un pile ou face +-> coin : Simule un pile ou face -> randomcat : Affiche des image de chats :3 **Commandes Carte d'Identité** -> ci : Affiche l'aide sur les cartes d'identité --> ci show _@pseudo_ : Affiche la carte d'identité de _pseudo_ +-> ci show _pseudo_ : Affiche la carte d'identité de _pseudo_ -> ci register : Vous enregistre dans la base de donnée des cartes d'identité -> ci setos _nom de l'os_ : Défini le système d'exploitation -> ci setconfig _votre configuration pc_ : Défini la configuration de votre ordinateur --> ci setcountry : Défini votre Pays +-> ci setcountry : Défini votre pays +-> ci upimage : Met à jour votre image si vous l'avez changé :wink: -** Commandes d'administration ** --> say _votre message_ : fait le bot écrire +**Commandes d'administration** +-> say _votre message_ : Envoi un message de la part du bot -> clear _nombre_ : Supprime _nombre_ de messages +**Commandes diverses** : +-> info : Affiche des informations sur le bot +-> help : Affiche ce message +-> clock list: Affiche la liste des horloges des villes +-> ping : Ping le bot +-> github : Affiche le repos Github du Bot :heart: diff --git a/texts/info.md b/texts/info.md old mode 100644 new mode 100755 diff --git a/texts/jokes.json b/texts/jokes.json old mode 100644 new mode 100755 index b3cfb59..e7d066b --- a/texts/jokes.json +++ b/texts/jokes.json @@ -1,7 +1,7 @@ { "1": {"content": "Les hyperboles sa sert à manger des hyper-soupes :3 (Lawl!)", "author": "Crumble14 (bukkit.fr)"}, "2": {"content": "Le comble de Windows, c’est que pour l’arrêter, il faut cliquer sur démarrer.", "author": "Keke142 (bukkit.fr)"}, - "3": {"content": "Chrome: On est le 8 avril 2016 13h02 \n Safari: On est le 8 avril 2016 12h02 \n Internet Explorer: On est le... **[Internet Explorer a cessé de fonctionner, veuillez redémarrer votre machine]**", "author": "NyoSan"}, + "3": {"content": "Chrome: On est le 8 avril 2016 13h02 \n Safari: On est le 8 avril 2016 13h02 \n Internet Explorer: On est le... **[Internet Explorer a cessé de fonctionner, veuillez redémarrer votre machine]**", "author": "NyoSan"}, "4": {"content": "Il y a 10 types de personnes dans le monde, ceux qui comprennent le binaire et les autres.", "author": "Dartasen (bukkit.fr)"}, "5": {"content": "C'est une requête SQL qui rentre dans un bar et qui s'adresse à deux tables \"Puis-je vous joindre ?\".\"", "author": "Dartasen (bukkit.fr)"}, "6": {"content": "Combien de développeurs faut-il pour remplacer une ampoule grillée ? Aucun, c'est un problème Hardware.", "author": "Dartasen (bukkit.fr)"}, @@ -11,4 +11,4 @@ "10": {"content": "Le 1er janvier 1970 c'est le jour où il y a eu le plus de plantages. (cf : http://bit.ly/2rArLVe)", "author": "NyoSan"}, "11": {"content": "Pourquoi est-ce que les girafes aiment magasiner à bas prix? Tout est une question de cou.", "author": "Maxx_Qc (bukkit.fr)"}, "12": {"content": "``Même éteint le hackeur peut pirater l'ordi`` \"Le SuperGeek tournant sous Ubuntu (ou Windows)\"", "author": "Outout"} -} \ No newline at end of file +} diff --git a/texts/pokemons.json b/texts/pokemons.json old mode 100644 new mode 100755 diff --git a/texts/search.md b/texts/search.md old mode 100644 new mode 100755 index abf0759..f17a132 --- a/texts/search.md +++ b/texts/search.md @@ -1,5 +1,5 @@ -_Attention ! : entrez vos termes de recherche sans espaces !_ +_Attention ! entrez vos termes de recherche sans espaces !_ Pour effectuer une recherche utilisez la commande ``.search {site_de_recherche} {termes_recherche}`` -> [**docubuntu**](https://doc.ubuntu-fr.org) : Effectuer une recherche sur un paquet dans la Documentation du site ubuntu-fr.org. -> [**wikipedia**](https://fr.wikipedia.org) : Effectuer une recherche sur l'encyclopédie libre Wikipedia en Français ! diff --git a/texts/ytb.json b/texts/ytb.json old mode 100644 new mode 100755