From 79cd2b48e7cbf30b5f6b568ecedd28becf815120 Mon Sep 17 00:00:00 2001 From: Akinori <90612019+Akinori107@users.noreply.github.com> Date: Tue, 15 Sep 2026 03:45:02 -0300 Subject: [PATCH] fix: wire setDucking into PlayerManager setDucking was declared in the route interface and already implemented on Player, but PlayerManager never got the bridging method, so toggling ducking crashed with a 500 --- dist/src/managers/playerManager.js | 10 ++++++++++ src/managers/playerManager.ts | 15 +++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/dist/src/managers/playerManager.js b/dist/src/managers/playerManager.js index b09d4192..ac28489d 100644 --- a/dist/src/managers/playerManager.js +++ b/dist/src/managers/playerManager.js @@ -437,6 +437,16 @@ export default class PlayerManager { const player = this.getLocalPlayerOrThrow(this.getPlayerKey(guildId)); return player.setLoudnessNormalizer(enabled); } + /** + * Enables or disables auto-ducking. + */ + async setDucking(guildId, enabled) { + if (this.isCluster) { + return this.runClusterMutation(guildId, 'setDucking', [enabled]); + } + const player = this.getLocalPlayerOrThrow(this.getPlayerKey(guildId)); + return player.setDucking(enabled); + } /** * Applies voice state updates to the player. */ diff --git a/src/managers/playerManager.ts b/src/managers/playerManager.ts index 1649cc9c..f860636c 100644 --- a/src/managers/playerManager.ts +++ b/src/managers/playerManager.ts @@ -815,6 +815,21 @@ export default class PlayerManager { return player.setLoudnessNormalizer(enabled) } + /** + * Enables or disables auto-ducking. + */ + async setDucking( + guildId: string, + enabled: boolean + ): Promise { + if (this.isCluster) { + return this.runClusterMutation(guildId, 'setDucking', [enabled]) + } + + const player = this.getLocalPlayerOrThrow(this.getPlayerKey(guildId)) + return player.setDucking(enabled) + } + /** * Applies voice state updates to the player. */