当前位置: 首页 > 知识库问答 >
问题:

在斜线命令中的角色的无限选项

孔扬
2023-03-14

在JDA中,我试图开发一个像这样的斜杠命令:

/command @role1 @role2 @role3...

我想拥有无限的角色选择,但我找不到任何解决方案来拥有一系列角色。你有主意吗?

我的实际代码:

commands.addCommands(
            new CommandData("command", "list of possible roles")
                    .addOptions(new OptionData(ROLE, "role", "the role"))
    );

共有1个答案

嵇弘新
2023-03-14

Discord目前不提供任何可变选项类型。你唯一的希望是使用STRING类型的选项,并从中得到提示:

commands.addCommands(
    Commands.slash("command", "list of possible roles")
         .addOption(STRING, "role", "the role")
);

这只适用于5.0.0-alpha。5其中添加了GetNikedRoles:

java prettyprint-override">public void onSlashCommandInteraction(SlashCommandInteractionEvent event) {
  OptionMapping opt = event.getOption("role");
  List<Role> roles = opt.getMentionedRoles();
}

注意:string选项仍然接受任意字符串和其他类型。以这种方式处理命令时要注意这一点。

 类似资料:
  • 我是要定义什么还是别的什么?我在网上看到那个有角色权限的东西。

  • 我有以下问题: 我试图用JDA实现一个不和谐斜杠命令,可以这样输入: 或者像这样: 但是您应该被要求使用其中一个选项。 我现在有一个 这是我当前的代码:

  • 所以我最近一直在开发一个机器人,我已经在这个机器人中实现了斜杠命令。我遇到过对类型5命令“响应”的需求,但是我似乎找不到关于斜杠命令的好文档。我似乎无法让它“停止思考”。任何帮助都将不胜感激! 编辑:我发现你需要编辑交互响应(https://discord.com/developers/docs/interactions/slash-commands#interaction-response),但

  • 我正在尝试做一个命令,给用户一个角色。它以前是工作的,但不是它只是给机器人一个角色。 这也发生在我的level命令上,该命令应该检查用户的级别。它检查的是机器人的水平,而不是用户的水平。

  • 我正在尝试为Protractor e2e测试选择一个类型为radio的输入对象,我正在对AngularJS测试进行测试。我已尝试通过将输入元素调用了paymentMethodCardSettlement,就声明而言,它似乎有效。 但是,当我尝试之类的东西时,它会失败并显示以下消息: 失败:元素当前不可见,因此可能无法与之交互 我在想,这里的解决方案是否可能是将鼠标导航到标签并手动单击? 我所针对的

  • 问题内容: 由于某种原因,当我在路由中拥有动态属性并访问该页面时,我陷入了无限循环,该页面将不断请求自己。 我正在查看的路由是/ userlists /:id路由。该路由的控制器是- 当我访问/ userlists / 9时,我看到- 每3秒被记录一次,页面冻结。只要位置后面有一个斜杠(“ / userslists /”而不是“ / userlists”),就好像发生了这种情况。 有人知道原因吗?