From debff9bd67f30ddf4dd562a44fcae3652cc132fc Mon Sep 17 00:00:00 2001 From: Jamie_ <59361355+JamieGrimwood@users.noreply.github.com> Date: Wed, 16 Mar 2022 17:17:12 +0000 Subject: [PATCH 1/3] Added v13 support --- src/DanBotShards.js | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/DanBotShards.js b/src/DanBotShards.js index ea4d262..1470929 100644 --- a/src/DanBotShards.js +++ b/src/DanBotShards.js @@ -36,8 +36,9 @@ class ShardingClient { this.manager = manager; // General config - this.v11 = this.discord.version <= "12.0.0"; - this.v12 = this.discord.version >= "12.0.0"; + this.v11 = this.discord.version <= "13.0.0"; + this.v12 = this.discord.version <= "13.0.0"; + this.v13 = this.discord.version >= "13.0.0"; this.activeUsers = []; this.commandsRun = 0; @@ -157,6 +158,20 @@ class ShardingClient { } } +// V12 sharding gets +async function getGuildCountV13(manager) { + return (await manager.fetchClientValues("guilds.cache.size")).reduce( + (prev, current) => prev + current, + 0 + ); +} + +async function getUserCountV13(manager) { + const memberNum = await manager.broadcastEval(c => c.guilds.cache.reduce((acc, guild) => acc + guild.memberCount, 0)); + return memberNum.reduce((prev, memberCount) => prev + memberCount, 0); +} +// end + // V12 sharding gets async function getGuildCountV12(manager) { return (await manager.fetchClientValues("guilds.cache.size")).reduce( From 7b4e5952ae6e69ae5a818a236f2d0c4db74ff8ef Mon Sep 17 00:00:00 2001 From: Jamie_ <59361355+JamieGrimwood@users.noreply.github.com> Date: Wed, 16 Mar 2022 17:19:33 +0000 Subject: [PATCH 2/3] Make it actually use v13 --- src/DanBotShards.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/DanBotShards.js b/src/DanBotShards.js index 1470929..e4e027e 100644 --- a/src/DanBotShards.js +++ b/src/DanBotShards.js @@ -90,8 +90,13 @@ class ShardingClient { let guild_count = 0; let user_count = 0; - // V12 code - if (this.v12) { + + if (this.v13) { + // V13 code + guild_count = await getGuildCountV13(this.manager); + user_count = await getUserCountV13(this.manager); + } else if (this.v12) { + // V12 code guild_count = await getGuildCountV12(this.manager); user_count = await getUserCountV12(this.manager); } else if (this.v11) { From b8496d3f08305b498873fffa4571835c7356ede9 Mon Sep 17 00:00:00 2001 From: Jamie_ <59361355+JamieGrimwood@users.noreply.github.com> Date: Wed, 16 Mar 2022 17:30:34 +0000 Subject: [PATCH 3/3] Updating the broadcast eval --- src/DanBotShards.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/DanBotShards.js b/src/DanBotShards.js index e4e027e..b7a16fd 100644 --- a/src/DanBotShards.js +++ b/src/DanBotShards.js @@ -106,9 +106,9 @@ class ShardingClient { } // Get client id - let id = (await this.manager.broadcastEval("this.user.id"))[0]; + let id = (await this.manager.broadcastEval(c => c.user.id))[0]; // Get client info - let info = (await this.manager.broadcastEval("this.user"))[0]; + let info = (await this.manager.broadcastEval(c => c.user))[0]; // Post data let requestBody = {