LIREN
@LIREN
Пунктумофоб

Как сделать проверку на роль в ECONOMIC боте (collect-income)?

Ребята, я пока что самоучка и мне нужна ваша помощь. Короче, мне нужно, что-бы когда человек пишет команду 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 работает, а после её - нет.
Хелп ми плиз
  • Вопрос задан
  • 73 просмотра
Пригласить эксперта
Ответы на вопрос 1
SoreMix
@SoreMix Куратор тега Python
yellow
Неужели в гугле по запросу "вхождение элемента в список python" нет ответа в первой ссылке

if arg in ['Барыга', 'барыга', 'Барыгу', 'барыгу']:
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы