public async Task SessionInfoUnsub(CommandContext ctx) { logger.Debug(ctx.User.Username + " called sessionInfoUnsub!"); using (KomoBaseAccess kba = new KomoBaseAccess()) { kba.UpdateSubscription(ctx.User.Username, false); } await ctx.RespondAsync("Nem kapsz több infót a játékmenetedről " + ctx.User.Username + "."); }
public async Task SessionInfoSub(CommandContext ctx) { logger.Debug(ctx.User.Username + " called sessionInfoSub!"); using (KomoBaseAccess kba = new KomoBaseAccess()) { kba.UpdateSubscription(ctx.User.Username, true); } await ctx.RespondAsync("Mostantól küldeni fogom mennyit függtél kedves " + ctx.User.Username + "."); }
public async Task SetWowRealm(CommandContext ctx, string realm) { logger.Debug(ctx.User.Username + " called SetWowRealm!"); try { using (KomoBaseAccess kba = new KomoBaseAccess()) { kba.UpdateWowRealm(ctx.User.Username, realm); } await ctx.RespondAsync("Beirtam a naplóba a realmodat!"); } catch (Exception) { await ctx.RespondAsync("Valami hiba történt!"); } }
public async Task SetWowName(CommandContext ctx, string name) { logger.Debug(ctx.User.Username + " called wow setName!"); try { using (KomoBaseAccess kba = new KomoBaseAccess()) { kba.UpdateWowCharName(ctx.User.Username, name); } await ctx.RespondAsync("Beirtam a naplóba a karaktered nevét!"); } catch (Exception) { await ctx.RespondAsync("Valami hiba történt!"); } }
public async Task SetCRTag(CommandContext ctx, string tag = null) { logger.Debug(ctx.User.Username + "called CR setTag!"); if (ValidateID(tag)) { using (KomoBaseAccess kba = new KomoBaseAccess()) { kba.UpdateCRTag(ctx.User.Username, tag); } await ctx.RespondAsync("Bevéstem a naplóba a Clash Royale tagedet " + ctx.User.Username + "."); } }
public async Task SetWowRealmAndName(CommandContext ctx, string realm, string charname) { logger.Debug(ctx.User.Username + " called setRealmCharname!"); try { using (KomoBaseAccess kba = new KomoBaseAccess()) { kba.UpdateWowRealm(ctx.User.Username, realm); kba.UpdateWowCharName(ctx.User.Username, charname); } await ctx.RespondAsync("Beirtam a naplóba a realmodat és a nevedet!"); } catch (Exception) { await ctx.RespondAsync("Valami hiba történt!"); } }
private static async Task Initialize(DiscordClient client, JsonConfig config) { //SQLite database using (KomoBaseAccess kba = new KomoBaseAccess()) { kba.Initialize(); kba.SyncUsers(client.Guilds.FirstOrDefault().Value.Members.Select(x => x.Username).ToList()); } var users = client.Guilds.FirstOrDefault().Value.Members.ToList <DiscordMember>(); //check if any mandatory channel is missing. var currentVoiceChannels = client.Guilds.FirstOrDefault().Value.Channels.Where(x => x.Type == ChannelType.Voice); List <string> currentVoiceChannelNames = new List <string>(); List <string> mandatoryChannels = config.mandatoryVoiceChannels.Split(';').ToList <string>(); List <string> missingChannels = new List <string>(); foreach (DiscordChannel channel in currentVoiceChannels) { currentVoiceChannelNames.Add(channel.Name); } foreach (string channelName in mandatoryChannels) { if (!currentVoiceChannelNames.Contains(channelName)) { missingChannels.Add(channelName); } } if (missingChannels != null && missingChannels.Count > 0) { foreach (string channelName in missingChannels) { await client.Guilds.FirstOrDefault().Value.CreateChannelAsync(channelName, ChannelType.Voice, client.Guilds.FirstOrDefault().Value.Channels.Where(x => x.Name.ToLower() == "voice channels").FirstOrDefault(), null, null, null, "Mandatory " + "channel recreation on initialization."); } } Commands.startTime = DateTime.UtcNow; WireUpEvents(client); }
public async Task GetPointBalance(CommandContext ctx) { logger.Debug(ctx.User.Username + " called Mennyi!"); long points = 0; try { using (KomoBaseAccess kba = new KomoBaseAccess()) { points = kba.GetPoints(ctx.User.Username); } await ctx.RespondAsync("Kemény " + points + " pontod van jelenleg!"); } catch (Exception e) { await ctx.RespondAsync(e.Message); } }
public async Task GetLeaderboard(CommandContext ctx) { logger.Debug(ctx.User.Username + " called ranglista!"); Dictionary <string, long> dict = new Dictionary <string, long>(); try { using (KomoBaseAccess kba = new KomoBaseAccess()) { dict = kba.GetLeaderboard(); } string msg = ConstructLeaderboardString(dict); await ctx.RespondAsync(msg); } catch (Exception e) { await ctx.RespondAsync(e.Message); } }
public static async Task PresenceUpdated(PresenceUpdateEventArgs e, DiscordClient client) { if (!e.Member.IsBot) { try { using (KomoBaseAccess kba = new KomoBaseAccess()) { bool subStatus = kba.SubStatus(e.Member.Username); bool isStopped = (e.Game == null || e.Game.Name == null || e.Game.Name == string.Empty) && gameStartedDictionary.ContainsKey(e.Member); int points = 0; string msg = string.Empty; //add points if (isStopped) { msg = GetTimeLapsedString(DateTime.Now, gameStartedDictionary[e.Member], out points); kba.AddPoints(e.Member.Username, points); } //if just started playing if (e.Game != null && e.Game.Name != null && !gameStartedDictionary.ContainsKey(e.Member) && (e.PresenceBefore.Game == null || e.PresenceBefore.Game.Name == string.Empty)) { gameStartedDictionary.Add(e.Member, DateTime.Now); } //if ended else if (isStopped) { gameStartedDictionary.Remove(e.Member); } if (subStatus == true && isStopped) { DiscordDmChannel dm = await client.CreateDmAsync(e.Member); await client.SendMessageAsync(dm, "No! Ennyit függtél most: " + msg, false, null); } } } catch (Exception ex) { logger.Error(DateTime.UtcNow.ToString() + ": " + ex.Message); } } }
public async Task GetCRName(CommandContext ctx) { logger.Debug(ctx.User.Username + " called CR getTag!"); string tag = string.Empty; using (KomoBaseAccess kba = new KomoBaseAccess()) { tag = kba.GetCRTag(ctx.User.Username); } if (string.IsNullOrEmpty(tag)) { await ctx.RespondAsync("Nem találni a naplóban Clash Royale Tag-et! A setTag paranccsal beállithatod."); } else { await ctx.RespondAsync("A te Clash Royale tag-ed: " + tag + "."); } }