ajout reminder

This commit is contained in:
Mylloon 2021-05-11 10:05:47 +02:00
parent aed75a118c
commit c82370ae49

View file

@ -3,7 +3,7 @@ from discord.ext import commands
from random import randint, shuffle from random import randint, shuffle
from datetime import datetime from datetime import datetime
from pytz import timezone from pytz import timezone
import re import re, asyncio
def setup(client): def setup(client):
client.add_cog(Utils(client)) client.add_cog(Utils(client))
@ -382,3 +382,34 @@ class Utils(commands.Cog):
for i in reactions: for i in reactions:
await message.add_reaction(emoji = i) await message.add_reaction(emoji = i)
return await ctx.message.delete() return await ctx.message.delete()
@commands.command(name='reminder', aliases=["remind", "remindme", "remind_me"])
async def _reminder(self, ctx, time, *, reminder):
embed = discord.Embed(color = 0xC41B1B)
seconds = 0
if reminder:
if time.lower().endswith("d"):
seconds += int(time[:-1]) * 60 * 60 * 24
counter = f"{seconds // 60 // 60 // 24} jours"
if time.lower().endswith("h"):
seconds += int(time[:-1]) * 60 * 60
counter = f"{seconds // 60 // 60} heures"
elif time.lower().endswith("m"):
seconds += int(time[:-1]) * 60
counter = f"{seconds // 60} minutes"
elif time.lower().endswith("s"):
seconds += int(time[:-1])
counter = f"{seconds} secondes"
if seconds == 0:
embed.add_field(name="Attention", value="Mauvais format pour l'heure, `d` pour jour, `h` pour heure, `m` pour minute, `s` pour seconde (ne fonctionne qu'avec une seule unité).")
elif seconds < 300:
embed.add_field(name="Attention", value="Tu as spécifié une durée trop courte, la durée minimum étant de 5 minutes.")
elif seconds > 7776000:
embed.add_field(name="Attention", value="Tu as spécifié une durée trop longue, la durée maximum étant de 90 jours.")
else:
await ctx.send(f"Ok, je t'en parles dans {counter} !")
await asyncio.sleep(seconds)
return await ctx.send(f"{ctx.author.mention}, voici ton message d'il y a {counter} :```{reminder}```")
else:
embed.add_field(name="Attention", value="Mauvaise syntaxe : reminder <temps> <message>")
await ctx.send(embed = embed)