Vulkan/main.py
2022-07-27 01:36:55 -03:00

50 lines
1.5 KiB
Python

from random import choices
import string
from discord.bot import Bot
from discord import Intents
from Music.MusicBot import VulkanBot
from os import listdir
from Config.Configs import Configs
class VulkanInitializer:
def __init__(self, willListen: bool) -> None:
self.__config = Configs()
self.__intents = Intents.default()
self.__intents.message_content = True
self.__intents.members = True
self.__bot = self.__create_bot(willListen)
self.__add_cogs(self.__bot)
def getBot(self) -> VulkanBot:
return self.__bot
def __create_bot(self, willListen: bool) -> VulkanBot:
if willListen:
prefix = self.__config.BOT_PREFIX
else:
prefix = ''.join(choices(string.ascii_uppercase + string.digits, k=4))
bot = VulkanBot(command_prefix=prefix,
pm_help=True,
case_insensitive=True,
intents=self.__intents)
return bot
def __add_cogs(self, bot: Bot) -> None:
try:
for filename in listdir(f'./{self.__config.COMMANDS_PATH}'):
if filename.endswith('.py'):
print(f'Loading {filename}')
bot.load_extension(f'{self.__config.COMMANDS_PATH}.{filename[:-3]}')
bot.load_extension(f'DiscordCogs.MusicCog')
except Exception as e:
print(e)
if __name__ == '__main__':
initializer = VulkanInitializer(willListen=True)
vulkanBot = initializer.getBot()
vulkanBot.startBot()