将Replit用于discord bot

2024-07-03 06:19:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在制作一个Groot discord机器人,它应该在每次有人问它问题时都会增长。每一百个问题,格罗特就会上升一年。我使用的是replit,在编码方面我并没有那么先进

import os
import requests
import json
import random



client = discord.Client()

i_am_groot = ("Hey Groot", "Groot", "Twig", "Tree")


client = discord.Client()

groot_age = 0
groot_pings = 100

@client.event
async def on_ready():
  print('We have logged in as {0.user}'.format(client))

@client.event
async def on_message(message):
  if message.author == client.user:
        return
  if message.content.startswith(i_am_groot):
        await message.channel.send('I am groot')
        groot_pings = groot_pings + 1
        groot_age = groot_pings // 100
        await client.change_presence(activity=discord.Activity(type=discord.ActivityType.listening, name='Mr Blue Sky and Dancing | Age: ' + str(groot_age) + ' | Pings: ' + str(groot_pings)))
  if message.content.startswith ('grootage'):
        await message.channel.send ('Translation: ' + str(groot_age))
  if message.content.startswith ('grootpings'):
        await message.channel.send ('Translation: ' + str(groot_pings))



import keep_alive

keep_alive.keep_alive()
    



client.run(os.getenv('TOKEN'))

我得到这个错误:

[pyflakes] local variable 'groot_pings' defined in enclosing scope on line 19 referenced before assignment

但它是定义的

有办法解决这个问题吗

帮忙


Tags: importclientmessageageifoncontentawait
1条回答
网友
1楼 · 发布于 2024-07-03 06:19:32

请尝试以下代码:

import os
import requests
import json
import random



client = discord.Client()

i_am_groot = ("Hey Groot", "Groot", "Twig", "Tree")


client = discord.Client()

groot_age = 0
groot_pings = 100

@client.event
async def on_ready():
  print('We have logged in as {0.user}'.format(client))

@client.event
async def on_message(message):
  global groot_age
  global groot_pings
  if message.author == client.user:
        return
  if message.content.startswith(i_am_groot):
        await message.channel.send('I am groot')
        groot_pings = groot_pings + 1
        groot_age = groot_pings // 100
        await client.change_presence(activity=discord.Activity(type=discord.ActivityType.listening, name='Mr Blue Sky and Dancing | Age: ' + str(groot_age) + ' | Pings: ' + str(groot_pings)))
  if message.content.startswith ('grootage'):
        await message.channel.send ('Translation: ' + str(groot_age))
  if message.content.startswith ('grootpings'):
        await message.channel.send ('Translation: ' + str(groot_pings))



import keep_alive

keep_alive.keep_alive()
    



client.run(os.getenv('TOKEN'))

相关问题 更多 >