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

C# - DSharp getting color of the Bots (highest) Role

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

到目前为止,我只找到了 Javascript 版本 (discord.js) 的答案,但 none 找到了 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
    }; ...

ctx.Guild.CurrentMember.Color。如果这不起作用,您可能使用的是未启用适当意图的旧版本。