mirror of
https://github.com/TeamOctolings/Octobot.git
synced 2025-05-02 20:19:55 +03:00
general code refactor and bug fixes
This commit is contained in:
parent
4d838e5af3
commit
04facc3de2
15 changed files with 197 additions and 132 deletions
|
@ -21,10 +21,12 @@ public class EventHandler {
|
|||
await Boyfriend.SetupGuildConfigs();
|
||||
|
||||
var i = new Random().Next(3);
|
||||
|
||||
foreach (var guild in Boyfriend.Client.Guilds) {
|
||||
var config = Boyfriend.GetGuildConfig(guild);
|
||||
Messages.Culture = new CultureInfo(config.Lang!);
|
||||
var channel = guild.GetTextChannel(config.BotLogChannel.GetValueOrDefault(0));
|
||||
Messages.Culture = new CultureInfo(config.Lang!);
|
||||
|
||||
if (!config.ReceiveStartupMessages.GetValueOrDefault(true) || channel == null) continue;
|
||||
await channel.SendMessageAsync(string.Format(Messages.Ready, Utils.GetBeep(config.Lang!, i)));
|
||||
}
|
||||
|
@ -33,6 +35,7 @@ public class EventHandler {
|
|||
private static async Task MessageDeletedEvent(Cacheable<IMessage, ulong> message,
|
||||
Cacheable<IMessageChannel, ulong> channel) {
|
||||
var msg = message.Value;
|
||||
|
||||
var toSend = msg == null
|
||||
? string.Format(Messages.UncachedMessageDeleted, Utils.MentionChannel(channel.Id))
|
||||
: string.Format(Messages.CachedMessageDeleted, msg.Author.Mention) +
|
||||
|
@ -43,21 +46,23 @@ public class EventHandler {
|
|||
|
||||
private static async Task MessageReceivedEvent(SocketMessage messageParam) {
|
||||
if (messageParam is not SocketUserMessage message) return;
|
||||
|
||||
var argPos = 0;
|
||||
var user = (IGuildUser) message.Author;
|
||||
var guild = user.Guild;
|
||||
var argPos = 0;
|
||||
|
||||
var guildConfig = Boyfriend.GetGuildConfig(guild);
|
||||
var prev = "";
|
||||
var prevFailsafe = "";
|
||||
var prevs = await message.Channel.GetMessagesAsync(3).FlattenAsync();
|
||||
var prevsArray = prevs as IMessage[] ?? prevs.ToArray();
|
||||
|
||||
Messages.Culture = new CultureInfo(guildConfig.Lang!);
|
||||
|
||||
if ((message.MentionedUsers.Count > 3 || message.MentionedRoles.Count > 2)
|
||||
&& !user.GuildPermissions.MentionEveryone)
|
||||
await BanCommand.BanUser(guild, null, await guild.GetCurrentUserAsync(), user,
|
||||
TimeSpan.FromMilliseconds(-1), Messages.AutobanReason);
|
||||
|
||||
var prevs = await message.Channel.GetMessagesAsync(3).FlattenAsync();
|
||||
var prevsArray = prevs as IMessage[] ?? prevs.ToArray();
|
||||
var prev = "";
|
||||
var prevFailsafe = "";
|
||||
try {
|
||||
prev = prevsArray[1].Content;
|
||||
prevFailsafe = prevsArray[2].Content;
|
||||
|
@ -77,7 +82,9 @@ public class EventHandler {
|
|||
ISocketMessageChannel channel) {
|
||||
var msg = messageCached.Value;
|
||||
var nl = Environment.NewLine;
|
||||
|
||||
if (msg != null && msg.Content == messageSocket.Content) return;
|
||||
|
||||
var toSend = msg == null
|
||||
? string.Format(Messages.UncachedMessageEdited, messageSocket.Author.Mention,
|
||||
Utils.MentionChannel(channel.Id)) +
|
||||
|
@ -91,9 +98,11 @@ public class EventHandler {
|
|||
private static async Task UserJoinedEvent(SocketGuildUser user) {
|
||||
var guild = user.Guild;
|
||||
var config = Boyfriend.GetGuildConfig(guild);
|
||||
|
||||
if (config.SendWelcomeMessages.GetValueOrDefault(true))
|
||||
await Utils.SilentSendAsync(guild.SystemChannel, string.Format(config.WelcomeMessage!, user.Mention,
|
||||
guild.Name));
|
||||
|
||||
if (config.DefaultRole != 0)
|
||||
await user.AddRoleAsync(Utils.ParseRole(guild, config.DefaultRole.ToString()!));
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue