Пытаясь помешать пользователю упоминать себя, когда они используют команду rob. Я пробовал, if message.author == user.mention
но он не работает.
if message.content.startswith('!rob'):
try:
if message.author == user.mention:
await client.send_message(message.channel, "{} you cant rob yourself! ".format(message.author.mention))
except:
pass
else:
if get_dollars(message.author) < 0:
await client.send_message(message.channel, "{} you can't even afford a gun!".format(message.author.mention))
finally:
for user in message.mentions:
if (get_dollars(user)) < 25:
await client.send_message(message.channel, "{} is too broke to rob ".format(user.mention))
elif steal == 1:
print("{} catches {} slippin and sticks them up for ${} ".format(message.author.mention, user.mention, stealdollars))
await client.send_message(message.channel, "{} catches {} slippin and sticks them up for ${} ".format(message.author.mention, user.mention, stealdollars))
remove_dollars(user, stealdollars)
add_dollars(message.author, stealdollars)
elif steal == 2:
print("{} gets arrested trying to rob {} and has to post $250 bail ".format(message.author.mention, user.mention))
await client.send_message(message.channel, "{} gets arrested trying to rob {} and has to post $250 bail ".format(message.author.mention, user.mention))
remove_dollars(message.author, 250)
elif steal >= 3:
print("{} kicks {} door down but doesn't find any cash ".format(message.author.mention, user.mention))
await client.send_message(message.channel, "{} kicks {} door down but doesn't find any cash ".format(message.author.mention, user.mention))
Вы можете сделать что-то вроде
if message.author in message.mentions:
message.author - это discord.Member, user.mention нет.
Возможно, попробуйте что-то вроде:
if message.author.id == user.id: # User IDs don't change.
await client.send_message(ctx.message.channel, "You cannot rob yourself")
Я надеюсь, что это помогло
message.author.id == user.mention.id
и он тоже не отправил сообщение.