Compare commits
1 Commits
master
...
fix-permis
Author | SHA1 | Date |
---|---|---|
fanyx | cb5f9f195f |
24
main.py
24
main.py
|
@ -13,17 +13,17 @@ cinemas = dict()
|
|||
async def cinema(ctx):
|
||||
pass
|
||||
|
||||
|
||||
@cinema.command("create")
|
||||
@commands.bot_has_permissions(manage_channels=True)
|
||||
async def cinema_create(ctx, name, link=None):
|
||||
# create permissions overwrites, so noone is allowed to join initially
|
||||
overwrites = {
|
||||
ctx.guild.default_role: PermissionOverwrite(connect=False)
|
||||
}
|
||||
|
||||
overwrites = { ctx.guild.default_role: PermissionOverwrite(connect=False, view_channel=True) }
|
||||
bot_overwrite = PermissionOverwrite(view_channel=True, manage_channels=True, manage_permissions=True, connect=True)
|
||||
|
||||
# create voice channel and register
|
||||
voice_channel = await ctx.guild.create_voice_channel(name, overwrites=overwrites, category=ctx.channel.category)
|
||||
cinemas[ctx.message.id] = voice_channel
|
||||
await voice_channel.set_permissions(bot.user, overwrite=bot_overwrite)
|
||||
|
||||
# create embed for series/movie
|
||||
# not implemented yet.
|
||||
|
@ -32,5 +32,17 @@ async def cinema_create(ctx, name, link=None):
|
|||
announcement = await ctx.channel.send("React to this.")
|
||||
await announcement.add_reaction("\U0001F3AB")
|
||||
|
||||
# create cinema entry in cache
|
||||
cinemas[announcement.id] = voice_channel.id
|
||||
|
||||
|
||||
@bot.listen('on_reaction_add')
|
||||
async def on_reaction_registered_messages(reaction, user):
|
||||
if reaction.message.id in cinemas.keys() and user.id != bot.user.id:
|
||||
voice_channel = bot.get_channel(cinemas.pop(reaction.message.id))
|
||||
await voice_channel.delete(reason="Cinema was closed.")
|
||||
print(cinemas)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
bot.run('')
|
||||
bot.run('MzU4NTU5Njc3MDgyMTA3OTA0.Wbz8uA.jCvxjFY6NgWhXikqnZC5DWuQAa8')
|
Loading…
Reference in New Issue