C# Discord.NET 1.0发送消息事件?
我正在尝试在Discord.NET1.0中制作一个插件,对某些单词进行审查,并在网上寻找一个事件,当有人发送短信时会触发该事件,但在任何地方都无法找到。我知道如何在0.9.6中做到这一点,但在1.0中有办法吗C# Discord.NET 1.0发送消息事件?,c#,events,discord.net,C#,Events,Discord.net,我正在尝试在Discord.NET1.0中制作一个插件,对某些单词进行审查,并在网上寻找一个事件,当有人发送短信时会触发该事件,但在任何地方都无法找到。我知道如何在0.9.6中做到这一点,但在1.0中有办法吗 任何帮助都将不胜感激 DiscordSocketClient有一个MessageReceived事件。因此,首先您要制作一个要审查的单词数组: String[] badWords = {"word1","word2", "word3"}; 然后,您需要检查用户发送的消息是
任何帮助都将不胜感激 DiscordSocketClient有一个
MessageReceived
事件。因此,首先您要制作一个要审查的单词数组:
String[] badWords = {"word1","word2", "word3"};
然后,您需要检查用户发送的消息是否包含这些消息,然后将其存储到字典中
for (int i = 0; i < badWords.Length; i++)
{
if (msg.Content.Contains(badWords[i]))
{
Console.WriteLine("true");
if (wordOffences.ContainsKey(msg.Author.ToString()))
{
wordOffences[msg.Author.ToString()] += 1;
Console.WriteLine("if");
Console.WriteLine(wordOffences[msg.Author.ToString()]);
File.WriteAllText(@"c:\Users\me\Desktop\real.json", JsonConvert.SerializeObject(wordOffences));
if (wordOffences[msg.Author.ToString()] >= 3)
{
Console.WriteLine("really true");
await m.Channel.SendMessageAsync("@Staff have been notified. Hey buddy watch your language! This is offence: " + wordOffences[msg.Author.ToString()]);
}
else
{
Console.WriteLine("y");
await m.Channel.SendMessageAsync("Hey buddy watch your language! This is offence: " + wordOffences[msg.Author.ToString()]);
}
}
else
{
Console.WriteLine("runmf");
wordOffences.Add(msg.Author.ToString(), 1);
Console.WriteLine(wordOffences[msg.Author.ToString()]);
await m.Channel.SendMessageAsync("Hey buddy watch your language! This is offence: " + wordOffences[msg.Author.ToString()]);
File.WriteAllText(@"c:\Users\me\Desktop\real.json", JsonConvert.SerializeObject(wordOffences));
}
i = badWords.Length;
}
for(int i=0;i=3)
{
Console.WriteLine(“真的是真的”);
等待m.Channel.SendMessageAsync(“@工作人员已收到通知。嘿,伙计,注意你的语言!这是冒犯:“+WordOffices[msg.Author.ToString()”);
}
其他的
{
控制台。写入线(“y”);
等待m.Channel.SendMessageAsync(“嘿,伙计,注意你的语言!这是冒犯:”+WordOffices[msg.Author.ToString());
}
}
其他的
{
控制台写入线(“runmf”);
Add(msg.Author.ToString(),1);
Console.WriteLine(WordOffices[msg.Author.ToString()]);
等待m.Channel.SendMessageAsync(“嘿,伙计,注意你的语言!这是冒犯:”+WordOffices[msg.Author.ToString());
writealText(@“c:\Users\me\Desktop\real.json”,JsonConvert.SerializeObject(word));
}
i=坏词。长度;
}
使用此功能,您可以将用户的违规次数存储到json文件中,使其成为永久性的。您应该将此信息放入您的:
public async Task HandleCommandAsync(SocketMessage m)