私は現在、不協和音のボットに取り組んでいます。何かを入力するとコマンドを実行しようとしましたが、ボットはその部分をあなたに返します。ここでわかるように、私は部分文字列を使用しました。ダウンロードしたメッセージが文字列に変換されると、それは1つのように機能しません。 私はcommmandを不和にしても、うまく動作しません。私はエラーメッセージを受け取っていません。ただ応答しません。メッセージの部分文字列の部分文字列の部分文字列
private void RegisterSayCommand()
{
commands.CreateCommand("say")
.Do(async (e) =>
{
string messagestosay, message_b;
int message_sub;
Message[] message_a;
message_a = await e.Channel.DownloadMessages(1);
message_b = message_a.ToString();
message_sub = message_b.Length;
messagestosay = message_b.Substring(4, message_sub);
await e.Channel.SendMessage(messagestosay);
});
}
私はこのメソッドを理解していますが、コードでどのように使用するのか分かりません。 あなたのコードでどのように使用したかをさらに説明してください:) – SugoiSheep
'string messageSay = e.Args [0]; 「e.Channel.SendMessage(messageSay);」を待ちます。これは、文字通りコマンド機能内のコードになります。 **最初に**、このコードを試してください。 ** Second **は、あなたのmessageSayがどのように文字列であり、どのようにコマンドを部分文字列にする必要がないかを確認します。 **古いコードから3番目の**は、メッセージチャネルに 'message_b'を送ります、それがどれほど奇妙であるか注意してください。 **最後に**ここには次のような部分があります: 'Message []'データ型を文字列に直接変換する方法がないため、古いコードが動作しません。これは配列であり、Discord.NETでは 'まだその種の機能はありません。 – WQYeo
申し訳ありませんが、動作しているようには見えません。 – SugoiSheep