From 73562b35700d153ba9ae3e2f10f3c40cc2b612b8 Mon Sep 17 00:00:00 2001 From: Baipyrus Date: Wed, 28 Feb 2024 20:50:34 +0100 Subject: [PATCH] apply permission overwrites from parent channel --- events/channels/voiceStateUpdate.js | 26 +++----------------------- 1 file changed, 3 insertions(+), 23 deletions(-) diff --git a/events/channels/voiceStateUpdate.js b/events/channels/voiceStateUpdate.js index 700270a..7d33a76 100644 --- a/events/channels/voiceStateUpdate.js +++ b/events/channels/voiceStateUpdate.js @@ -1,7 +1,6 @@ import { ChannelType, Events, - PermissionFlagsBits, GuildMember, GuildChannelManager, GuildChannel, @@ -9,22 +8,6 @@ import { } from 'discord.js'; import { VoiceChannel } from '../../database.js'; -const vcPermissionOverwrites = [ - PermissionFlagsBits.ReadMessageHistory, - PermissionFlagsBits.PrioritySpeaker, - PermissionFlagsBits.ManageMessages, - PermissionFlagsBits.ManageChannels, - PermissionFlagsBits.DeafenMembers, - PermissionFlagsBits.SendMessages, - PermissionFlagsBits.ViewChannel, - PermissionFlagsBits.MuteMembers, - PermissionFlagsBits.MoveMembers, - PermissionFlagsBits.Connect, - PermissionFlagsBits.Stream, - PermissionFlagsBits.UseVAD, - PermissionFlagsBits.Speak -]; - /** * Function that either creates a new custom channel or gets an existing one registered in the database. * @param {GuildMember} member The member that caused this event. @@ -46,16 +29,13 @@ const getChannel = async (member, guildChs, channel) => { // Create private channel with all permissions const name = member.user.username; const chName = `${name}${name.toLowerCase().endsWith('s') ? "'" : "'s"} channel`; + // Get permissions from parent + const vcPermOver = channel.parent.permissionOverwrites.cache.get(member.id); const privCh = await guildChs.create({ name: chName, parent: channel.parent, type: ChannelType.GuildVoice, - permissionOverwrites: [ - { - id: member.id, - allow: vcPermissionOverwrites - } - ] + permissionOverwrites: [vcPermOver] }); // Save newly created channel