i used that code to add top guild leader flag to winner guild but the problem when the war start the flag doesn't remove here is the c# code
Code:
if (client.Guild != null)
{
if (client.Entity.GuildRank == (ushort)Game.Enums.GuildMemberRank.DeputyLeader)
{
if (client.Guild.Name == Game.ConquerStructures.Society.GuildWar.Pole.Name || Game.ConquerStructures.Society.GuildWar.IsWar == false)
{
client.Entity.AddFlag(Update.Flags.TopDeputyLeader);
}
else
{
client.Entity.RemoveFlag(Update.Flags.TopDeputyLeader);
}
}
else if (client.Entity.GuildRank == (ushort)Game.Enums.GuildMemberRank.GuildLeader)
{
if (client.Guild.Name == Game.ConquerStructures.Society.GuildWar.Pole.Name || Game.ConquerStructures.Society.GuildWar.IsWar == false)
{
client.Entity.AddFlag(Update.Flags.TopGuildLeader);
}
else
{
client.Entity.RemoveFlag(Update.Flags.TopGuildLeader);
}
}
}
Code:
case "@save":
{
using (var conn = Database.DataHolder.MySqlConnection)
{
conn.Open();
var WC = ServerBase.Kernel.GamePool.Values.ToArray();
int total = WC.Length;
foreach (Client.GameState client in WC)
{
client.Account.Save(conn);
Database.EntityTable.SaveEntity(client, conn);
Database.SkillTable.SaveSkills(client, conn);
Database.ArenaTable.SaveArenaStatistics(client.ArenaStatistic, conn);
}
conn.Close();
new Database.MySqlCommand(Database.MySqlCommandType.UPDATE).Update("configuration")
.Set("GuildID", Game.ConquerStructures.Society.Guild.GuildCounter.Now)
.Set("ItemUID", Network.GamePackets.ConquerItem.ItemUID.Now)
.Set("DetainItemUID", Database.DetainedItemTable.Counter.Now).Set("ClanUID", Game.Clans.ClanCount.Now)
.Where("Server", ServerBase.Constants.ServerName).Execute();
}
}