from discord.ext import tasks import discord from ..bot import DiscordClient class Extension: core = None track_guild_id = 0 track_channel_id = 712673654487515238 track_webhook_id = 740681080557797499 track_role_id = 744928190895489074 no_reason = {} def __init__(self, core: DiscordClient): self.core = core self.track_guild_id = core.main_server_id self.webhook_reaction_translate = { "😘":(self.core.loaded_extensions['ban'], {"profile":"", "reason":"", "minutes":0, "requester":""}), "🔨":(self.core.loaded_extensions['ban'], {"profile":"", "reason":"", "minutes":30, "requester":""}), "⚒️":(self.core.loaded_extensions['ban'], {"profile":"", "reason":"", "minutes":120, "requester":""}), "📨":(self.no_reason, {"requester":""}), "🦵":"kick {reported_steam}", "🔇":"mute {reported_steam}", "😇":"unban {reported_steam}", "hueglot:713139400028061767":"kick {original_steam}", "🔍":"{reported_steam}", "🔎":"{original_steam}" } @core.event async def on_message(message: discord.Message): if message.webhook_id != self.track_webhook_id: return for emoji in list(self.webhook_reaction_translate.keys()): try: message.add_reaction(emoji=emoji) except Exception as err: print(f"Cannot add reaction on webhook") return @core.event async def on_reaction_add(reaction: discord.Reaction, user: discord.User): if reaction.message.webhook_id != self.track_webhook_id: return if reaction.me: return if str(reaction.emoji) in self.webhook_reaction_translate.keys(): executor, kwargs = self.webhook_reaction_translate[str(reaction.emoji)] if "requester" in kwargs: kwargs["requester"] = user.id async def null_reason(self, requester): self.no_reason[requester] = "no reason"