Merge pull request #59 from r-Norge/feature/add_more_type_hints

Feature/add more type hints
This commit is contained in:
Ev-1 authored and GitHub committed 2022-10-10 21:42:01 +02:00
commit 8b573a147a
4 files changed
+35 -32

No files matched your search

+2 -1
View File
@@ -74,7 +74,8 @@ class CogManager(commands.Cog):
@commands.is_owner()
async def _shutdown(self, ctx):
"""Logs out and stops."""
self.bot.lavalink.player_manager.players.clear()
if lavalink := self.bot.lavalink:
lavalink.player_manager.players.clear()
await self.bot.close()
+5 -5
View File
@@ -52,14 +52,14 @@ class Misc(commands.Cog):
Info about the music player
"""
embed = discord.Embed(title='{music.title}', color=ctx.me.color)
lavalink = self.bot.lavalink
listeners = 0
for guild, player in lavalink.player_manager.players.items():
listeners += len(player.listeners)
if lavalink := self.bot.lavalink:
for _, player in lavalink.player_manager.players.items():
listeners += len(player.listeners)
embed.add_field(name='{music.players}', value=f'{len(lavalink.player_manager.players)}')
embed.add_field(name='{music.listeners}', value=f'{listeners}')
embed.add_field(name='{music.players}', value=f'{len(lavalink.player_manager.players)}')
embed.add_field(name='{music.listeners}', value=f'{listeners}')
embed = ctx.localizer.format_embed(embed)
await ctx.send(embed=embed)
+15 -16
View File
@@ -4,6 +4,7 @@ import lavalink
from discord.ext import commands
import codecs
from typing import Optional
import yaml
@@ -30,6 +31,7 @@ class NodeManager(commands.Cog):
if self.bot.lavalink is None and self.bot.user:
self.bot.lavalink = lavalink.Client(self.bot.user.id, player=MixPlayer)
self.lavalink = self.bot.lavalink
self.load_nodes_from_file()
@@ -52,10 +54,7 @@ class NodeManager(commands.Cog):
name_cache = []
new_nodes = []
if self.bot.lavalink is None:
return new_nodes
for node in self.bot.lavalink.node_manager.nodes:
for node in self.lavalink.node_manager.nodes:
name_cache.append(node.name)
self.logger.debug("BEFORE")
@@ -63,7 +62,7 @@ class NodeManager(commands.Cog):
if node['name'] in name_cache:
continue
self.bot.lavalink.add_node(**node)
self.lavalink.add_node(**node)
self.logger.debug("Adding Lavalink node: %s on %s with the port %s in %s" % (
node['name'], node['host'],
@@ -140,24 +139,24 @@ class NodeManager(commands.Cog):
@_node.command(name='add')
@commands.is_owner()
async def _add(self, ctx, host, port, password, region, name=None):
if name in [n.name for n in self.bot.lavalink.node_manager.nodes]:
async def _add(self, ctx, host: str, port: int, password: str, region, name: Optional[str] = None):
if name in [n.name for n in self.lavalink.node_manager.nodes]:
return await ctx.send("A node with that name already exists")
self.bot.lavalink.add_node(host, port, password, region, name=name)
self.lavalink.add_node(host, port, password, region, name=name)
self.logger.debug("Adding Lavalink node: %s on %s with the port %s in %s" % (host, port, region, name,))
embed = await self._node_presenter(ctx, {'host': host, 'port': port, 'password': password,
'region': region, 'name': name})
embed.title = 'Added new node!'
self.settings.set('lavalink', 'nodes', [self.get_node_properties(n) for
n in self.bot.lavalink.node_manager.nodes])
n in self.lavalink.node_manager.nodes])
await ctx.send(embed=embed)
@_node.command(name='list')
@commands.is_owner()
async def list_nodes(self, ctx):
embed = await self._node_presenter(ctx, self.bot.lavalink.node_manager.nodes)
embed = await self._node_presenter(ctx, self.lavalink.node_manager.nodes)
embed.title = 'Lavalink nodes attatched to this bot:'
await ctx.send(embed=embed)
@@ -165,8 +164,8 @@ class NodeManager(commands.Cog):
@commands.is_owner()
async def _remove(self, ctx, node):
sent_feedback = False
for _node in self.bot.lavalink.node_manager.nodes:
if len(self.bot.lavalink.node_manager.nodes) <= 1:
for _node in self.lavalink.node_manager.nodes:
if len(self.lavalink.node_manager.nodes) <= 1:
await ctx.send('Cannot remove the last node')
sent_feedback = True
break
@@ -175,11 +174,11 @@ class NodeManager(commands.Cog):
embed = await self._node_presenter(ctx, _node)
embed.title = 'Removed node from bot'
await ctx.send(embed=embed)
self.bot.lavalink.node_manager.remove_node(_node)
self.lavalink.node_manager.remove_node(_node)
self.logger.info("Removed Lavalink node: %s, %s" % (_node.name, _node.host))
self.settings.set('lavalink', 'nodes', [self.get_node_properties(n) for
n in self.bot.lavalink.node_manager.nodes])
n in self.lavalink.node_manager.nodes])
if not sent_feedback:
await ctx.send('No node found')
@@ -187,7 +186,7 @@ class NodeManager(commands.Cog):
@_node.command(name='change')
@commands.is_owner()
async def _nodechange(self, ctx, node=None):
player = self.bot.lavalink.player_manager.get(ctx.guild.id)
player = self.lavalink.player_manager.get(ctx.guild.id)
if not player:
return
@@ -198,7 +197,7 @@ class NodeManager(commands.Cog):
else:
newnode = None
for _node in self.bot.lavalink.node_manager.nodes:
for _node in self.lavalink.node_manager.nodes:
if (_node.name or _node.host) == node:
newnode = _node
+13 -10
View File
@@ -2,9 +2,12 @@
import discord
from discord.ext import commands
from typing import Optional
from bot import MusicBot
from ..utils import checks
from ..utils.settingsmanager import Settings as SettingsManager
from ..utils.userinteraction import ClearOn, Scroller
from .helpformatter import commandhelper
@@ -12,7 +15,7 @@ from .helpformatter import commandhelper
class Settings(commands.Cog):
def __init__(self, bot: MusicBot):
self.bot: MusicBot = bot
self.settings = self.bot.settings
self.settings: SettingsManager = self.bot.settings
def format_prefixes(self, prefixes):
if prefixes is None:
@@ -92,8 +95,8 @@ class Settings(commands.Cog):
if textchannels := self.bot.settings.get(ctx.guild, 'channels.text'):
embed = discord.Embed(title='Music command channels set', color=ctx.me.color)
channels = [ctx.guild.get_channel(channel) for channel in textchannels]
mentioned = [channel.mention for channel in channels if channel is not None]
configured_channels = [ctx.guild.get_channel(channel) for channel in textchannels]
mentioned = [channel.mention for channel in configured_channels if channel is not None]
embed.description = ', '.join(mentioned)
await ctx.send(embed=embed)
else:
@@ -112,8 +115,8 @@ class Settings(commands.Cog):
if musicchannels := self.bot.settings.get(ctx.guild, 'channels.music'):
embed = discord.Embed(title='Music channels set', color=ctx.me.color)
channels = [ctx.guild.get_channel(channel) for channel in musicchannels]
mentioned = [channel.name for channel in channels if channel is not None]
configured_channels = [ctx.guild.get_channel(channel) for channel in musicchannels]
mentioned = [channel.name for channel in configured_channels if channel is not None]
embed.description = ', '.join(mentioned)
await ctx.send(embed=embed)
else:
@@ -132,8 +135,8 @@ class Settings(commands.Cog):
if listenchannels := self.bot.settings.get(ctx.guild, 'channels.listen_only'):
embed = discord.Embed(title='Listen only channels set', color=ctx.me.color)
channels = [ctx.guild.get_channel(channel) for channel in listenchannels]
mentioned = [channel.name for channel in channels if channel is not None]
configured_channels = [ctx.guild.get_channel(channel) for channel in listenchannels]
mentioned = [channel.name for channel in configured_channels if channel is not None]
embed.description = ', '.join(mentioned)
await ctx.send(embed=embed)
else:
@@ -152,8 +155,8 @@ class Settings(commands.Cog):
if djroles := self.bot.settings.get(ctx.guild, 'roles.dj'):
embed = discord.Embed(title='DJ roles set to', color=ctx.me.color)
roles = [ctx.guild.get_role(role) for role in djroles]
mentioned = [role.name for role in roles if role is not None]
configured_roles = [ctx.guild.get_role(role) for role in djroles]
mentioned = [role.name for role in configured_roles if role is not None]
embed.description = ', '.join(mentioned)
await ctx.send(embed=embed)
else:
@@ -163,7 +166,7 @@ class Settings(commands.Cog):
@checks.is_admin()
@commands.guild_only()
@_set.command(name='maxduration')
async def set_max_track_duration(self, ctx, duration: int = None):
async def set_max_track_duration(self, ctx, duration: Optional[int] = None):
self.bot.settings.set(ctx.guild, 'duration.max', duration)
if duration := self.bot.settings.get(ctx.guild, 'duration.max'):