0
votes

Discord.net comment mentionner les rôles

Comment puis-je mentionner les rôles de guilde en C # avec la bibliothèque Discord.net?


1 commentaires

Bienvenue dans SO, pensez à ajouter un peu plus de contenu à votre question. Dans sa forme actuelle, ce n'est pas très clair ni utile pour les autres.


3 Réponses :


0
votes

J'ai trouvé un moyen de faire ceci:

MentionUtils.MentionRole(id)


1 commentaires

Ou utilisez la propriété .Mention sur l'objet Role



1
votes

Il est également possible d'utiliser la mention brute d'un rôle, c'est-à-dire le contenu de la propriété .Mention dans un objet de rôle.

Le format est le suivant: p >

Cela diffère de la mention d'un utilisateur individuel par le caractère & , qui spécifie qu'il mentionne le rôle, pas un user.

Vous pouvez obtenir l'ID de rôle à partir de la propriété .ID , ou en cliquant avec le bouton droit sur le rôle dans la liste des rôles, si vous souhaitez le coder en dur.

Exemple de commande de mention d'un rôle par son nom:

        [Command("mention")]
        public async Task MentionRole(string name)
        {
            SocketRole role = Context.Guild.Roles.First(x => x.Name == name); //Get the first role that matches the name provided

            await ReplyAsync($"<@&{role.Id}>"); //Format the string that mentions the role (ex. <@&739515238742753371>)
            await ReplyAsync(role.Mention); //Optionally, you can use the integrated property that returns the exact same string as we formatted above

            //The mention is instantly sent as a reply to the command
        }


0 commentaires

1
votes

Vous pouvez également avec iRole

[Command("roleinfo")]
    public async Task mentionRoleAsync(IRole role)
    {

        var embed = new EmbedBuilder();
        embed.WithDescription("Role ID : " + role.Id + Environment.NewLine + "Role Name : " + role.Name + Environment.NewLine + "Role Mention : " + role.Mention + Environment.NewLine + "Role Mention : " + role.Mention + Environment.NewLine + "Role Color : " + role.Color.ToString() + Environment.NewLine + "Role Created at : " + role.CreatedAt);
        await Context.Channel.SendMessageAsync("", false, embed);

    }

 Résultat


0 commentaires