public static async Task Maindo(SocketMessage arg) { var Guild = ((SocketGuildChannel)arg.Channel).Guild; SocketGuildUser UserToCheck = arg.MentionedUsers.Count >= 1 ? arg.MentionedUsers.First() as SocketGuildUser : arg.Author as SocketGuildUser; string TitleOfBuilder = $"{UserToCheck.Username}'s Rank"; var Builder = new EmbedBuilder() { Title = TitleOfBuilder, Color = Color.LightOrange, Footer = new EmbedFooterBuilder() { Text = "ure kinda nice <3" }, ThumbnailUrl = UserToCheck.GetAvatarUrl(), Timestamp = DateTime.UtcNow, }; var Field = new EmbedFieldBuilder() { Name = "Name", Value = GuildStuff.GetNameOfRank(GuildStuff.ReadRank(Guild.Id, UserToCheck.Id)) }; Builder.AddField(Field); await arg.Channel.SendMessageAsync("", false, Builder.Build()); }
//COMMAND HANDLING private static async Task Client_MessageReceived(SocketMessage arg) { try { if (!arg.Author.IsBot && arg.Channel.GetType() == typeof(SocketTextChannel)) { var Guild = ((SocketGuildChannel)arg.Channel).Guild; if (arg.Content.ToLower().StartsWith(Prefix)) { var Cmd = Type.GetType($"MGX_Discord_Bot.EModules.Commands.General.{arg.Content.Split(' ')[0].Split(new[] { Prefix }, StringSplitOptions.None)[1].ToLower()}"); int UserGuildRank = GuildStuff.ReadRank(Guild.Id, arg.Author.Id); int UserMGXRank = RankingManager.BotOwners.ContainsKey(arg.Author.Id) ? RankingManager.BotOwners[arg.Author.Id] : 1; if (Cmd != null) { var CmdInfo = (CommandInformation)Cmd.GetField("Info").GetValue(null); if (CmdInfo.Premium && false) // change false to check database for user if they have premium { await arg.Channel.SendMessageAsync("MGX premium is required for this command :pensive:"); } else if (CmdInfo.RequiredPermissions <= UserGuildRank) { Cmd.GetMethod("Maindo").Invoke(null, new[] { arg }); int CountAlr = StoreHandler.LoadData(arg.Author.Id, $"CMD-COUNT") != null?int.Parse(StoreHandler.LoadData(arg.Author.Id, $"CMD-COUNT")) : 0; StoreHandler.SaveData(arg.Author.Id, "CMD-COUNT", CountAlr + 1); } else { await arg.Channel.SendMessageAsync($"You aren't able to run this! You must be `{GuildStuff.GetNameOfRank(CmdInfo.RequiredPermissions)}` or higher."); } int CurCmd = StoreHandler.LoadData(0, "cmdcount") == null ? 0 : int.Parse(StoreHandler.LoadData(0, "cmdcount")); StoreHandler.SaveData(0, "cmdcount", CurCmd + 1); } else if (RankingManager.BotOwners.ContainsKey(arg.Author.Id)) { Cmd = Type.GetType($"MGX_Discord_Bot.EModules.Commands.Maintenance.{arg.Content.Split(' ')[0].Split(new[] { Prefix }, StringSplitOptions.None)[1].ToLower()}"); var CmdInfo = (CommandInformation)Cmd.GetField("Info").GetValue(null); if (Cmd != null && CmdInfo.RequiredPermissions <= UserMGXRank) { Cmd.GetMethod("Maindo").Invoke(null, new[] { arg }); } else { Console.WriteLine("Maint null"); } } } // CUSTOM RESPONSES \\ if (GuildStuff.ReadSetting(GuildStuff.GuildSettings.CustomResponses, Guild.Id)) { var ReturnedWordResp = CustomResponses.ReturnResponse(arg.Content); if (ReturnedWordResp != null) { await arg.Channel.SendMessageAsync(ReturnedWordResp); } else if (arg.Content.ToLower().StartsWith("ree")) { await arg.Channel.SendMessageAsync("*r e e ?*"); } else if (arg.Content.ToLower().Contains("anti") && arg.Content.ToLower().Contains("va") || arg.Content.ToLower().Contains("vac") && arg.Content.ToLower().Contains("do") && arg.Content.ToLower().Contains("nt")) { await arg.Channel.SendMessageAsync($"i swear to f*****g god you better vaccinate your kids"); } else if (arg.Content.ToLower().Contains("sksk") | arg.Content.ToLower().Contains(" oop ") | arg.Content.ToLower().Contains("ess kay") | arg.Content.ToLower().Contains("esskay")) { await arg.Channel.SendMessageAsync("ew, vsco. begone thot"); } else if (arg.Content.ToLower().StartsWith("i am ") || arg.Content.ToLower().StartsWith("im ") || arg.Content.ToLower().StartsWith("i'm ")) { string WhatTheyAre = arg.Content.Split(new string[] { "m" }, 2, StringSplitOptions.None)[1]; await arg.Channel.SendMessageAsync($"hi {WhatTheyAre.Trim()}, im dad"); } CustomResponses.UpdateResponses(); } if (GuildStuff.ReadSetting(GuildStuff.GuildSettings.ReplaceInvites, Guild.Id) && arg.Content.ToLower().Contains("discord.gg/")) { var RepInvEm = new EmbedBuilder() { Color = new Color(0x36393F), Timestamp = DateTime.UtcNow, Author = new EmbedAuthorBuilder() { Name = $"{arg.Author.Username} has invited you to a guild!" }, }; } } else if (!arg.Author.IsBot) { await MyAccount.SendMessageAsync($"{arg.Author.Username}#{arg.Author.Discriminator}: {arg.Content}\n\n{arg.Author.Id}"); foreach (var Attachment in arg.Attachments) { await MyAccount.SendMessageAsync(Attachment.Url); } } } catch (Exception e) { Console.WriteLine(e); } }