Soy nuevo en C # y estoy programando mi primer gran proyecto, un bot de Discord. La idea es que el bot escanee los comentarios, esperando la palabra Cthulhu, y una vez que alguien dice Cthulhu, el bot envía un mensaje. Sin embargo, en su estado actual, nunca deja de enviar mensajes. Sospecho que hay algo mal con mi condicional, pero no tengo idea de cómo solucionarlo. ¿Cómo debo modificar mi código para solucionar este problema?

Este es mi código, tengo los paquetes de NuGet discord.net y discord.commands instalados:

    discord.MessageReceived += async (s, e) =>
        {
            if (e.Message.RawText.Contains("Cthulhu") )
                await e.Channel.SendMessage("*Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn*");
        };
7
Amature Programmer 15 ene. 2017 a las 03:39

1 respuesta

La mejor respuesta

Tu bot está hablando solo :-D

Prueba esto:

discord.MessageReceived += async (s, e) =>
{
    if (!e.Message.IsAuthor && e.Message.RawText.Contains("Cthulhu") )
        await e.Channel.SendMessage("*Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn*");
};
8
Stuart 16 ene. 2017 a las 01:52
Ooooh, eso tiene sentido. ¡Gracias por la ayuda!
 – 
Amature Programmer
15 ene. 2017 a las 06:52