0

所以我通常使用以下代码行创建一个新的 bot 命令:

private void SayHi()
{
    commands.CreateCommand("sayhi").Do(async (e) => {
            await e.Channel.SendMessage("Hi");
    });
}

然后频道中的用户可以键入"!sayhi"并打印出来"Hi"。我试图使用discord.net包做的C#是制作一个动态命令。这样用户就可以输入如下内容:用户选择使用的字符串在!sayhi x哪里。x我希望能够输出如下内容:

commands.CreateCommand("sayhi" + x).Do(async (e) => {
        await e.Channel.SendMessage("Hi" + x);
});

不和谐的输出看起来像:"Hi x"

4

1 回答 1

3

基于文档。您将使用 Parameter 方法

http://rtd.discord.foxbot.me/en/legacy/features/commands.html#example-simple

commands.CreateCommand("sayhi" + x)
                    .Parameter("Target", ParameterType.Required)
                    .Do(async (e) =>
                    {
                        await e.Channel.SendMessage("Hi" + e.GetArg("Target"));
                    });
于 2016-12-13T22:14:43.923 回答