public static Enums.AccountStatus Authenticate(Client.AuthClient client, string Account, string Password) { try { using (var sql = new SqlHandler(Program.Config.ReadString("AuthConnectionString"))) { using (var cmd = new SqlCommandBuilder(sql, SqlCommandType.SELECT, true)) { cmd.AddWhereValue("AccountName", Account); cmd.AddWhereValue("AccountPassword", Password); cmd.Finish("DB_Accounts"); } if (!sql.Read()) return Enums.AccountStatus.Invalid_AccountID_Or_Password; client.DatabaseUID = sql.ReadInt32("AccountID"); client.Server = sql.ReadByte("AccountServer"); client.Account = Account; client.Password = Password; using (var sql2 = new SqlHandler(Program.Config.ReadString("AuthConnectionString"))) { using (var cmd2 = new SqlCommandBuilder(sql2, SqlCommandType.UPDATE, true)) { cmd2.AddWhereValue("AccountID", client.DatabaseUID); if (sql.ReadBoolean("AccountBanned")) { DateTime banexpire = sql.ReadDateTime("AccountBanExpire"); if (DateTime.Now < banexpire) return Enums.AccountStatus.Account_Banned; cmd2.AddUpdateValue("AccountBanned", false); } cmd2.AddUpdateValue("AccountLastLoginIP", client.NetworkClient.IP); cmd2.Finish("DB_Accounts"); } sql2.Execute(); } } return Enums.AccountStatus.Ready; } catch (Exception e) { Console.WriteLine(e.ToString()); return Enums.AccountStatus.Datebase_Error; } }
public static bool LoadArenaQualifiers() { using (var sql = new SqlHandler(Program.Config.ReadString("GameConnectionString"))) { using (var cmd = new SqlCommandBuilder(sql, SqlCommandType.SELECT, false)) { cmd.Finish("DB_ArenaQualifier"); } while (sql.Read()) { Data.ArenaInfo arena = new ProjectX_V3_Game.Data.ArenaInfo(); arena.ArenaID = sql.ReadInt32("ArenaID"); arena.DatabaseID = sql.ReadInt32("PlayerID"); arena.Level = sql.ReadUInt32("ArenaLevel"); arena.Class = sql.ReadUInt32("ArenaClass"); arena.Name = sql.ReadString("PlayerName"); arena.Mesh = sql.ReadUInt32("Mesh"); arena.ArenaTotalWins = sql.ReadUInt32("TotalWins"); arena.ArenaWinsToday = sql.ReadUInt32("TotalWinsToday"); arena.ArenaTotalLoss = sql.ReadUInt32("TotalLoss"); arena.ArenaLossToday = sql.ReadUInt32("TotalLossToday"); arena.ArenaPoints = sql.ReadUInt32("ArenaPoints"); arena.ArenaHonorPoints = sql.ReadUInt32("HonorPoints"); DateTime dailyupdate = sql.ReadDateTime("TodayUpdate"); if (DateTime.Now >= dailyupdate.AddHours(24)) { UpdateArenaInfo(arena.DatabaseID, "TodayUpdate", DateTime.Now); arena.ArenaLossToday = 0; arena.ArenaWinsToday = 0; arena.Save(); } if (!Data.ArenaQualifier.AddArenaInfo(arena)) { return false; } } } Data.ArenaQualifier.GetTop10(); Data.ArenaQualifier.GetTop10(); return true; }