aboutsummaryrefslogtreecommitdiffstats
path: root/bot/exts/valentines/savethedate.py
blob: ac38d279dd78e6642d02d0d41800332ae50584e1 (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
40
41
import logging
import random
from json import load
from pathlib import Path

import discord
from discord.ext import commands

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."""

    def __init__(self, bot: commands.Bot):
        self.bot = bot

    @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: commands.Bot) -> None:
    """Save the date Cog Load."""
    bot.add_cog(SaveTheDate(bot))