Compare commits

..

No commits in common. "c9fc740708c67a30781c7039d1a5a827bb1eb440" and "910638621191ad97a739269fa17cf3e92d3f159c" have entirely different histories.

1 changed files with 9 additions and 38 deletions

View File

@ -2,7 +2,7 @@
from hellmbot.env import ENV from hellmbot.env import ENV
from hellmbot.db import ServersDB from hellmbot.db import ServersDB
from discord import Intents, Member, VoiceState, Permissions, errors from discord import Intents, Member, VoiceState, Permissions
from discord.utils import oauth_url from discord.utils import oauth_url
from discord.ext import commands from discord.ext import commands
@ -39,7 +39,6 @@ async def on_ready() -> None:
""" """
Displays a link to add a bot to the server Displays a link to add a bot to the server
""" """
await bot.tree.sync()
client_id = ENV.CLIENT_ID.fget(None) client_id = ENV.CLIENT_ID.fget(None)
invite = oauth_url(client_id, permissions=Permissions( invite = oauth_url(client_id, permissions=Permissions(
manage_channels=True, manage_channels=True,
@ -48,34 +47,7 @@ async def on_ready() -> None:
print(f"Your bot invite link: {invite}") print(f"Your bot invite link: {invite}")
async def clear_channels(db: ServersDB) -> None: @bot.command()
"""
Clear previously created channels
:param db: Database
"""
channels = db.channels
for channel in channels:
channel = bot.get_channel(channel)
await channel.delete()
db.clear_channels()
async def create_group(server: commands.Context.guild, db: ServersDB) -> None:
"""
Creates a group of voice channels to move the user and adds their id to the database
:param server: Discord server
:param db: Database
"""
circles_count = ENV.CIRCLES_COUNT.fget(None)
group = await server.create_category(f"{circles_count} Circles of Hell")
for circle in range(circles_count):
vc = await server.create_voice_channel(f"{circle + 1} Circle", category=group)
db.add_channel(vc.id, circle + 1)
@bot.hybrid_command(name="create", description="Creates a group of vc to move users")
async def create(ctx: commands.Context) -> None: async def create(ctx: commands.Context) -> None:
""" """
Creates a group of voice channels to move the user and adds their id to the database Creates a group of voice channels to move the user and adds their id to the database
@ -84,14 +56,13 @@ async def create(ctx: commands.Context) -> None:
""" """
server = ctx.guild server = ctx.guild
db = ServersDB(server.id) db = ServersDB(server.id)
await ctx.send("Creating group...", ephemeral=True) circles_count = ENV.CIRCLES_COUNT.fget(None)
try: group = await server.create_category(f"{circles_count} Circles of Hell")
if db: if db:
await clear_channels(db) db.clear_channels()
await create_group(server, db) for circle in range(circles_count):
await ctx.send("Group was created! HF!", ephemeral=True) vc = await server.create_voice_channel(f"{circle + 1} Circle", category=group)
except errors.Any: db.add_channel(vc.id, circle + 1)
await ctx.send("An error occurred!", ephemeral=True)
user_before_channels = {} user_before_channels = {}