簡體   English   中英

如果我的ID為字符串,如何在Java中使用Discord機器人向用戶添加角色?

[英]How do I add a role to a user with a discord bot in java if I have their ID as a String?

我想根據消息中提到的人向不和諧的用戶添加角色。 我一直在尋找,但是當我將他們的id作為字符串輸入時,找不到關於向用戶添加角色的任何信息。 要獲取提到的人的ID,請使用以下行

String name = event.getMember().getUser().getAsMention();

但是我不確定在獲得他們的姓名/身份證后如何實際添加角色。 誰能幫我這個?

您必須以長值獲取作者ID,才能將其作為成員實例獲取

long authorID = event.getMessage().getAuthor().getIdLong();
Member member = event.getGuild().getMemberById(authorID);
Role role = event.getMessage().getMentionedRoles().get(0); //checks for mentioned roles in the message

      event
            .getGuild()
            .getController()
            .addSingleRoleToMember(member, role)
            .complete();

上面的代碼通過訪問公會的控制器將單個角色添加到成員。 存在一個.addRolesToMember()方法,但是要添加多個角色,您需要一個類型為Collection<Role>的變量。 另外,請確保添加異常處理,因為如果沒有提到角色,第三行代碼可能會產生異常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM