#discord.py #discord.py-rewrite #python-3.8
#discord.py #discord.py-переписать #python-3.8
Вопрос:
Это код, который я сейчас использую… Это было прекрасно, но я действительно хочу отменить запрет с помощью ID, потому что лично для меня это намного проще.
Текущая команда находится в файле Cog…
import discord
from discord.ext import commands
class unban(commands.Cog):
def __init__(self, client):
self.client = client
@commands.command()
@commands.has_permissions(administrator=True)
async def unban(self, ctx, *, member : discord.Member):
banned_users = await ctx.guild.bans()
member_name, member_discriminator = member.split("#")
for ban_entry in banned_users:
user = ban_entry.user
if (user.name, user.discriminator) == (member_name, member_discriminator):
await ctx.guild.unban(user)
unban = discord.Embed(title='UnBan Hammer Has Spoken! :boom:', description=f'**Moderator:** {ctx.author}n **User UnBanned:** {member}n', color=0x10940b)
unban.set_author(name="Moderating Action", icon_url=ctx.author.avatar_url)
await ctx.send(embed=unban)
return
def setup(client):
client.add_cog(unban(client))
Итак, есть какие-нибудь идеи???
Ответ №1:
async def unban(self, ctx, id: int) :
user = await client.fetch_user(id)
await ctx.guild.unban(user)
await ctx.send(f'{user} has been unbanned')
это должно сработать для вас, вы можете персонализировать еще больше, но это только основной код, который вам нужен.
Ответ №2:
Попробуйте
async def unban(self, ctx, *, member : discord.User):
await ctx.guild.unban(discord.Object(id = member.id))
unban = discord.Embed(title='UnBan Hammer Has Spoken! :boom:', description=f'**Moderator:** {ctx.author}n **User UnBanned:** {member}n', color=0x10940b)
unban.set_author(name="Moderating Action", icon_url=ctx.author.avatar_url)
await ctx.send(embed=unban)
Комментарии:
1. У меня это не сработало… Спасибо за помощь, я ценю это.
2. Как это не сработало? Можете ли вы показать мне, как вы это реализовали? Я могу помочь, если вы можете показать мне это.
3. Это не сработает, потому что ваш конвертер пытается преобразовать его в a
discord.Member
, что невозможно. Когда человек забанен, он больше не является частью этой гильдии, поэтому он не может бытьguild member
.