private static async Task <EmbedBuilder> BuildForNextPlaces(KarmaTable table, IGuild guild, int startIndex, int pagesize) { IEnumerable <KeyValuePair <ulong, int> > places = table.GetLeaderboardPlaces(startIndex, pagesize); EmbedBuilder eb = new EmbedBuilder() .WithColor(new Color(0, 255, 255)) .WithTitle("Karma Leaderboard:"); int count = places.Count(); for (int i = 0; i < count; i++) { KeyValuePair <ulong, int> place = places.ElementAt(i); IGuildUser user = await guild.GetUserAsync(place.Key); string pointsDisplay = $"{ place.Value } point{ (place.Value != 1 ? "s" : "") }"; string title = GetPlaceStringRepresentation(startIndex + i); string content = $"{ UserHelper.GetDisplayName(user) } with { pointsDisplay }."; eb.AddField(title, content); } return(eb); }
public KarmaCommand(KarmaTable karmaTable, SettingsTable settings) { _karmaTable = karmaTable; _settings = settings; }
public LeaderboardNavigator(KarmaTable table, SettingsTable settings) { _table = table; _settings = settings; }
public LeaderboardCommand(KarmaTable karmaTable, SettingsTable settings, LeaderboardNavigator navigator) { _karmaTable = karmaTable; _settings = settings; _navigator = navigator; }
public PointsCommand(KarmaTable karmaTable, SettingsTable settingsTable) { _karmaTable = karmaTable; _settings = settingsTable; }