Jump to content

Postagens Recomendadas

Eu tô fazendo um bot no Discord de interação ele basicamente fazer as perguntas e os usuários respondia depois ele pegava as informações como nome no jogo e ID e colocava como apelido era pra fica nesse formato (RC "nome no jogo" - "ID"), só que a única coisa que tava indo para o o apelido era (RC ""_"") uma pessoa me sugeriu colocar prints no código para ver oq estava acontecendo eu coloquei e é isso que parece e minha mente deu um branco não sei mais oq fazer 🤡

 

Código fonte (com os prints):

import discord

from discord.ext import commands

from asyncio import sleep

 

intents = discord.Intents.default()

intents.members = True

 

bot = commands.Bot(command_prefix='!', intents=intents)

 

member_info = {} # Dicionário para armazenar as informações dos membros

 

@bot.event

async def on_ready():

    print(f'Bot está online. Conectado como {bot.user.name}')

 

@bot.event

async def on_member_join(member):

    channel = discord.utils.get(member.guild.channels, name='bem-vindo') # Nome do canal de boas-vindas

    await channel.send(f'Bem-vindo, {member.mention}! Por favor, diga o seu nome no jogo:')

    print(f'Membro: {member} entrou no servidor') # Impressão para depuração

 

    # Função para verificar se a mensagem é do membro que entrou no servidor

    def check(m):

        return m.channel == channel and m.author == member

 

    try:

        async def get_response(prompt):

            await channel.send(prompt)

            response_msg = await bot.wait_for('message', check=check, timeout=30)

            return response_msg.content.strip()

 

        nome_jogo = await get_response("Por favor, diga o seu nome no jogo:")

        print(f'Nome do jogo fornecido: {nome_jogo}') # Impressão para depuração

 

        id_jogo = await get_response("Por favor, informe o seu ID:")

        print(f'ID do jogo fornecido: {id_jogo}') # Impressão para depuração

 

        responsavel = await get_response("Quem é o responsável pela sua contratação?")

        print(f'Responsável fornecido: {responsavel}') # Impressão para depuração

 

        await channel.send("Muito bem! Seu acesso foi liberado. Tenha um ótimo RP!")

 

        # Atualizar apelido no servidor

        member_info[member.id] = {'nome_jogo': nome_jogo, 'id_jogo': id_jogo, 'responsavel': responsavel}

        print(f'Informações do membro atualizadas: {member_info[member.id]}') # Impressão para depuração

 

        nickname = f'RC "{nome_jogo}" - "{id_jogo}"'

        print(f'Apelido a ser atualizado: {nickname}') # Impressão para depuração

        await member.edit(nick=nickname)

        print('Apelido atualizado com sucesso!') # Impressão para depuração

 

        # Aguardar 10 segundos e apagar as mensagens

        await sleep(10)

        await channel.purge(limit=5) # Define o número de mensagens que serão apagadas

 

    except Exception as e:

        print(f'Ocorreu um erro: {e}')

 

bot.run('')

 

E essa é a resposta dos prints:

 

2023-07-19 10:30:07 WARNING discord.ext.commands.bot Privileged message content intent is missing, commands may not work as expected.

2023-07-19 10:30:07 INFO discord.client logging in using static token

2023-07-19 10:30:08 INFO discord.gateway Shard ID None has connected to Gateway (Session ID: 3079c6e760e3d37bdd3916a7bddddcee).

Bot está online. Conectado como BOT TEXT

Membro: purple2752 entrou no servidor

Nome do jogo fornecido: 

ID do jogo fornecido: 

Responsável fornecido: 

Informações do membro atualizadas: {'nome_jogo': '', 'id_jogo': '', 'responsavel': ''}

Apelido a ser atualizado: RC "" - ""

Apelido atualizado com sucesso!

 

Se tiver como alguém me ajudar eu agradeço e urgente por favor

Link to comment
Compartilhe em outros sites

Crie uma conta ou entre para comentar 😀

Você precisa ser um membro para deixar um comentário.

Crie a sua conta

Participe da nossa comunidade, crie sua conta.
É bem rápido!

Criar minha conta agora

Entrar

Você já tem uma conta?
Faça o login agora.

Entrar agora


×
×
  • Create New...