首页 > 解决方案 > 机器人的问题

问题描述

我的代码有问题。

当我启动机器人并输入 $start 时它可以工作,但它会在几秒钟后停止。

我是初学者,所以我不知道为什么会这样。

这是我的代码:

import discord
import asyncio
import colorsys
from discord import utils
from discord.ext import commands
from config import settings
from discord.utils import get
bot = commands.Bot(command_prefix = settings['prefix'])
@bot.command()
async def start(ctx):
    role_id = settings['roleid']
    role = ctx.guild.get_role(int(role_id))
    color_rgb = 0
    while True:
        while True:
            color_rgb = color_rgb + 5
            await role.edit(colour = discord.Colour.from_rgb(255, color_rgb, 0))
            if (color_rgb == 255):
                print('done')
                break
        while True:
            color_rgb = color_rgb - 5
            await role.edit(colour = discord.Colour.from_rgb(color_rgb, 255, 0))
            if (color_rgb == 0):
                print ('done')
                break
        while True:
            color_rgb = color_rgb + 5
            await role.edit(colour = discord.Colour.from_rgb(0, 255, color_rgb))
            if (color_rgb == 255):
                print ('done')
                break
        while True:
            color_rgb = color_rgb - 5
            await role.edit(colour = discord.Colour.from_rgb(0, color_rgb, 255))
            if (color_rgb == 0):
                print ('done')
                break
        while True:
            color_rgb = color_rgb + 5
            await role.edit(colour = discord.Colour.from_rgb(color_rgb, 0, 255))
            if (color_rgb == 255):
                print ('done')
                break
        while True:
            color_rgb = color_rgb - 5
            await role.edit(colour = discord.Colour.from_rgb(255, 0, color_rgb))
            if (color_rgb == 0):
                print ('done')
                break
bot.run(settings['token'])

标签: pythonpython-3.xdiscord.py

解决方案


嘿,我读了一些关于它的东西。Discord 不想要“彩虹角色”,并且还将角色编辑限制为每天 1000 个。

在这里阅读:https ://support.discord.com/hc/en-us/community/posts/360067748172-Increase-Role-Edit-rate-limit-to-86400#:~:text=The%20rate% 20limit%20for%20editing,1000%20requests%20per%2024%20hours

在这里:https ://twitter.com/discord/status/1055182857709256704?lang=en

您可以做的是每天最多更改 1000 次颜色,也许只有在您登录时


推荐阅读