0

Discordのボット

ご覧のとおり、リクエストには応答しますが、入力した番号に対しては何もしません。そこに座っているだけです。

そのコマンドのコードは次のとおりです (現在、DSharp チュートリアル Web サイトからコピーしたものです。大幅に変更する予定でしたが、標準を実行することさえできません)。

        [Command("waitforcode"), Description("Waits for a response containing a generated code.")]
    public async Task WaitForCode(CommandContext ctx)
    {
        // first retrieve the interactivity module from the client
        var interactivity = ctx.Client.GetInteractivity();

        // generate a code
        var codebytes = new byte[8];
        using (var rng = RandomNumberGenerator.Create())
            rng.GetBytes(codebytes);

        var code = BitConverter.ToString(codebytes).ToLower().Replace("-", "");

        // announce the code
        await ctx.RespondAsync($"The first one to type the following code gets a reward: `{code}`");

        // wait for anyone who types it
        var msg = await interactivity.WaitForMessageAsync(xm => xm.Content.Contains(code), TimeSpan.FromSeconds(60));
        if (!msg.TimedOut)
        {
            // announce the winner
            await ctx.RespondAsync($"And the winner is: {msg.Result.Author.Mention}");
        }
        else
        {
            await ctx.RespondAsync("Nobody? Really?");
        }
    }

誰かが私を助けることができれば、それは素晴らしいことです!

4

0 に答える 0