所以我一直在编写我的 discord 机器人,并想添加一个功能来给用户一个特定的角色,就像你是游戏中的玩家一样,你输入一个“作弊码”,它就会授予你作弊者的角色。我怎样才能做到这一点?感谢您的帮助。
问问题
16208 次
3 回答
12
对于将来发现这一点的任何人,这是我赋予用户角色的方式:
var user = Context.User;
var role = Context.Guild.Roles.FirstOrDefault(x => x.Name == "RoleName");
await (user as IGuildUser).AddRoleAsync(role);
希望这可以帮助!
于 2017-08-29T16:10:27.127 回答
1
请在这里学习图书馆...:https ://github.com/RogueException/Discord.Net
回到问题,您可以await e.User.AddRoles(x);
在 async 运算符命令中执行此操作。x
将是角色变量。
于 2017-01-17T08:43:21.373 回答
0
这应该可以解决问题 这是一个命令,它为用户提供了一个无法在任何频道中交谈的角色,只有一个名为 jail 的频道
using System;
using System.Collections.Generic;
using System.Text;
using Discord;
using Discord.Commands;
using Discord.WebSocket;
using Discord.Net;
using System.Linq;
using System.Threading.Tasks;
namespace ConsoleApp1.commands
{
public class jail : ModuleBase<SocketCommandContext>
{
[Command("jail")]
public async Task jail2 (IGuildUser user)
{
var role = Context.Guild.Roles.FirstOrDefault(x => x.Name.ToString() == "ROLE_NAME");
await (user as IGuildUser).AddRoleAsync(role);
}
}
}
于 2017-09-29T19:29:36.247 回答