From 9177d67f79c895669b3145c91a3868dad10fb9f8 Mon Sep 17 00:00:00 2001 From: mudkipdev Date: Sun, 7 May 2023 15:58:01 -0600 Subject: [PATCH] add core cog --- scnewsbot/bot.py | 27 +++++++++++++++++++++++++++ scnewsbot/extensions/announcements.py | 4 ++-- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/scnewsbot/bot.py b/scnewsbot/bot.py index 447ec60..ffd6120 100644 --- a/scnewsbot/bot.py +++ b/scnewsbot/bot.py @@ -1,3 +1,4 @@ +import subprocess from discord.ext import commands import discord from utils import Config @@ -20,3 +21,29 @@ class Bot(commands.Bot): async def setup_hook(self) -> None: for extension in self.config.extensions: await self.load_extension(extension) + + await self.add_cog(CoreCog(self)) + + +class CoreCog(commands.Cog, name="Core"): + def __init__(self, bot: Bot) -> None: + self.bot = bot + + def _get_version(self) -> str: + return ( + subprocess.check_output(["git", "rev-parse", "--short", "HEAD"]) + .decode("ascii") + .strip() + ) + + @commands.hybrid_command(description="Shows you some info about the bot.") + async def info(self, ctx: commands.Context) -> None: + embed = discord.Embed( + color=self.bot.config.embed_color, + description="SCNewsBot is a Discord bot created for the r/starcitizen\n Discord server to help with writing news posts.", + ) + embed.add_field(name="Version", value=f"v0.0.0+{self._get_version()}") + embed.add_field( + name="Library", value=f"discord.py v{discord.__version__}", inline=False + ) + await ctx.reply(embed=embed) diff --git a/scnewsbot/extensions/announcements.py b/scnewsbot/extensions/announcements.py index e2f1f17..7ac13e5 100644 --- a/scnewsbot/extensions/announcements.py +++ b/scnewsbot/extensions/announcements.py @@ -308,7 +308,7 @@ class AnnouncementBuilderView(discord.ui.View): "You cannot use this menu.", ephemeral=True ) return - + self.announcement_builder.announcement.is_private = ( not self.announcement_builder.announcement.is_private ) @@ -330,7 +330,7 @@ class AnnouncementBuilderView(discord.ui.View): "You cannot use this menu.", ephemeral=True ) return - + self.announcement_builder.announcement.will_notify = ( not self.announcement_builder.announcement.will_notify )