private void AddNewRank(Guild guild, GuildMemberRank rank) { if(guild == null) return; if (rank.RankName == "Guildmaster") rank.RankPrivileges = 7; guild.GuildRanks.Add(rank); AddHistoryEvent(guild, new HistoryEvent {Args = GuildHistoryStrings.AddNewRank(rank.RankName)}); UpdateGuild(guild); }
/* public List<Player> LoadPlayerGuild(string accName) { string cmdString = "SELECT * FROM `guilds` WHERE AccountName=?username AND deleted = ?delete"; MySqlCommand command = new MySqlCommand(cmdString, GuildDAOConnection); command.Parameters.AddWithValue("?username", accName); command.Parameters.AddWithValue("?delete", 0); MySqlDataReader reader = command.ExecuteReader(); List<Player> players = new List<Player>(); if (reader.HasRows) { while (reader.Read()) { Player player = new Player() { Id = reader.GetInt32(0), AccountName = reader.GetString(1), Level = reader.GetInt32(2), Exp = reader.GetInt64(3), ExpRecoverable = reader.GetInt64(4), Mount = reader.GetInt32(5), UiSettings = (reader.GetString(6) != null) ? HexToBytes(reader.GetString(6)) : new byte[0], GuildAccepted = (byte)reader.GetInt16(7), PraiseGiven = (byte)reader.GetInt16(8), LastPraise = reader.GetInt32(9), CurrentBankSection = reader.GetInt32(10), CreationDate = reader.GetInt32(11), LastOnline = reader.GetInt32(12) }; players.Add(player); } } reader.Close(); foreach (var player in players) { cmdString = "SELECT * FROM character_data WHERE PlayerId=?id"; command = new MySqlCommand(cmdString, PlayerDAOConnection); command.Parameters.AddWithValue("?id", player.Id); reader = command.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { player.PlayerData = new PlayerData() { Name = reader.GetString(1), Gender = (Gender)Enum.Parse(typeof(Gender), reader.GetString(2)), Race = (Race)Enum.Parse(typeof(Race), reader.GetString(3)), Class = (PlayerClass)Enum.Parse(typeof(PlayerClass), reader.GetString(4)), Data = HexToBytes(reader.GetString(5)), Details = HexToBytes(reader.GetString(6)), }; player.Position = new Structures.World.WorldPosition() { MapId = reader.GetInt32(7), X = reader.GetFloat(8), Y = reader.GetFloat(9), Z = reader.GetFloat(10), Heading = reader.GetInt16(11) }; } } reader.Close(); } return players; } */ public bool AddGuildRank(Guild g, GuildMemberRank gmr) { string SQL = "INSERT INTO guild_ranks " + "(gid, rankprivileges, rankname) " + "VALUES(?gid, ?rankpriv, ?rankname);"; // Are we GM if (gmr.RankName == "GuildMaster") gmr.RankPrivileges = 7; else gmr.RankPrivileges = 0; MySqlCommand cmd = new MySqlCommand(SQL, GuildDAOConnection); cmd.Parameters.AddWithValue("?gid", g.GuildId); cmd.Parameters.AddWithValue("?rankpriv", gmr.RankPrivileges); cmd.Parameters.AddWithValue("?rankname", gmr.RankName); try { cmd.ExecuteNonQuery(); } catch (Exception ex) { Logger.WriteLine(LogState.Exception ,"DAO: Guild Rank Add Error!" + ex.Message); return false; } return true; }