我有一个我用Discord.net制作的Discord Bot。
目前我有一个发布字符串的命令,但我想制作一个发布了之前由用户输入的字符串的命令。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Reflection;
using Microsoft.Extensions.DependencyInjection;
using Discord;
using Discord.Commands;
using Discord.WebSocket;
namespace SuccubusBot.Modules
{
public class Ping : ModuleBase<SocketCommandContext>
{
[Command("hold")]
public async Task PingAsync()
{
string oneL = "L";
await ReplyAsync(oneL);
}
}
}
我接收用户输入的唯一经验是控制台项目,所以我不确定在这里做什么。
答案 0 :(得分:1)
输出用户输入内容的简单命令可以这样写:
[Command("say")]
public async Task Say([Remainder] string echo)
{
// ReplyAsync is a method on ModuleBase
await ReplyAsync(echo);
}
示例用法是(如果您的命令以前缀&#34开头;!&#34;):
!say Hello
机器人将在允许输入的频道上输出:
Hello
这里的关键是参数列表中的[Remainder]。它告诉开发人员用户将在其后传递带有字符串的命令。