private string GetGuildPrefix(ulong id) { string prefix; return(GuildPrefixes.TryGetValue(id, out prefix) ? prefix : "!"); }
private Task OnGuildAvailable(GuildCreateEventArgs e) { if (!ServerConfigurationManager.LocalConfiguration.ContainsKey(e.Guild.Id)) { ServerConfigurationManager.Instance.GenerateConfigurationFromIdAsync(e.Guild.Id).GetAwaiter(); } if (!GuildPrefixes.ContainsKey(e.Guild.Id)) { GuildPrefixes.Add(e.Guild.Id, "!"); } e.Client.DebugLogger.LogMessage(LogLevel.Info, "Silk!", $"Guild available: {e.Guild.Name}", DateTime.Now); return(Task.CompletedTask); }
public static async Task SetPrefix(ulong guildId, string prefix) { var guildIdString = guildId.ToString(); using (var prefixesDatabase = new SqliteConnection(DatabasePath)) { bool doesPrefixExist; await prefixesDatabase.OpenAsync(); using (SqliteCommand checkExist = prefixesDatabase.CreateCommand()) { checkExist.CommandText = $"select * from {PrefixTable} where id like @ID"; checkExist.Parameters.Add("@ID", SqliteType.Text); checkExist.Parameters["@ID"].Value = guildIdString; doesPrefixExist = (await checkExist.ExecuteScalarAsync()) == null ? false : true; } if (doesPrefixExist) { using (SqliteCommand updatePrefix = prefixesDatabase.CreateCommand()) { updatePrefix.CommandText = $"update {PrefixTable} set prefix = @PREFIX where id = @ID"; updatePrefix.Parameters.Add("@PREFIX", SqliteType.Text); updatePrefix.Parameters.Add("@ID", SqliteType.Text); updatePrefix.Parameters["@PREFIX"].Value = prefix; updatePrefix.Parameters["@ID"].Value = guildIdString; await updatePrefix.ExecuteNonQueryAsync(); } } else { using (SqliteCommand insertPrefix = prefixesDatabase.CreateCommand()) { insertPrefix.CommandText = $"insert into {PrefixTable} (id, prefix) values (@ID, @PREFIX)"; insertPrefix.Parameters.Add("@ID", SqliteType.Text); insertPrefix.Parameters.Add("@PREFIX", SqliteType.Text); insertPrefix.Parameters["@ID"].Value = guildIdString; insertPrefix.Parameters["@PREFIX"].Value = prefix; await insertPrefix.ExecuteNonQueryAsync(); } } prefixesDatabase.Close(); } GuildPrefixes.AddOrUpdate(guildId, prefix, (id, oldprefix) => oldprefix = prefix); }
private Task OnGuildJoin(GuildCreateEventArgs e) { GuildPrefixes.Add(e.Guild.Id, "!"); return(Task.CompletedTask); }