diff options
| author | Max Isom <[email protected]> | 2020-03-16 20:14:15 -0500 |
|---|---|---|
| committer | Max Isom <[email protected]> | 2020-03-16 20:14:15 -0500 |
| commit | ac21b5657ba47ef9081c80424d5f8ae39b149f35 (patch) | |
| tree | 1ba121343bb3ae33b6345afc217e2c29b92c23a9 /src/commands | |
| parent | 32cb3ca4ae6a419f64e413ba5c8c543593a927b1 (diff) | |
| download | muse-ac21b5657ba47ef9081c80424d5f8ae39b149f35.tar.xz muse-ac21b5657ba47ef9081c80424d5f8ae39b149f35.zip | |
Add auto disconnect
Diffstat (limited to 'src/commands')
| -rw-r--r-- | src/commands/play.ts | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/commands/play.ts b/src/commands/play.ts index b354e5a..4ba04bd 100644 --- a/src/commands/play.ts +++ b/src/commands/play.ts @@ -36,6 +36,13 @@ export default class implements Command { } public async execute(msg: Message, args: string []): Promise<void> { + const [targetVoiceChannel, nInChannel] = getMostPopularVoiceChannel(msg.guild!); + + if (nInChannel === 0) { + await msg.channel.send('error: all voice channels are empty'); + return; + } + const queue = this.queueManager.get(msg.guild!.id); if (args.length === 0) { @@ -50,9 +57,7 @@ export default class implements Command { return; } - const channel = getMostPopularVoiceChannel(msg.guild!); - - await this.playerManager.get(msg.guild!.id).connect(channel); + await this.playerManager.get(msg.guild!.id).connect(targetVoiceChannel); await this.playerManager.get(msg.guild!.id).play(); await msg.channel.send('play resuming'); @@ -252,9 +257,7 @@ export default class implements Command { await res.stop('song(s) queued'); if (this.playerManager.get(msg.guild!.id).status === STATUS.DISCONNECTED) { - const channel = getMostPopularVoiceChannel(msg.guild!); - - await this.playerManager.get(msg.guild!.id).connect(channel); + await this.playerManager.get(msg.guild!.id).connect(targetVoiceChannel); await this.playerManager.get(msg.guild!.id).play(); } |
