mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-18 04:23:31 +01:00
@@ -62,7 +62,7 @@ class ChannelPermissions {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ad(this.canCreateInstantInvite, 0);
|
ad(this.createInstantInvite, 0);
|
||||||
ad(this.manageRoles, 3);
|
ad(this.manageRoles, 3);
|
||||||
ad(this.manageChannels, 4);
|
ad(this.manageChannels, 4);
|
||||||
ad(this.readMessages, 10);
|
ad(this.readMessages, 10);
|
||||||
|
|||||||
@@ -66,7 +66,14 @@ class Member extends User{
|
|||||||
|
|
||||||
var affectingOverwrites = [];
|
var affectingOverwrites = [];
|
||||||
var affectingMemberOverwrites = [];
|
var affectingMemberOverwrites = [];
|
||||||
|
|
||||||
|
for(var overwrite of channel.roles) {
|
||||||
|
if(overwrite.id == this.serverID) { // @everyone for channel
|
||||||
|
affectingOverwrites.push(overwrite);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
for(var overwrite of channel.roles){
|
for(var overwrite of channel.roles){
|
||||||
if(overwrite.id === this.id && overwrite.type === "member"){
|
if(overwrite.id === this.id && overwrite.type === "member"){
|
||||||
affectingMemberOverwrites.push(overwrite);
|
affectingMemberOverwrites.push(overwrite);
|
||||||
@@ -74,14 +81,13 @@ class Member extends User{
|
|||||||
affectingOverwrites.push(overwrite);
|
affectingOverwrites.push(overwrite);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if(affectingOverwrites.length === 0 && affectingMemberOverwrites.length === 0){
|
if(affectingOverwrites.length === 0 && affectingMemberOverwrites.length === 0){
|
||||||
return this.evalPerms;
|
return this.evalPerms;
|
||||||
}
|
}
|
||||||
|
|
||||||
var finalPacked = (affectingOverwrites.length !== 0 ? affectingOverwrites[0].packed : affectingMemberOverwrites[0].packed);
|
var finalPacked = (affectingOverwrites.length !== 0 ? affectingOverwrites[0].packed : affectingMemberOverwrites[0].packed);
|
||||||
|
|
||||||
for(var overwrite of affectingOverwrites){
|
for(var overwrite of affectingOverwrites){
|
||||||
finalPacked = finalPacked & ~overwrite.deny;
|
finalPacked = finalPacked & ~overwrite.deny;
|
||||||
finalPacked = finalPacked | overwrite.allow;
|
finalPacked = finalPacked | overwrite.allow;
|
||||||
|
|||||||
Reference in New Issue
Block a user