From b72258cb608d4168ded168a33b9eb579792702fc Mon Sep 17 00:00:00 2001 From: vveeps <54472340+vveeps@users.noreply.github.com> Date: Thu, 28 Oct 2021 17:58:59 +0300 Subject: [PATCH] make player.destroy useful --- pomice/player.py | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/pomice/player.py b/pomice/player.py index 66597ca..99ae5f1 100644 --- a/pomice/player.py +++ b/pomice/player.py @@ -202,26 +202,24 @@ class Player(VoiceProtocol): await self._node.send(op="stop", guildId=str(self.guild.id)) async def disconnect(self, *, force: bool = False): - """Disconnects the player from voice and handles internal state cleanup.""" + """Disconnects the player from voice.""" try: await self.guild.change_voice_state(channel=None) finally: self.cleanup() self._is_connected = False self.channel = None - del self._node._players[self.guild.id] async def destroy(self): - """Disconnects the player and sends a call to destroy the player on Lavalink's end.""" + """Disconnects and destroys the player, and runs internal cleanup.""" try: await self.disconnect() except AttributeError: # 'NoneType' has no attribute '_get_voice_client_key' raised by self.cleanup() -> # assume we're already disconnected and cleaned up - assert self.channel is None \ - and not self.is_connected \ - and self.guild.id not in self._node._players + assert self.channel is None and not self.is_connected + del self._node._players[self.guild.id] await self._node.send(op="destroy", guildId=str(self.guild.id)) async def play(