Et hop
This commit is contained in:
parent
8bb5a46f24
commit
7d972d9009
33 changed files with 58 additions and 39 deletions
0
.idea/cogue.iml
Normal file → Executable file
0
.idea/cogue.iml
Normal file → Executable file
0
.idea/inspectionProfiles/profiles_settings.xml
Normal file → Executable file
0
.idea/inspectionProfiles/profiles_settings.xml
Normal file → Executable file
0
.idea/misc.xml
Normal file → Executable file
0
.idea/misc.xml
Normal file → Executable file
0
.idea/modules.xml
Normal file → Executable file
0
.idea/modules.xml
Normal file → Executable file
0
.idea/workspace.xml
Normal file → Executable file
0
.idea/workspace.xml
Normal file → Executable file
0
LICENSE
Normal file → Executable file
0
LICENSE
Normal file → Executable file
0
bot.py
Normal file → Executable file
0
bot.py
Normal file → Executable file
13
cogs/admin.py
Normal file → Executable file
13
cogs/admin.py
Normal file → Executable file
|
@ -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()
|
||||
|
|
0
cogs/basics.py
Normal file → Executable file
0
cogs/basics.py
Normal file → Executable file
16
cogs/ci.py
Normal file → Executable file
16
cogs/ci.py
Normal file → Executable file
|
@ -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:
|
||||
|
|
11
cogs/funs.py
Normal file → Executable file
11
cogs/funs.py
Normal file → Executable file
|
@ -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)
|
||||
|
|
6
cogs/search.py
Normal file → Executable file
6
cogs/search.py
Normal file → Executable file
|
@ -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 !")
|
||||
|
|
0
cogs/utility.py
Normal file → Executable file
0
cogs/utility.py
Normal file → Executable file
0
cogs/utils/__init__.py
Normal file → Executable file
0
cogs/utils/__init__.py
Normal file → Executable file
0
cogs/utils/__pycache__/__init__.cpython-35.pyc
Normal file → Executable file
0
cogs/utils/__pycache__/__init__.cpython-35.pyc
Normal file → Executable file
0
cogs/utils/__pycache__/checks.cpython-35.pyc
Normal file → Executable file
0
cogs/utils/__pycache__/checks.cpython-35.pyc
Normal file → Executable file
0
cogs/utils/checks.py
Normal file → Executable file
0
cogs/utils/checks.py
Normal file → Executable file
0
cogs/utils/config.py
Normal file → Executable file
0
cogs/utils/config.py
Normal file → Executable file
0
cogs/utils/formats.py
Normal file → Executable file
0
cogs/utils/formats.py
Normal file → Executable file
0
cogs/utils/maps.py
Normal file → Executable file
0
cogs/utils/maps.py
Normal file → Executable file
0
cogs/utils/paginator.py
Normal file → Executable file
0
cogs/utils/paginator.py
Normal file → Executable file
0
logs/NOT A EMPTY FOLDER
Normal file → Executable file
0
logs/NOT A EMPTY FOLDER
Normal file → Executable file
0
params.json
Normal file → Executable file
0
params.json
Normal file → Executable file
11
readme.md
Normal file → Executable file
11
readme.md
Normal file → Executable file
|
@ -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
|
||||
|
||||
|
|
0
requirements.txt
Normal file → Executable file
0
requirements.txt
Normal file → Executable file
5
texts/ci-info.md
Normal file → Executable file
5
texts/ci-info.md
Normal file → Executable file
|
@ -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:
|
||||
|
|
2
texts/clocks.md
Normal file → Executable file
2
texts/clocks.md
Normal file → Executable file
|
@ -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.)
|
||||
|
|
27
texts/help.md
Normal file → Executable file
27
texts/help.md
Normal file → Executable file
|
@ -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:
|
||||
|
|
0
texts/info.md
Normal file → Executable file
0
texts/info.md
Normal file → Executable file
4
texts/jokes.json
Normal file → Executable file
4
texts/jokes.json
Normal file → Executable file
|
@ -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"}
|
||||
}
|
||||
}
|
||||
|
|
0
texts/pokemons.json
Normal file → Executable file
0
texts/pokemons.json
Normal file → Executable file
2
texts/search.md
Normal file → Executable file
2
texts/search.md
Normal file → Executable file
|
@ -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 !
|
||||
|
|
0
texts/ytb.json
Normal file → Executable file
0
texts/ytb.json
Normal file → Executable file
Loading…
Reference in a new issue