This commit is contained in:
bot
2024-03-25 10:14:57 +03:00
parent c3140403b5
commit 78be10a88b
4 changed files with 12 additions and 6 deletions

View File

@@ -1,4 +1,4 @@
__version__ = '0.0.7' __version__ = '0.0.8'
__title__ = "Pisya_bot" __title__ = "Pisya_bot"
__author__ = "baconborn" __author__ = "baconborn"
@@ -13,4 +13,4 @@ class VersionInfo(NamedTuple):
serial: int 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)

View File

@@ -57,6 +57,8 @@ class Admin(commands.Cog, name='Admin'):
bot_role = read_json(member.guild.id, 'bot_role') # Get bot role bot_role = read_json(member.guild.id, 'bot_role') # Get bot role
guest_role = read_json(member.guild.id, 'guest_role') # Get guest 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 bot_role or guest_role:
if member.bot == 0: if member.bot == 0:
role = disnake.utils.get(member.guild.roles, id=guest_role) 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) @commands.has_permissions(administrator=True)
async def set_guest_role(self, inter: disnake.ApplicationCommandInteraction, role): 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 write_json(inter.guild.id, "guest_role", role.id)
await inter.response.send_message(f"Set up bot role to: `{role.name}`", ephemeral=True) await inter.response.send_message(f"Set up bot role to: `{role.name}`", ephemeral=True)

View File

@@ -3,6 +3,7 @@ import random
import disnake import disnake
from disnake import OptionChoice, Option, OptionType, Member, VoiceState from disnake import OptionChoice, Option, OptionType, Member, VoiceState
from disnake.ext import commands from disnake.ext import commands
from disnake.utils import get
from lib.Logger import logger from lib.Logger import logger
from lib.Player import play_audio from lib.Player import play_audio
@@ -28,14 +29,14 @@ class Audio(commands.Cog, name='Audio'):
else: else:
# Prepare list of audio # Prepare list of audio
from lib.Comands import read_json 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 = [] audio: list = []
for _a in ListGenerator('audio'): for _a in ListGenerator('audio'):
audio.append(_a.name) audio.append(_a.name)
if len(member.roles) == 1 or _role is None: if len(member.roles) == 1 or _role is None:
logger.info('Skip playing by role') 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') logger.info('Play audio from list by role')
await play_audio(f'audio/{random.choice(audio)}', self.bot, after.channel) await play_audio(f'audio/{random.choice(audio)}', self.bot, after.channel)
else: else:

View File

@@ -9,7 +9,7 @@ from os import getenv
from disnake.ext import commands 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 Reads Json file to determite config strings
:param guild: ID of Guild :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): 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: with open(getenv('CONF_FILE'), encoding='utf-8') as f:
try: try:
_json = load(f) _json = load(f)
@@ -45,7 +46,8 @@ async def write_json(guild: int, param_name: str, param: str or int):
except KeyError: except KeyError:
_json.update({f'{guild}': {}}) _json.update({f'{guild}': {}})
_guild = _json[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: with open(getenv('CONF_FILE'), 'w', encoding='utf-8') as f:
dump(_json, f, indent=4) dump(_json, f, indent=4)