Discord.py 用户昵称更改

2023-12-02

我一直在努力让自己成为一个机器人ArmA 3单元,在此过程中我尝试创建一个Enlisting命令,该命令将服务器中用户现有的昵称更改为他们登记时使用的昵称(他们的昵称)ArmA士兵姓名)。但我在弄清楚如何做到这一点时遇到了一些困难。我将在下面留下我的代码供您查看并希望找到解决方案:

import discord
from discord.ext.commands import Bot
from discord.ext import commands
import asyncio

Client = discord.Client()
client = commands.Bot(command_prefix = "+.")

@client.event
async def on_ready():
    print("ToLate Special Operations Reporting For Duty")
    await client.change_presence(game=discord.Game(name="By Slay > $enlist", type=3))
    print("For more information: Please contact Slay on twitter @OverflowEIP")

@client.event
async def on_message(message):
    if message.content.upper().startswith('+.ENLIST'):
        client.change_nickname(message.content.replace('changeNick', ''))

client.run('token')

change_nickname是一个协程,所以你必须await它。你也没有真正使用commands适当地。您应该为每个命令定义单独的协程并用client.command装饰师。 (你也不需要Client, commands.Bot是一个子类discord.Client)

from discord.ext.commands import Bot
from discord.utils import get

client = commands.Bot(command_prefix = "+.")

@client.event
async def on_ready():
    print("ToLate Special Operations Reporting For Duty")
    await client.change_presence(game=discord.Game(name="By Slay > $enlist", type=3))
    print("For more information: Please contact Slay on twitter @OverflowEIP")

@client.command(pass_context=True)
async def enlist(ctx, *, nickname):
    await client.change_nickname(ctx.message.author, nickname)
    role = get(ctx.message.server.roles, name='ARMA_ROLE') # Replace ARMA_ROLE as appropriate
    if role: # If get could find the role
        await client.add_role(ctx.message.author, role)


client.run('token')

enlist(ctx, *, nickname)意味着我们接受这样的命令

+.enlist apple
+.enlist bag cat
+.enlist "dog eat"

并将为这些用户(调用该命令的人)分配昵称

apple
bag cat
"dog eat"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Discord.py 用户昵称更改 的相关文章

随机推荐

  • 检查字符串中是否包含对象值的任何部分

    我有一个看起来像这样的字符串 link to page foo bar test 1 另外我有一个看起来像这样的对象 key foo bar test false mock data 我想要实现的事情相当简单 我认为 但也许我在这里错过了显
  • 在 IIS 7.5 中部署 MVC3 - 不断收到 CS1009: 无法识别的转义序列错误消息

    我不断得到 Line 43 public override void Execute Line 44 WriteLiteral Line 45 Line 46 Source File c Windows Microsoft NET Fram
  • 如何在 Spring 中使用列表作为模型属性?

    我的家庭控制器是这样的 RequestMapping public ModelAndView welcome ModelAttribute myValuesInRows List
  • FolderItem.InvokeVerb("Delete") 无需确认

    我正在尝试编写一个工具 该工具将自动存档服务器上的旧日志文件并从存档中删除太旧的文件 并且有问题 我需要使用 powershell 从 ZIP 存档中删除单个文件 所以我这样做 testFile C test logs FirstEntry
  • Avaje - EBean - 部分对象查询禁用延迟加载

    我正在使用 Play 开发一个应用程序 框架 2 1 3 使用 EBean 作为模型层我希望能够执行部分对象查询 并且当我序列化为 JSON 准备将结果发送回用户时 不要按需延迟加载未选择的属性 我尝试将 AutoFetch 设置为 fal
  • 无法在 Rmarkdown 报告中生成交互式绘图

    我有一个 Rmarkdown 文档 其中包含用plotly绘制的图 并且想生成一个html文件 当我点击时它起作用编织为 HTML在 Rstudio 中 但当我在命令行上运行以下命令时则不然 Rscript e require knitr
  • 为什么这个 Less 表达式根据数学运算而成为语法错误?

    我有以下 Less 片段 Foo 50px someClass width calc 100 Foo 5px 这很好用 但是 如果我将其更改为 Foo 50px someClass width calc 100 Foo 5px 我们现在有一
  • 如何测试是否已获得管理员同意

    我们正在开发一个 Office 加载项 可使用 Azure AD 的组织帐户进行身份验证 该加载项需要管理同意 因此 如果管理员登录 应引导他表达管理同意 我们使用 OAuth 进行身份验证 https login microsoftonl
  • Mysql事务:提交和回滚

    我将 PhpMyAdmin 数据库引擎从 MyISAM 更新为 INNODB 以允许回滚 这是我的 SQL 查询 START TRANSACTION UPDATE jkm content SET state 0 WHERE title IN
  • 在 Android 中动态加载 .dex 文件时出现“ClassNotFound”异常

    我正在尝试学习在 Android 中动态加载类 dex jar 我从教程和 Stack Overflow 问题中收集了基本想法 tutorial this and this 但我未能实现动态加载类文件并不断给出的目的ClassNotFoun
  • 我应该设置什么 COLLATE 才能使用所有可能的语言?

    我有一个专栏叫username 我希望用户能够插入日语 罗马语 阿拉伯语 韩语以及所有可能的文本 包括特殊字符 https en wiktionary org wiki Index All languages what COLLATE我应该
  • 在 Lua 中使用 32 位按位运算比较有符号的 64 位数字

    我在 Redis 上使用 Lua 想要比较两个有符号的 64 位数字 它们存储在两个 8 字节 字符的字符串中 如何使用 Redis 中可用的库来比较它们 http redis io commands EVAL available libr
  • 为什么在 asp.net mvc 中先映射特殊路由,然后再映射普通路由?

    来自www 路由引擎将采用与所提供的 URL 匹配的第一个路由 并尝试使用该路由中的路由值 因此 应首先将不太常见或较专业的路由添加到表中 而应稍后添加更通用的路由 为什么要先绘制专门的路线 有人可以给我一个例子 我可以在哪里看到 首先映射
  • 如何从输入流重新打开文件

    我想重新打开一个文件 我在输入流中有一个文件 我尝试过使用 Scanner 和 BufferedReader 但使用 close 方法关闭文件后我无法再次打开该文件 请帮助如何再次打开文件 我写了下面的代码 InputStream file
  • MySql。单击 HTML 按钮后 - TRUNCATE 数据库表

    所以我需要简单的事情 我需要在我的网站中创建按钮 单击按钮后 它应该截断数据库表 但我自己无法成功完成 那么你能帮我一下吗 我在这里尝试创建按钮
  • 在 Ruby 中生成符合概率分布的数字数组?

    假设我有 100 条记录 我想模拟出created at日期 以便它适合某些曲线 有没有一个库可以做到这一点 或者我可以使用什么公式 我认为这是沿着同一条轨道 生成具有概率分布的随机数 我不太了解它们在数学中是如何分类的 但我正在研究以下内
  • 将 Django 项目从 MySQL 迁移到 PostgreSQL 的最简单方法

    我想将 Django 项目的数据库从 MySQL 转换为 PostgreSQL 不幸的是 我不能只使用 Django 的 dumpdata 和 loaddata 管理命令 因为我的数据库表太大了 我已经读过这篇文章了http www ofb
  • 如何找到源代码中的所有注释?

    注释有两种风格 C风格和C 风格 如何识别它们 comments comments 我可以随意使用任何方法和第三个库 为了可靠地查找 Java 源文件中的所有注释 我不会使用正则表达式 而是使用真正的词法分析器 又名分词器 Java 的两个
  • 通过jquery获取浏览器名称

    我使用 jquery v1 9 1 我知道 jquery browser 在 1 9 中被删除 但我必须使用它 我使用迁移插件来获取浏览器类型 它工作正常 但对于 IE 11 和 firefox 25 jquery browser 显示相同
  • Discord.py 用户昵称更改

    我一直在努力让自己成为一个机器人ArmA 3单元 在此过程中我尝试创建一个Enlisting命令 该命令将服务器中用户现有的昵称更改为他们登记时使用的昵称 他们的昵称 ArmA士兵姓名 但我在弄清楚如何做到这一点时遇到了一些困难 我将在下面