36 lines
1.1 KiB
Python
36 lines
1.1 KiB
Python
import os
|
|
|
|
from types import SimpleNamespace
|
|
from typing import Any, cast
|
|
|
|
from discord import AutoShardedBot
|
|
from discord.ext import commands, tasks
|
|
|
|
from Christmas.config import ChristmasConfig
|
|
|
|
class Christmas(AutoShardedBot):
|
|
def __init__(self, *args: Any, **kwargs: Any):
|
|
super().__init__(*args, **kwargs)
|
|
self.config = ChristmasConfig()
|
|
#self.debug_guilds = [1090621667778244638,1015236495910649926,957142859629342790,1125370139165081612,1170310470503247993]
|
|
|
|
def run(self, *args: Any, **kwargs: Any) -> None:
|
|
kwargs.update({"token": self.config.TOKEN})
|
|
super().run(*args, **kwargs)
|
|
|
|
|
|
def load_cogs(bot: AutoShardedBot) -> None:
|
|
for filename in os.listdir("Christmas/Cogs"):
|
|
if filename.endswith(".py"):
|
|
bot.load_extension(f"Christmas.Cogs.{filename[:-3]}")
|
|
|
|
|
|
def apply_uvloop() -> None:
|
|
try:
|
|
import uvloop
|
|
import asyncio
|
|
except ImportError:
|
|
pass
|
|
else:
|
|
uvloop.install()
|
|
asyncio.set_event_loop_policy(uvloop.EventLoopPolicy()) |