add __main__.py
This commit is contained in:
parent
9dbb2f1f33
commit
568673990e
61
__main__.py
Normal file
61
__main__.py
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
import os
|
||||
import asyncio
|
||||
import discord
|
||||
from libs.Db import Db
|
||||
from libs.BotLog import BotLog
|
||||
from discord.ext import commands
|
||||
from dotenv import load_dotenv
|
||||
|
||||
load_dotenv()
|
||||
token = os.getenv("DISCORD_TOKEN")
|
||||
prefix = os.getenv("COMMAND_PREFIX")
|
||||
guild_id = os.getenv("GUILD_ID")
|
||||
|
||||
bot_intents = discord.Intents.default()
|
||||
bot_intents.message_content = True
|
||||
bot_intents.members = True
|
||||
|
||||
|
||||
class FunkyBot(commands.Bot):
|
||||
def __init__(self):
|
||||
super().__init__(
|
||||
command_prefix=prefix,
|
||||
intents=bot_intents
|
||||
)
|
||||
self.log_handler = BotLog("bot.log")
|
||||
self.db = Db('sqlite:///data/bot.db', True)
|
||||
self.guild_id = guild_id
|
||||
|
||||
async def on_ready(self):
|
||||
print(f"Logged in as {self.user.name}")
|
||||
# await self.cmd_tree.sync(guild=discord.Object(id=551671017823797248))
|
||||
await self.load_cogs()
|
||||
for cog in self.cogs:
|
||||
print(f"{cog} Commands")
|
||||
cg = self.get_cog(cog)
|
||||
cmds = cg.get_commands()
|
||||
print([f"/{c.name}" for c in cmds])
|
||||
synced = await self.tree.sync(guild=discord.Object(id=guild_id))
|
||||
print(synced)
|
||||
|
||||
async def on_member_join(self, member):
|
||||
channel = discord.utils.get(member.guild.channels, name="general")
|
||||
role = discord.utils.get(await member.guild.fetch_roles(), name="Chinstrap Penguins")
|
||||
if role is not None:
|
||||
if role not in member.roles:
|
||||
await member.add_roles(role)
|
||||
await channel.send(f"Another Penguin has joined the Collective. Everyone say hi to {member.mention}!")
|
||||
|
||||
|
||||
async def load_cogs(self):
|
||||
for filename in os.listdir("./cogs"):
|
||||
if filename.endswith(".py"):
|
||||
await self.load_extension(f"cogs.{filename[:-3]}")
|
||||
print(f"Loaded {filename[:-3]}")
|
||||
|
||||
async def main():
|
||||
bot = FunkyBot()
|
||||
async with bot:
|
||||
await bot.start(token)
|
||||
|
||||
asyncio.run(main())
|
||||
Loading…
Reference in a new issue