forked from viveksantayana/geas-bot
Vivek Santayana
b0b417a8d2
Split cogs into different files About to change file structuring to move dev file to main file
27 lines
1.1 KiB
Python
27 lines
1.1 KiB
Python
import yaml # YAML parser for Bot config files
|
|
import asyncio # Discord Py Dependency
|
|
import discord # Main Lib
|
|
from discord.ext import commands # Commands module
|
|
from discord_slash import SlashCommand, SlashContext, cog_ext, utils # Slash Command Library
|
|
from discord_slash.utils.manage_commands import create_choice, create_option # Slash Command features
|
|
import logging
|
|
# logger and handler
|
|
from dev import configFile, yaml_load, yaml_dump
|
|
|
|
##### Actions for the bot to take whenever there is a new role created.
|
|
|
|
class on_guild_role_create(commands.Cog):
|
|
def __init__(self, client):
|
|
self.client = client
|
|
|
|
@commands.Cog.listener()
|
|
async def on_guild_role_create(self, role):
|
|
conf = yaml_load(configFile)
|
|
#### Bot will only respond if the role is not a bot-managed role, and the role is an admin role
|
|
if not (role.is_bot_managed() or role.is_integration()) and role.permissions.administrator:
|
|
conf[str(role.guild.id)]['adminroles'].append(role.id)
|
|
yaml_dump(conf, configFile)
|
|
#### If the role is created with admin privileges, the bot adds the role to its configs.
|
|
|
|
def setup(client):
|
|
client.add_cog(on_guild_role_create(client)) |