private Task OnUpdateGuilds(IDiscordGuild g) { Framework.DiscordBot bot = Framework.DiscordBot.Instance; //DiscordSocketClient client = bot.Client.GetShardFor(g); //await countLib.PostStats(client.ShardId, client.Guilds.Count); return(Task.CompletedTask); }
public AchievementManager(Framework.DiscordBot bot) { this.bot = bot; AccountManager.Instance.OnGlobalLevelUp += async(u, c, l) => { if (await provider.IsEnabled(Global.RedisClient, c.Id)) { LevelPacket p = new LevelPacket() { discordUser = await(c as IDiscordGuildChannel).GetUserAsync(u.Id), discordChannel = c, level = l, }; await OnLevelGained?.Invoke(p); } }; AccountManager.Instance.OnTransactionMade += async(msg, u1, u2, amount) => { if (await provider.IsEnabled(Global.RedisClient, msg.ChannelId)) { TransactionPacket p = new TransactionPacket() { discordUser = msg.Author, discordChannel = await msg.GetChannelAsync(), giver = u1, receiver = u2, amount = amount }; await OnTransaction?.Invoke(p); } }; bot.GetAttachedObject <EventSystem>().GetCommandHandler <SimpleCommandHandler>().OnMessageProcessed += async(e, m, t) => { CommandPacket p = new CommandPacket() { discordUser = m.Author, discordChannel = await m.GetChannelAsync(), message = m, command = e, success = true }; await OnCommandUsed?.Invoke(p); }; }
public GeneralModule(Module m, Framework.DiscordBot b) { //EventSystem.Instance.AddCommandDoneEvent(x => //{ // x.Name = "--count-commands"; // x.processEvent = async (msg, e, success, t) => // { // if (success) // { // using (var context = new MikiContext()) // { // User user = await User.GetAsync(context, msg.Author); // CommandUsage u = await CommandUsage.GetAsync(context, msg.Author.Id.ToDbLong(), e.Name); // u.Amount++; // user.Total_Commands++; // await CommandUsage.UpdateCacheAsync(user.Id, e.Name, u); // await context.SaveChangesAsync(); // } // } // }; //}); }
public ServerCountModule(Module m, Framework.DiscordBot b) { m.JoinedGuild = OnUpdateGuilds; m.LeftGuild = OnUpdateGuilds; // countLib = new CountLib(ConnectionString); }
public FunModule(Module m, Framework.DiscordBot b) { ImageboardProviderPool.AddProvider(new ImageboardProvider <E621Post>(new ImageboardConfigurations { QueryKey = new Uri("http://e621.net/post/index.json?tags="), ExplicitTag = "rating:e", QuestionableTag = "rating:q", SafeTag = "rating:s", NetUseCredentials = true, NetHeaders = new List <Tuple <string, string> >() { new Tuple <string, string>("User-Agent", "Other"), }, BlacklistedTags = { "loli", "shota", } })); ImageboardProviderPool.AddProvider(new ImageboardProvider <DanbooruPost>(new ImageboardConfigurations { QueryKey = new Uri("https://danbooru.donmai.us/posts.json?tags="), ExplicitTag = "rating:e", QuestionableTag = "rating:q", SafeTag = "rating:s", NetUseCredentials = true, NetHeaders = { new Tuple <string, string>("Authorization", $"Basic {Convert.ToBase64String(Encoding.UTF8.GetBytes(Global.Config.DanbooruCredentials))}"), }, BlacklistedTags = { "loli", "shota" } })); ImageboardProviderPool.AddProvider(new ImageboardProvider <GelbooruPost>(new ImageboardConfigurations { QueryKey = new Uri("http://gelbooru.com/index.php?page=dapi&s=post&q=index&json=1&tags="), BlacklistedTags = { "loli", "shota", } })); ImageboardProviderPool.AddProvider(new ImageboardProvider <SafebooruPost>(new ImageboardConfigurations { QueryKey = new Uri("https://safebooru.org/index.php?page=dapi&s=post&q=index&json=1&tags="), BlacklistedTags = { "loli", "shota", } })); ImageboardProviderPool.AddProvider(new ImageboardProvider <Rule34Post>(new ImageboardConfigurations { QueryKey = new Uri("http://rule34.xxx/index.php?page=dapi&s=post&q=index&json=1&tags="), BlacklistedTags = { "loli", "shota", } })); ImageboardProviderPool.AddProvider(new ImageboardProvider <KonachanPost>(new ImageboardConfigurations { QueryKey = new Uri("https://konachan.com/post.json?tags="), BlacklistedTags = { "loli", "shota", } })); ImageboardProviderPool.AddProvider(new ImageboardProvider <YanderePost>(new ImageboardConfigurations { QueryKey = new Uri("https://yande.re/post.json?tags="), BlacklistedTags = { "loli", "shota", } })); }