Changed the Client structure
This commit is contained in:
57
cogs/utility.py
Normal file
57
cogs/utility.py
Normal file
@@ -0,0 +1,57 @@
|
||||
import logging
|
||||
from logging import Logger
|
||||
|
||||
from discord import Activity, ActivityType
|
||||
from discord.ext import commands
|
||||
from libbot import config_get
|
||||
|
||||
from classes.holo_bot import HoloBot
|
||||
|
||||
logger: Logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class Utility(commands.Cog):
|
||||
def __init__(self, client: HoloBot):
|
||||
self.client: HoloBot = client
|
||||
|
||||
@commands.Cog.listener()
|
||||
async def on_ready(self) -> None:
|
||||
logger.info("Logged in as %s", self.client.user)
|
||||
|
||||
activity_type: str = await config_get("type", "status")
|
||||
activity_message: str = await config_get("message", "status")
|
||||
|
||||
if activity_type == "playing":
|
||||
await self.client.change_presence(
|
||||
activity=Activity(type=ActivityType.playing, name=activity_message)
|
||||
)
|
||||
elif activity_type == "watching":
|
||||
await self.client.change_presence(
|
||||
activity=Activity(type=ActivityType.watching, name=activity_message)
|
||||
)
|
||||
elif activity_type == "listening":
|
||||
await self.client.change_presence(
|
||||
activity=Activity(type=ActivityType.listening, name=activity_message)
|
||||
)
|
||||
elif activity_type == "streaming":
|
||||
await self.client.change_presence(
|
||||
activity=Activity(type=ActivityType.streaming, name=activity_message)
|
||||
)
|
||||
elif activity_type == "competing":
|
||||
await self.client.change_presence(
|
||||
activity=Activity(type=ActivityType.competing, name=activity_message)
|
||||
)
|
||||
elif activity_type == "custom":
|
||||
await self.client.change_presence(
|
||||
activity=Activity(type=ActivityType.custom, name=activity_message)
|
||||
)
|
||||
else:
|
||||
return
|
||||
|
||||
logger.info(
|
||||
"Set activity type to %s with message %s", activity_type, activity_message
|
||||
)
|
||||
|
||||
|
||||
def setup(client: HoloBot) -> None:
|
||||
client.add_cog(Utility(client))
|
Reference in New Issue
Block a user