From 78be10a88ba7b3bf76e582412cf9bba46f940939 Mon Sep 17 00:00:00 2001 From: bot Date: Mon, 25 Mar 2024 10:14:57 +0300 Subject: [PATCH] v0.0.8 --- __init__.py | 4 ++-- cogs/admin.py | 3 +++ cogs/audio.py | 5 +++-- lib/Comands.py | 6 ++++-- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/__init__.py b/__init__.py index fdb53d9..fb7de8d 100644 --- a/__init__.py +++ b/__init__.py @@ -1,4 +1,4 @@ -__version__ = '0.0.7' +__version__ = '0.0.8' __title__ = "Pisya_bot" __author__ = "baconborn" @@ -13,4 +13,4 @@ class VersionInfo(NamedTuple): serial: int -version_info: VersionInfo = VersionInfo(major=0, minor=0, micro=7, releaselevel="alpha", serial=0) +version_info: VersionInfo = VersionInfo(major=0, minor=0, micro=8, releaselevel="alpha", serial=0) diff --git a/cogs/admin.py b/cogs/admin.py index b9223b3..0f5c26d 100644 --- a/cogs/admin.py +++ b/cogs/admin.py @@ -57,6 +57,8 @@ class Admin(commands.Cog, name='Admin'): bot_role = read_json(member.guild.id, 'bot_role') # Get bot role guest_role = read_json(member.guild.id, 'guest_role') # Get guest role + logger.info(f"Bot role: {bot_role} | Guest role: {guest_role}") + logger.info(f'type bot_role: {type(bot_role)} | type guest_role: {type(guest_role)}') if bot_role or guest_role: if member.bot == 0: role = disnake.utils.get(member.guild.roles, id=guest_role) @@ -77,6 +79,7 @@ class Admin(commands.Cog, name='Admin'): ) @commands.has_permissions(administrator=True) async def set_guest_role(self, inter: disnake.ApplicationCommandInteraction, role): + print(type(role.id)) await write_json(inter.guild.id, "guest_role", role.id) await inter.response.send_message(f"Set up bot role to: `{role.name}`", ephemeral=True) diff --git a/cogs/audio.py b/cogs/audio.py index c850d2c..2f5234d 100644 --- a/cogs/audio.py +++ b/cogs/audio.py @@ -3,6 +3,7 @@ import random import disnake from disnake import OptionChoice, Option, OptionType, Member, VoiceState from disnake.ext import commands +from disnake.utils import get from lib.Logger import logger from lib.Player import play_audio @@ -28,14 +29,14 @@ class Audio(commands.Cog, name='Audio'): else: # Prepare list of audio from lib.Comands import read_json - _role = await read_json(member.guild.id, 'tigger_role') + _role = get(member.guild.roles, id=read_json(member.guild.id, 'tigger_role')) audio: list = [] for _a in ListGenerator('audio'): audio.append(_a.name) if len(member.roles) == 1 or _role is None: logger.info('Skip playing by role') - elif any(str(role.id) in _role for role in member.roles): + elif _role in member.roles: logger.info('Play audio from list by role') await play_audio(f'audio/{random.choice(audio)}', self.bot, after.channel) else: diff --git a/lib/Comands.py b/lib/Comands.py index 8a66794..f067189 100644 --- a/lib/Comands.py +++ b/lib/Comands.py @@ -9,7 +9,7 @@ from os import getenv from disnake.ext import commands -async def read_json(guild: int, _param: str): +def read_json(guild: int, _param: str): """ Reads Json file to determite config strings :param guild: ID of Guild @@ -35,6 +35,7 @@ async def read_json(guild: int, _param: str): async def write_json(guild: int, param_name: str, param: str or int): + print(type(param)) with open(getenv('CONF_FILE'), encoding='utf-8') as f: try: _json = load(f) @@ -45,7 +46,8 @@ async def write_json(guild: int, param_name: str, param: str or int): except KeyError: _json.update({f'{guild}': {}}) _guild = _json[f'{guild}'] - _guild.update({f'{param_name}': f'{param}'}) + _guild.update({f'{param_name}': param}) + _json.update({f'{guild}': _guild}) with open(getenv('CONF_FILE'), 'w', encoding='utf-8') as f: dump(_json, f, indent=4)