Декоратор
bot.event
используется только для
событий.
Для команд необходим декоратор
@bot.command()
или @commands.command()
в модулях.
А так же: Сравнение текущей даты с датой
рождения - некорректно. Дата с текущим годом != дате с годом рождения.
from datetime import date
import discord
from datetime import date
@bot.command()
async def bdays4(ctx):
cur_year = date.today().year
bdays = {
"Kenshi": date(day=12, month=8, year=1997),
"Broody": date(day=11, month=11, year=1009),
"Melanie": date(day=22, month=1, year=1941),
"Blueface Baby": date(day=18, month=8, year=2020),
}
for bday_name, date in bdays.items():
bday = date.update(year=cur_year)
if bday == date.today():
await ctx.send(
embed=discord.Embed(
description=f"Happy birthday {bday_name}",
colour=discord.Color.green(),
)
)