public async Task GetCompleteEmoteInfoListAsync() { var fields = EmoteStats.GetAllValues(true, Context.Guild.Id, true) .Where(o => Context.Guild.Emotes.Any(x => x.ToString() == o.EmoteID)) .Select(o => new EmbedFieldBuilder().WithName(o.GetRealId()).WithValue(o.GetFormatedInfo())) .ToList(); var pages = new List <PaginatedEmbedPage>(); const int maxFieldsCount = EmbedBuilder.MaxFieldCount - 1; var pagesCount = Math.Ceiling((float)fields.Count / maxFieldsCount); for (int i = 0; i < pagesCount; i++) { var page = new PaginatedEmbedPage(null); page.AddFields(fields.Skip(i * maxFieldsCount).Take(maxFieldsCount)); pages.Add(page); } var embed = new PaginatedEmbed() { Title = "Kompletní statistika emotů", Pages = pages, ResponseFor = Context.User }; await SendPaginatedEmbedAsync(embed); }
private PaginatedEmbed GetPaginatedResult(List <EmbedFieldBuilder> fields, string title) { var pages = new List <PaginatedEmbedPage>(); const int maxFieldsCount = EmbedBuilder.MaxFieldCount - 1; var pagesCount = Math.Ceiling((float)fields.Count / maxFieldsCount); for (int i = 0; i < pagesCount; i++) { var page = new PaginatedEmbedPage(null); page.AddFields(fields.Skip(i * maxFieldsCount).Take(maxFieldsCount)); pages.Add(page); } return(new PaginatedEmbed() { Title = title, Pages = pages, ResponseFor = Context.User }); }