mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-10 00:23:30 +01:00
Fix inconsistency with Channel Creation: CustomStructures (#2121)
* Fix inconsistancy with Channel Creation * Because static get is a function, it thinks we are create a new instance based on that function, rather than the returned class...
This commit is contained in:
committed by
Schuyler Cebulskie
parent
f3817e328b
commit
dcf48e2225
@@ -66,32 +66,37 @@ class Channel extends Base {
|
||||
}
|
||||
|
||||
static create(client, data, guild) {
|
||||
const DMChannel = require('./DMChannel');
|
||||
const GroupDMChannel = require('./GroupDMChannel');
|
||||
const TextChannel = require('./TextChannel');
|
||||
const VoiceChannel = require('./VoiceChannel');
|
||||
const CategoryChannel = require('./CategoryChannel');
|
||||
const GuildChannel = require('./GuildChannel');
|
||||
const Structures = require('../util/Structures');
|
||||
let channel;
|
||||
if (data.type === ChannelTypes.DM) {
|
||||
const DMChannel = Structures.get('DMChannel');
|
||||
channel = new DMChannel(client, data);
|
||||
} else if (data.type === ChannelTypes.GROUP) {
|
||||
const GroupDMChannel = Structures.get('GroupDMChannel');
|
||||
channel = new GroupDMChannel(client, data);
|
||||
} else {
|
||||
guild = guild || client.guilds.get(data.guild_id);
|
||||
if (guild) {
|
||||
switch (data.type) {
|
||||
case ChannelTypes.TEXT:
|
||||
case ChannelTypes.TEXT: {
|
||||
const TextChannel = Structures.get('TextChannel');
|
||||
channel = new TextChannel(guild, data);
|
||||
break;
|
||||
case ChannelTypes.VOICE:
|
||||
}
|
||||
case ChannelTypes.VOICE: {
|
||||
const VoiceChannel = Structures.get('VoiceChannel');
|
||||
channel = new VoiceChannel(guild, data);
|
||||
break;
|
||||
case ChannelTypes.CATEGORY:
|
||||
}
|
||||
case ChannelTypes.CATEGORY: {
|
||||
const CategoryChannel = Structures.get('CategoryChannel');
|
||||
channel = new CategoryChannel(guild, data);
|
||||
break;
|
||||
default:
|
||||
}
|
||||
default: {
|
||||
const GuildChannel = Structures.get('GuildChannel');
|
||||
channel = new GuildChannel(guild, data);
|
||||
}
|
||||
}
|
||||
guild.channels.set(channel.id, channel);
|
||||
}
|
||||
|
||||
@@ -61,8 +61,12 @@ class Structures {
|
||||
}
|
||||
|
||||
const structures = {
|
||||
Channel: require('../structures/Channel'),
|
||||
Emoji: require('../structures/Emoji'),
|
||||
DMChannel: require('../structures/DMChannel'),
|
||||
GroupDMChannel: require('../structures/GroupDMChannel'),
|
||||
TextChannel: require('../structures/TextChannel'),
|
||||
VoiceChannel: require('../structures/VoiceChannel'),
|
||||
CategoryChannel: require('../structures/CategoryChannel'),
|
||||
GuildChannel: require('../structures/GuildChannel'),
|
||||
GuildMember: require('../structures/GuildMember'),
|
||||
Guild: require('../structures/Guild'),
|
||||
|
||||
Reference in New Issue
Block a user