aboutsummaryrefslogtreecommitdiffstats
path: root/bot/exts/valentines/savethedate.py
blob: cc16f5c912e59d586cb9c8d73d789ef4c8b450e2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import logging
import random
from json import load
from pathlib import Path

import discord
from discord.ext import commands

from bot.bot import Bot
from bot.constants import Colours

log = logging.getLogger(__name__)

HEART_EMOJIS = [":heart:", ":gift_heart:", ":revolving_hearts:", ":sparkling_heart:", ":two_hearts:"]

with open(Path("bot/resources/valentines/date_ideas.json"), "r", encoding="utf8") as f:
    VALENTINES_DATES = load(f)


class SaveTheDate(commands.Cog):
    """A cog that gives random suggestion for a Valentine's date."""

    @commands.command()
    async def savethedate(self, ctx: commands.Context) -> None:
        """Gives you ideas for what to do on a date with your valentine."""
        random_date = random.choice(VALENTINES_DATES["ideas"])
        emoji_1 = random.choice(HEART_EMOJIS)
        emoji_2 = random.choice(HEART_EMOJIS)
        embed = discord.Embed(
            title=f"{emoji_1}{random_date['name']}{emoji_2}",
            description=f"{random_date['description']}",
            colour=Colours.pink
        )
        await ctx.send(embed=embed)


def setup(bot: Bot) -> None:
    """Load the Save the date Cog."""
    bot.add_cog(SaveTheDate())