Guest User

Untitled

a guest
Mar 31st, 2022
25
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.89 KB | None | 0 0
  1. from typing import TYPE_CHECKING
  2. import asyncio
  3. import os
  4. from glob import glob
  5.  
  6. from disnake.ext.commands import *
  7. from disnake import Intents, Guild, Activity, ActivityType, Thread
  8. from disnake.abc import GuildChannel, PrivateChannel
  9.  
  10. prefix = "&"
  11. OWNER_IDS = []
  12. COGS = [path.split("\\")[1][:-3] for path in glob("./lib/cogs/*py")]
  13.  
  14.  
  15. class Ready(object):
  16.     def __init__(self):
  17.         for cog in COGS:
  18.             setattr(self, cog, False)
  19.  
  20.     def ready_up(self, cog):
  21.         setattr(self, cog, True)
  22.         print(f"        {cog} ready")
  23.  
  24.     def all_ready(self):
  25.         return all([getattr(self, cog) for cog in COGS])
  26.  
  27. class Iteria(Bot):
  28.     def __init__(self):
  29.         self.prefix = prefix
  30.         self.ready = False
  31.         self.token = os.environ["bot_token2"]
  32.         self.cogs_ready = Ready()
  33.         self.version: str = ""
  34.         self.intent = Intents.default()
  35.         self.intent.messages = True
  36.         super().__init__(command_prefix=self.prefix, owner_ids=OWNER_IDS, intents=self.intent)
  37.  
  38.     def run(self, version):
  39.         self.version = version
  40.         print("Running setup...")
  41.         self.setup()
  42.  
  43.         print("running bot...")
  44.         super().run(self.token, reconnect=True)
  45.  
  46.     def setup(self):
  47.         for cog in COGS:
  48.             try:
  49.                 print(f"    loadin {cog}")
  50.                 self.load_extension(f"lib.cogs.{cog}")
  51.             except NoEntryPointError as e:
  52.                 print(f"    failed to load {cog}\nNo setup found\n")
  53.                 print(e)
  54.             except ExtensionFailed as e:
  55.                 print(f"    failed to load {cog}\nThe extension or its setup had an execution error\n")
  56.                 print(e)
  57.             else:
  58.                 print(f"    {cog} loaded")
  59.  
  60.     async def on_connect(self):
  61.         print("bot connected")
  62.  
  63.     async def on_disconnect(self):
  64.         print("bot disconnected")
Advertisement
Add Comment
Please, Sign In to add comment