public static AllianceRecord GetAllianceFromGuild(int guildId)
        {
            GuildAllianceRecord allianceMember = GuildAllianceRecord.GetCharacterAlliance(guildId);

            if (allianceMember == null)
            {
                return(null);
            }
            return(AllianceProvider.GetAlliance(allianceMember.AllianceId));
        }
        public static void LeaveAlliance(int guildId)
        {
            GuildAllianceRecord         AllianceMember = GuildAllianceRecord.GuildsAlliances.Find(x => x.GuildId == guildId);
            List <CharacterGuildRecord> guildMembers   = CharacterGuildRecord.CharactersGuilds.FindAll(x => x.GuildId == guildId);

            foreach (CharacterGuildRecord guildMember in guildMembers)
            {
                Character record = WorldServer.Instance.GetOnlineClient(guildMember.CharacterId).Character;
                AllianceRecord.OnCharacterLeftAlliance(record);
            }
            AllianceMember.RemoveElement();
        }
        public static void JoinAlliance(GuildRecord Guild, AllianceRecord Alliance, WorldClient Inviter = null)
        {
            GuildAllianceRecord Gmember = new GuildAllianceRecord(Guild.Id, Alliance.Id);

            Gmember.AddElement();
            if (Inviter != null)
            {
                Inviter.Send(new AllianceInvitationAnswerMessage(true));
            }
            foreach (CharacterGuildRecord member in CharacterGuildRecord.CharactersGuilds.FindAll(x => x.GuildId == Guild.Id))
            {
                AllianceRecord.OnCharacterJoinAlliance(CharacterRecord.GetCharacterRecordById(member.CharacterId), Alliance);
            }
        }