isinstance
может только сказать, является ли error
объектом MissingRole
, но не представляет собой конкретную c отсутствующую роль. Вы должны выделить это в отдельный чек
@say.error
async def say_error(ctx, error):
if isinstance(error, commands.MissingRole):
if error.missing_role.id == 730356075689410570:
await ctx.send(f'`You dont have {error.missing_role} role..')
else:
await ctx.send("You are missing some other role")
else:
raise error # if we can't handle the error, bubble it back up