C# - DSharp 获取机器人(最高)角色的颜色

时间:2021-03-24 13:20:26

标签: c# discord dsharp+

我正在努力使当您调用交互嵌入时,左侧显示的线条与机器人最高角色颜色相同。 (真的是很小的细节,但出于某种原因,我真的很想要)

到目前为止,我只找到了 Javascript 版本 (discord.js) 的答案,但没有找到 DSharp 的答案。 https://dsharpplus.github.io/api 上的文档也没有帮助。我尝试了以下方法:

ctx.Guild.GetMemberAsync(MY BOT ID).Color;

我在带有静态 ID 的测试服务器上这样做只是为了看看它是否可以工作,至少在一台服务器上,但它没有。

接下来我尝试使用

ctx.Client.Guild.GetRole(MY BOT ROLE ID).Color;

它确实有效,但只能在一台服务器上并具有一个角色。我希望它可以在任何角色的任何服务器上工作,以便获得颜色

我不知所措。请帮忙。

相关代码大体:

public async Task join(CommandContext ctx)
{

   DiscordColor botTopRoleColor =  //help;
    


    var Thumbnail = new DiscordEmbedBuilder.EmbedThumbnail { Url = ctx.Client.CurrentUser.AvatarUrl };
    var joinEmbed = new DiscordEmbedBuilder
    {
        Title = "Head",
        Description = "Body",
        Thumbnail = Thumbnail,
        Color = botTopRoleColor //(This should be the highest role color which i am trying to set in botTopRoleColor
    }; ...

1 个答案:

答案 0 :(得分:0)

shReport.Range("B13:B27").ClearContents。如果这不起作用,您可能使用的是未启用正确意图的旧版本。