Ребята, я пока что самоучка и мне нужна ваша помощь. Короче, мне нужно, что-бы когда человек пишет команду
m.собрать [роль], проверялось на наличие роли и срабатывало, а если нету именно этой роли, тогда ошибка.
@client.command(pass_context = True, aliases = ["снять"])
async def собрать( ctx, arg = None ):
await open_account(ctx.author)
users = await get_bank_data()
user = ctx.author
if arg == None:
await open_account(ctx.author)
embed = discord.Embed(
title=f'Зарплата.',
description=f"{user.name}, напишите роль, \nиз какой хотите снять зарплату (доход)! Только из ваших приобретённых!\n> Пример: **m.снять** депутат",
colour=discord.Colour.green()
)
await ctx.send(embed=embed)
# Барыга снять
if arg == ['Барыга', 'барыга', 'Барыгу', 'барыгу']:
role = discord.utils.find(lambda r: r.name == 'БАРЫГА ', ctx.message.server.roles)
if role in ctx.author.roles:
earnings = 50
await open_account(user)
embed = discord.Embed(
title=f'Зарплата.',
description=f"<@&946792879949492235>:\n> Собрано {earnings}!",
colour=discord.Colour.green()
)
await ctx.send(embed=embed)
users[str(user.id)]["wallet"] += earnings
with open('mainbank.json', "w") as f:
json.dump(users, f)
else:
embed = discord.Embed(
title=f'Зарплата.',
description=f"У вас нет такой роли!",
colour=discord.Colour.red()
)
await ctx.send(embed=embed)
Команда в которой if arg == None работает, а после её - нет.
Хелп ми плиз