public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            HasGenerated = reader.ReadBool();

            GuildStats = new Dictionary <Guild, VvVGuildStats>();
            Battle     = new VvVBattle(reader, this);

            int count = reader.ReadInt();

            for (int i = 0; i < count; i++)
            {
                Item item = reader.ReadItem();

                if (item != null)
                {
                    AddVvVItem(item);
                }
            }

            count = reader.ReadInt();
            for (int i = 0; i < count; i++)
            {
                Guild         g     = reader.ReadGuild() as Guild;
                VvVGuildStats stats = new VvVGuildStats(g, reader);

                if (g != null)
                {
                    GuildStats[g] = stats;
                }
            }
        }
Beispiel #2
0
        public override void Deserialize( GenericReader reader )
        {
            base.Deserialize( reader );

            int version = reader.ReadInt();

            switch ( version )
            {
                case 1:
                {
                    m_Guild = reader.ReadGuild() as Server.Guilds.Guild;

                    goto case 0;
                }
                case 0:
                {
                    break;
                }
            }

            if ( m_Guild == null )
                this.Delete();
            else
                Timer.DelayCall( TimeSpan.Zero, new TimerCallback( ResetType ) );
        }
Beispiel #3
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            Active = reader.ReadBool();

            if (version == 0)
            {
                reader.ReadBool();
            }

            if (version < 2)
            {
                reader.ReadGuild();
            }

            Score            = reader.ReadInt();
            Kills            = reader.ReadInt();
            Deaths           = reader.ReadInt();
            Assists          = reader.ReadInt();
            ReturnedSigils   = reader.ReadInt();
            DisarmedTraps    = reader.ReadInt();
            StolenSigils     = reader.ReadInt();
            ResignExpiration = reader.ReadDateTime();
        }
Beispiel #4
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 1:
            {
                m_Guild = reader.ReadGuild() as Guild;

                goto case 0;
            }

            case 0:
            {
                break;
            }
            }

            if (m_Guild == null)
            {
                this.Delete();
            }
        }
Beispiel #5
0
        public override void Deserialize( GenericReader reader )
        {
            base.Deserialize( reader );

            int version = reader.ReadInt();

            switch ( version )
            {
                case 1:
                    {
                        m_Guild = reader.ReadGuild() as Guild;

                        goto case 0;
                    }
                case 0:
                    {
                        break;
                    }
            }

            if ( m_Guild == null )
            {
                this.Delete();
            }
        }
Beispiel #6
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 1:
            {
                m_Guild = reader.ReadGuild() as Server.Guilds.Guild;

                goto case 0;
            }

            case 0:
            {
                break;
            }
            }

            if (m_Guild == null)
            {
                this.Delete();
            }
            else
            {
                Timer.DelayCall(TimeSpan.Zero, new TimerCallback(ResetType));
            }
        }
Beispiel #7
0
        public BattleTeam(GenericReader reader)
        {
            int version = reader.ReadInt();

            PlayerStats = new List <VvVPlayerBattleStats>();

            Guild  = reader.ReadGuild() as Guild;
            Score  = reader.ReadInt();
            Silver = reader.ReadInt();

            Kills   = reader.ReadInt();
            Assists = reader.ReadInt();
            Deaths  = reader.ReadInt();
            Stolen  = reader.ReadInt();

            ViceReturned   = reader.ReadInt();
            VirtueReturned = reader.ReadInt();
            Disarmed       = reader.ReadInt();

            int count = reader.ReadInt();

            for (int i = 0; i < count; i++)
            {
                PlayerMobile         pm    = reader.ReadMobile() as PlayerMobile;
                VvVPlayerBattleStats stats = new VvVPlayerBattleStats(reader, pm);

                if (pm != null)
                {
                    PlayerStats.Add(stats);
                }
            }
        }
Beispiel #8
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 3:
            {
                m_BeforeChangeover = reader.ReadBool();
                goto case 2;
            }

            case 2:
            {
                m_GuildName   = reader.ReadString();
                m_GuildAbbrev = reader.ReadString();

                goto case 1;
            }

            case 1:
            {
                m_Guild = reader.ReadGuild() as Guild;

                //if (m_Guild == null)
                //Console.WriteLine("Guild: null ");


                goto case 0;
            }

            case 0:
            {
                break;
            }
            }

            //if( Guild.NewGuildSystem && ItemID == 0xED4 )
            //    ItemID = 0xED6;

            if (m_Guild != null)
            {
                m_GuildName   = m_Guild.Name;
                m_GuildAbbrev = m_Guild.Abbreviation;
            }

            //if( version <= 2 )
            //    m_BeforeChangeover = true;

            //if( Guild.NewGuildSystem && m_BeforeChangeover )
            //    Timer.DelayCall( TimeSpan.Zero, new TimerCallback( AddToHouse ) );

            if (/*!Guild.NewGuildSystem &&*/ m_Guild == null)
            {
                this.Delete();
            }
        }
Beispiel #9
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            GuildStats   = new Dictionary <Guild, VvVGuildStats>();
            ExemptCities = new List <VvVCity>();

            switch (version)
            {
            case 2:
            case 1:
            {
                int count = reader.ReadInt();
                for (int i = 0; i < count; i++)
                {
                    ExemptCities.Add((VvVCity)reader.ReadInt());
                }

                goto case 0;
            }

            case 0:
            {
                HasGenerated = reader.ReadBool();

                Battle = new VvVBattle(reader, this);

                int count = reader.ReadInt();
                for (int i = 0; i < count; i++)
                {
                    Item item = reader.ReadItem();

                    if (item != null)
                    {
                        AddVvVItem(item);
                    }
                }

                count = reader.ReadInt();
                for (int i = 0; i < count; i++)
                {
                    Guild         g     = reader.ReadGuild() as Guild;
                    VvVGuildStats stats = new VvVGuildStats(g, reader);

                    if (g != null)
                    {
                        GuildStats[g] = stats;
                    }
                }
            }
            break;
            }

            if (version == 1)
            {
                Timer.DelayCall(FixVvVItems);
            }
        }
Beispiel #10
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            reader.ReadInt();

            Level = (SecureLevel)reader.ReadInt();
            Guild = reader.ReadGuild() as Guild;
        }
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            this.m_GuildAbbr = reader.ReadString();
            this.m_Guild     = (Server.Guilds.Guild)reader.ReadGuild();
        }
Beispiel #12
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 3:
            {
                m_BeforeChangeover = reader.ReadBool();
                goto case 2;
            }

            case 2:
            {
                m_GuildName   = reader.ReadString();
                m_GuildAbbrev = reader.ReadString();

                goto case 1;
            }

            case 1:
            {
                m_Guild = reader.ReadGuild() as Guild;

                goto case 0;
            }

            case 0:
            {
                break;
            }
            }

            if (Guild.NewGuildSystem && ItemID == 0xED4)
            {
                ItemID = 0xED6;
            }

            if (version <= 2)
            {
                m_BeforeChangeover = true;
            }

            if (Guild.NewGuildSystem && m_BeforeChangeover)
            {
                Timer.DelayCall(TimeSpan.Zero, new TimerCallback(AddToHouse));
            }

            if (!Guild.NewGuildSystem && m_Guild == null)
            {
                this.Delete();
            }
        }
Beispiel #13
0
        public TownCryerGuildEntry(GenericReader reader)
        {
            int version = reader.ReadInt();

            Title         = reader.ReadString();
            FullTitle     = reader.ReadString();
            Body          = reader.ReadString();
            Author        = reader.ReadString();
            Guild         = reader.ReadGuild() as Guild;
            EventTime     = reader.ReadDateTime();
            EventLocation = reader.ReadString();
            Expires       = reader.ReadDateTime();
        }
Beispiel #14
0
		public WarDeclaration(GenericReader reader)
		{
			int version = reader.ReadInt();

			switch (version)
			{
				case 0:
					{
						m_Kills = reader.ReadInt();
						m_MaxKills = reader.ReadInt();

						m_WarLength = reader.ReadTimeSpan();
						m_WarBeginning = reader.ReadDateTime();

						m_Guild = reader.ReadGuild() as Guild;
						m_Opponent = reader.ReadGuild() as Guild;

						m_WarRequester = reader.ReadBool();

						break;
					}
			}
		}
Beispiel #15
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 3:
            {
                m_BeforeChangeover = reader.ReadBool();
                goto case 2;
            }

            case 2:
            {
                m_GuildName   = reader.ReadString();
                m_GuildAbbrev = reader.ReadString();

                goto case 1;
            }

            case 1:
            {
                m_Guild = reader.ReadGuild() as Guild;

                goto case 0;
            }

            case 0:
            {
                break;
            }
            }

            if (version <= 2)
            {
                m_BeforeChangeover = true;
            }

            if (m_Guild == null)
            {
                this.Delete();
            }
        }
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            switch (version)
            {
            case 4:
                OneTimePointsRetention = reader.ReadBool();
                goto case 3;

            case 3:
                TotalDeaths = reader.ReadInt();
                TotalKills  = reader.ReadInt();
                goto case 2;

            case 2:
                Active = reader.ReadBool();

                if (version == 0)
                {
                    reader.ReadBool();
                }

                if (version < 2)
                {
                    reader.ReadGuild();
                }

                Score            = reader.ReadInt();
                Kills            = reader.ReadInt();
                Deaths           = reader.ReadInt();
                Assists          = reader.ReadInt();
                ReturnedSigils   = reader.ReadInt();
                DisarmedTraps    = reader.ReadInt();
                StolenSigils     = reader.ReadInt();
                ResignExpiration = reader.ReadDateTime();
                break;
            }

            if (version == 3)
            {
                OneTimePointsRetention = true;
            }
        }
Beispiel #17
0
		public AllianceInfo(GenericReader reader)
		{
			int version = reader.ReadInt();

			switch (version)
			{
				case 0:
					{
						m_Name = reader.ReadString();
						m_Leader = reader.ReadGuild() as Guild;

						m_Members = reader.ReadStrongGuildList<Guild>();
						m_PendingMembers = reader.ReadStrongGuildList<Guild>();

						break;
					}
			}
		}
Beispiel #18
0
        public AllianceInfo(GenericReader reader)
        {
            int version = reader.ReadInt();

            switch( version )
            {
                case 0:
                    {
                        this.m_Name = reader.ReadString();
                        this.m_Leader = reader.ReadGuild() as Guild;

                        this.m_Members = reader.ReadStrongGuildList<Guild>();
                        this.m_PendingMembers = reader.ReadStrongGuildList<Guild>();

                        break;
                    }
            }
        }
Beispiel #19
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            Active             = reader.ReadBool();
            PendingJoinMessage = reader.ReadBool();
            Guild = reader.ReadGuild() as Guild;

            Score            = reader.ReadInt();
            Kills            = reader.ReadInt();
            Deaths           = reader.ReadInt();
            Assists          = reader.ReadInt();
            ReturnedSigils   = reader.ReadInt();
            DisarmedTraps    = reader.ReadInt();
            StolenSigils     = reader.ReadInt();
            ResignExpiration = reader.ReadDateTime();
        }
Beispiel #20
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 1:
            {
                m_GuildName   = reader.ReadString();
                m_GuildAbbrev = reader.ReadString();

                m_Guild = reader.ReadGuild() as Guild;

                break;
            }
            }
        }
Beispiel #21
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 2:
                m_Serial = reader.ReadInt();
                goto case 1;

            case 1:
                m_Guild = reader.ReadGuild() as Guild;
                goto case 0;

            case 0:
                break;
            }
        }
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 3:
            {                               // data removed, skip load in case 2
                goto case 1;
            }

            case 2:
            {
                bool dmy = reader.ReadBool();

                goto case 1;
            }

            case 1:
            {
                m_Guild = reader.ReadGuild() as Guild;

                goto case 0;
            }

            case 0:
            {
                break;
            }
            }

            if (m_Guild == null)
            {
                this.Delete();
            }
        }
Beispiel #23
0
        public override void Deserialize(GenericReader reader)
        {
            int version = reader.ReadInt();

            switch (version)
            {
            case 7:
            case 6:
            case 5:
            {
                int count = reader.ReadInt();

                PendingWars = new List <WarDeclaration>();
                for (int i = 0; i < count; i++)
                {
                    PendingWars.Add(new WarDeclaration(reader));
                }

                count        = reader.ReadInt();
                AcceptedWars = new List <WarDeclaration>();
                for (int i = 0; i < count; i++)
                {
                    AcceptedWars.Add(new WarDeclaration(reader));
                }

                bool isAllianceLeader = reader.ReadBool();

                if (isAllianceLeader)
                {
                    m_AllianceInfo = new AllianceInfo(reader);
                }
                else
                {
                    m_AllianceLeader = reader.ReadGuild() as Guild;
                }

                goto case 4;
            }

            case 4:
            {
                AllyDeclarations = reader.ReadStrongGuildList <Guild>();
                AllyInvitations  = reader.ReadStrongGuildList <Guild>();

                goto case 3;
            }

            case 3:
            {
                m_TypeLastChange = reader.ReadDateTime();

                goto case 2;
            }

            case 2:
            {
                if (version < 6)
                {
                    reader.ReadInt();
                }

                goto case 1;
            }

            case 1:
            {
                LastFealty = reader.ReadDateTime();

                goto case 0;
            }

            case 0:
            {
                m_Leader = reader.ReadMobile();

                if (m_Leader is PlayerMobile)
                {
                    ((PlayerMobile)m_Leader).GuildRank = RankDefinition.Leader;
                }

                m_Name         = reader.ReadString();
                m_Abbreviation = reader.ReadString();

                Allies          = reader.ReadStrongGuildList <Guild>();
                Enemies         = reader.ReadStrongGuildList <Guild>();
                WarDeclarations = reader.ReadStrongGuildList <Guild>();
                WarInvitations  = reader.ReadStrongGuildList <Guild>();

                Members    = reader.ReadStrongMobileList();
                Candidates = reader.ReadStrongMobileList();
                Accepted   = reader.ReadStrongMobileList();

                if (version < 7)
                {
                    reader.ReadItem();
                    reader.ReadItem();
                }

                Charter = reader.ReadString();
                Website = reader.ReadString();

                break;
            }
            }

            if (AllyDeclarations == null)
            {
                AllyDeclarations = new List <Guild>();
            }

            if (AllyInvitations == null)
            {
                AllyInvitations = new List <Guild>();
            }

            if (AcceptedWars == null)
            {
                AcceptedWars = new List <WarDeclaration>();
            }

            if (PendingWars == null)
            {
                PendingWars = new List <WarDeclaration>();
            }

            Timer.DelayCall(TimeSpan.Zero, VerifyGuild_Callback);
        }
Beispiel #24
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
                case 3:
                    {
                        m_BeforeChangeover = reader.ReadBool();
                        goto case 2;
                    }
                case 2:
                    {
                        m_GuildName = reader.ReadString();
                        m_GuildAbbrev = reader.ReadString();

                        goto case 1;
                    }
                case 1:
                    {
                        m_Guild = reader.ReadGuild() as Guild;

                        goto case 0;
                    }
                case 0:
                    {
                        break;
                    }
            }

            if (Guild.NewGuildSystem && ItemID == 0xED4)
                ItemID = 0xED6;

            if (version <= 2)
                m_BeforeChangeover = true;

            if (Guild.NewGuildSystem && m_BeforeChangeover)
                Timer.DelayCall(TimeSpan.Zero, new TimerCallback(AddToHouse));

            if (!Guild.NewGuildSystem && m_Guild == null)
                this.Delete();
        }
Beispiel #25
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
                case 1:
                    {
                        m_GuildName = reader.ReadString();
                        m_GuildAbbrev = reader.ReadString();

                        m_Guild = reader.ReadGuild() as Guild;

                        break;
                    }
            }
        }
Beispiel #26
0
		public WarDeclaration( GenericReader reader )
		{
			int version = reader.ReadInt();

			switch ( version )
			{
				case 0:
				{
					m_Kills = reader.ReadInt();
					m_MaxKills = reader.ReadInt();

					m_WarLength = reader.ReadTimeSpan();
					m_WarBeginning = reader.ReadDateTime();

					m_Guild = reader.ReadGuild() as Guild;
					m_Opponent = reader.ReadGuild() as Guild;

					m_WarRequester = reader.ReadBool();

					break;
				}
			}
		}
Beispiel #27
0
		public override void Deserialize( GenericReader reader )
		{
			int version = reader.ReadInt();

			switch ( version )
			{
				case 5:
				{
					int count = reader.ReadInt();

					m_PendingWars = new List<WarDeclaration>();
					for( int i = 0; i < count; i++ )
					{
						m_PendingWars.Add( new WarDeclaration( reader ) );
					}

					count = reader.ReadInt();
					m_AcceptedWars = new List<WarDeclaration>();
					for( int i = 0; i < count; i++ )
					{
						m_AcceptedWars.Add( new WarDeclaration( reader ) );
					}

					bool isAllianceLeader = reader.ReadBool();

					if( isAllianceLeader )
						m_AllianceInfo = new AllianceInfo( reader );
					else
						m_AllianceLeader = reader.ReadGuild() as Guild;


					goto case 4;
				}
				case 4:
				{
					m_AllyDeclarations = reader.ReadStrongGuildList<Guild>();
					m_AllyInvitations = reader.ReadStrongGuildList<Guild>();

					goto case 3;
				}
				case 3:
				{
					m_TypeLastChange = reader.ReadDateTime();

					goto case 2;
				}
				case 2:
				{
					m_Type = (GuildType)reader.ReadInt();

					goto case 1;
				}
				case 1:
				{
					m_LastFealty = reader.ReadDateTime();

					goto case 0;
				}
				case 0:
				{
					m_Leader = reader.ReadMobile();

					if( m_Leader is PlayerMobile )
						((PlayerMobile)m_Leader).GuildRank = RankDefinition.Leader;

					m_Name = reader.ReadString();
					m_Abbreviation = reader.ReadString();

					m_Allies = reader.ReadStrongGuildList<Guild>();
					m_Enemies = reader.ReadStrongGuildList<Guild>();
					m_WarDeclarations = reader.ReadStrongGuildList<Guild>();
					m_WarInvitations = reader.ReadStrongGuildList<Guild>();

					m_Members = reader.ReadStrongMobileList();
					m_Candidates = reader.ReadStrongMobileList();
					m_Accepted = reader.ReadStrongMobileList(); 

					m_Guildstone = reader.ReadItem();
					m_Teleporter = reader.ReadItem();

					m_Charter = reader.ReadString();
					m_Website = reader.ReadString();

					break;
				}
			}

			if ( m_AllyDeclarations == null )
				m_AllyDeclarations = new List<Guild>();

			if ( m_AllyInvitations == null )
				m_AllyInvitations = new List<Guild>();


			if ( m_AcceptedWars == null )
				m_AcceptedWars = new List<WarDeclaration>();

			if ( m_PendingWars == null )
				m_PendingWars = new List<WarDeclaration>();


			/*
			if ( ( !NewGuildSystem && m_Guildstone == null )|| m_Members.Count == 0 )
				Disband();
			*/

			Timer.DelayCall( TimeSpan.Zero, new TimerCallback( VerifyGuild_Callback ) );
		}
        public override void Deserialize(GenericReader reader)
        {
            int version = reader.ReadInt();

            if (version < 5)
            {
                FixGuilds();
            }

            switch (version)
            {
            case 5:
            {
                m_WarInitializations = reader.ReadGuildList();
                m_WarKills           = new WarKillsItem[reader.ReadInt()];
                for (int i = 0; i < m_WarKills.Length; ++i)
                {
                    m_WarKills[i].w_Guild  = reader.ReadGuild() as Guild;
                    m_WarKills[i].Kills    = reader.ReadInt();
                    m_WarKills[i].MaxKills = reader.ReadInt();
                    m_WarKills[i].WarTime  = (uint)reader.ReadInt();
                    m_WarKills[i].ExpTime  = (uint)reader.ReadInt();
                }
                m_AllianceLeader = reader.ReadBool();
                m_AllianceName   = reader.ReadString();
                goto case 4;
            }

            case 4:
            {
                m_AllyDeclarations = reader.ReadGuildList();
                m_AllyInvitations  = reader.ReadGuildList();

                goto case 3;
            }

            case 3:
            {
                m_TypeLastChange = reader.ReadDateTime();

                goto case 2;
            }

            case 2:
            {
                m_Type = (GuildType)reader.ReadInt();

                goto case 1;
            }

            case 1:
            {
                m_LastFealty = reader.ReadDateTime();

                goto case 0;
            }

            case 0:
            {
                m_Leader       = reader.ReadMobile();
                m_Name         = reader.ReadString();
                m_Abbreviation = reader.ReadString();

                m_Allies          = reader.ReadGuildList();
                m_Enemies         = reader.ReadGuildList();
                m_WarDeclarations = reader.ReadGuildList();
                m_WarInvitations  = reader.ReadGuildList();

                m_Members    = reader.ReadMobileList();
                m_Candidates = reader.ReadMobileList();
                m_Accepted   = reader.ReadMobileList();

                m_Guildstone = reader.ReadItem();
                m_Teleporter = reader.ReadItem();

                m_Charter = reader.ReadString();
                m_Website = reader.ReadString();

                break;
            }
            }

            if (m_AllyDeclarations == null)
            {
                m_AllyDeclarations = new ArrayList();
            }

            if (m_AllyInvitations == null)
            {
                m_AllyInvitations = new ArrayList();
            }

            if (m_WarInitializations == null)
            {
                m_WarInitializations = new ArrayList();
            }

            if (WarTimer1 == null)
            {
                WarTimer1 = new WarTimer();
                WarTimer1.Start();
            }

            if (m_Guildstone == null || m_Members.Count == 0)
            {
                Disband();
            }
        }
Beispiel #29
0
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();

			switch( version )
			{
				case 3:
				{
					m_BeforeChangeover = reader.ReadBool();
					goto case 2;
				}
				case 2:
				{
					m_GuildName = reader.ReadString();
					m_GuildAbbrev = reader.ReadString();

					goto case 1;
				}
				case 1:
				{
					m_Guild = reader.ReadGuild() as Guild;

					goto case 0;
				}
				case 0:
				{
					break;
				}
			}

			if( version <= 2 )
				m_BeforeChangeover = true;

			if( m_Guild == null )
				this.Delete();
		}
Beispiel #30
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            GuildStats   = new Dictionary <Guild, VvVGuildStats>();
            ExemptCities = new List <VvVCity>();
            bool enabled = false;

            switch (version)
            {
            case 3:
                enabled = reader.ReadBool();
                goto case 2;

            case 2:
            case 1:
            {
                int count = reader.ReadInt();
                for (int i = 0; i < count; i++)
                {
                    ExemptCities.Add((VvVCity)reader.ReadInt());
                }

                goto case 0;
            }

            case 0:
            {
                HasGenerated = reader.ReadBool();

                Battle = new VvVBattle(reader, this);

                int count = reader.ReadInt();
                for (int i = 0; i < count; i++)
                {
                    Item item = reader.ReadItem();

                    if (item != null)
                    {
                        AddVvVItem(item);
                    }
                }

                count = reader.ReadInt();
                for (int i = 0; i < count; i++)
                {
                    Guild         g     = reader.ReadGuild() as Guild;
                    VvVGuildStats stats = new VvVGuildStats(g, reader);

                    if (g != null)
                    {
                        GuildStats[g] = stats;
                    }
                }
            }
            break;
            }

            if (version == 1)
            {
                Timer.DelayCall(FixVvVItems);
            }

            if (Enabled && !enabled)
            {
                CreateSilverTraders();
                Server.Factions.Generator.RemoveFactions();
            }
            else if (!Enabled && enabled)
            {
                DeleteSilverTraders();
            }
        }
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();

			switch ( version )
			{
				case 2:
				{
					m_StartDecay = reader.ReadDateTime();
					goto case 1;
				}
				case 1:
				{
					m_Guild = reader.ReadGuild() as Guild;

					goto case 0;
				}
				case 0:
				{
					break;
				}
			}

			if ( m_Guild == null )
				this.Delete();
			if ( m_StartDecay != DateTime.MinValue && DateTime.Now - m_StartDecay > TimeSpan.FromDays( 7.0 ) )
				Delete();
		}
Beispiel #32
0
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();

			switch ( version )
			{
                case 3:
                {   // data removed, skip load in case 2
                    goto case 1;
                }
				case 2:
				{
					bool dmy = reader.ReadBool();
					
					goto case 1;
				}
				case 1:
				{
					m_Guild = reader.ReadGuild() as Guild;

					goto case 0;
				}
				case 0:
				{
					break;
				}
			}

			if ( m_Guild == null )
				this.Delete();
		}
Beispiel #33
0
        public override void Deserialize( GenericReader reader )
        {
            int version = reader.ReadInt();

            if ( version < 5 )
            {
                FixGuilds();
            }

            switch ( version )
            {
                case 5:
                    {
                        m_WarInitializations = reader.ReadGuildList();
                        m_WarKills = new WarKillsItem[reader.ReadInt()];
                        for ( int i = 0; i < m_WarKills.Length; ++i )
                        {
                            m_WarKills[i].w_Guild = reader.ReadGuild() as Guild;
                            m_WarKills[i].Kills = reader.ReadInt();
                            m_WarKills[i].MaxKills = reader.ReadInt();
                            m_WarKills[i].WarTime = (uint) reader.ReadInt();
                            m_WarKills[i].ExpTime = (uint) reader.ReadInt();
                        }
                        m_AllianceLeader = reader.ReadBool();
                        m_AllianceName = reader.ReadString();
                        goto case 4;
                    }
                case 4:
                    {
                        m_AllyDeclarations = reader.ReadGuildList();
                        m_AllyInvitations = reader.ReadGuildList();

                        goto case 3;
                    }
                case 3:
                    {
                        m_TypeLastChange = reader.ReadDateTime();

                        goto case 2;
                    }
                case 2:
                    {
                        m_Type = (GuildType) reader.ReadInt();

                        goto case 1;
                    }
                case 1:
                    {
                        m_LastFealty = reader.ReadDateTime();

                        goto case 0;
                    }
                case 0:
                    {
                        m_Leader = reader.ReadMobile();
                        m_Name = reader.ReadString();
                        m_Abbreviation = reader.ReadString();

                        m_Allies = reader.ReadGuildList();
                        m_Enemies = reader.ReadGuildList();
                        m_WarDeclarations = reader.ReadGuildList();
                        m_WarInvitations = reader.ReadGuildList();

                        m_Members = reader.ReadMobileList();
                        m_Candidates = reader.ReadMobileList();
                        m_Accepted = reader.ReadMobileList();

                        m_Guildstone = reader.ReadItem();
                        m_Teleporter = reader.ReadItem();

                        m_Charter = reader.ReadString();
                        m_Website = reader.ReadString();

                        break;
                    }
            }

            if ( m_AllyDeclarations == null )
            {
                m_AllyDeclarations = new ArrayList();
            }

            if ( m_AllyInvitations == null )
            {
                m_AllyInvitations = new ArrayList();
            }

            if ( m_WarInitializations == null )
            {
                m_WarInitializations = new ArrayList();
            }

            if ( WarTimer1 == null )
            {
                WarTimer1 = new WarTimer();
                WarTimer1.Start();
            }

            if ( m_Guildstone == null || m_Members.Count == 0 )
            {
                Timer.DelayCall( TimeSpan.Zero, new TimerCallback( Disband ) );
            }
        }
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            GuildStats   = new Dictionary <Guild, VvVGuildStats>();
            ExemptCities = new List <VvVCity>();

            bool enabled  = false;
            bool enhanced = false;

            switch (version)
            {
            case 4:
                int c = reader.ReadInt();
                for (int i = 0; i < c; i++)
                {
                    var pm = reader.ReadMobile() as PlayerMobile;

                    if (pm != null)
                    {
                        if (ShowNewRules == null)
                        {
                            ShowNewRules = new List <PlayerMobile>();
                        }

                        ShowNewRules.Add(pm);
                    }
                }

                enhanced = reader.ReadBool();
                goto case 3;

            case 3:
                enabled = reader.ReadBool();
                goto case 2;

            case 2:
            case 1:
            {
                int count = reader.ReadInt();
                for (int i = 0; i < count; i++)
                {
                    ExemptCities.Add((VvVCity)reader.ReadInt());
                }

                goto case 0;
            }

            case 0:
            {
                HasGenerated = reader.ReadBool();

                Battle = new VvVBattle(reader, this);

                int count = reader.ReadInt();
                for (int i = 0; i < count; i++)
                {
                    Item item = reader.ReadItem();

                    if (item != null)
                    {
                        AddVvVItem(item);
                    }
                }

                count = reader.ReadInt();
                for (int i = 0; i < count; i++)
                {
                    Guild         g     = reader.ReadGuild() as Guild;
                    VvVGuildStats stats = new VvVGuildStats(g, reader);

                    if (g != null)
                    {
                        GuildStats[g] = stats;
                    }
                }
            }
            break;
            }

            if (version == 1)
            {
                Timer.DelayCall(FixVvVItems);
            }

            if (Enabled && !enabled)
            {
                Timer.DelayCall(() =>
                {
                    CreateSilverTraders();
                });
            }
            else if (!Enabled && enabled)
            {
                DeleteSilverTraders();
            }

            if (EnhancedRules && !enhanced)
            {
                OnEnhancedRulesEnabled();
            }
        }
Beispiel #35
0
		public object DeserializeObject(GenericReader reader)
		{
			object output = null;
			XmlObjectType xmlObjectType = (XmlObjectType)reader.ReadInt();

			if (xmlObjectType == XmlObjectType.Mobile)
			{
				output = reader.ReadMobile();
			}
			else if (xmlObjectType == XmlObjectType.Item)
			{
				output = reader.ReadItem();
			}
			else if (xmlObjectType == XmlObjectType.MobileList)
			{
				output = reader.ReadStrongMobileList();
			}
			else if (xmlObjectType == XmlObjectType.ItemList)
			{
				output = reader.ReadStrongItemList();
			}
			else if (xmlObjectType == XmlObjectType.ArrayList)
			{
				int elements = reader.ReadInt();
				ArrayList list = new ArrayList(elements);
				for (int i = 0; i < elements; i++)
				{
					list.Add(DeserializeObject(reader));
				}
				output = list;
			}
			else if (xmlObjectType == XmlObjectType.DateTime)
			{
				output = reader.ReadDateTime();
			}
			else if (xmlObjectType == XmlObjectType.DateTimeOffset)
			{
				output = reader.ReadDateTimeOffset();
			}
			else if (xmlObjectType == XmlObjectType.BaseGuild)
			{
				output = reader.ReadGuild();
			}
			else if (xmlObjectType == XmlObjectType.IPAddress)
			{
				output = reader.ReadIPAddress();
			}
			else if (xmlObjectType == XmlObjectType.Map)
			{
				output = reader.ReadMap();
			}
			else if (xmlObjectType == XmlObjectType.Point3D)
			{
				output = reader.ReadPoint3D();
			}
			else if (xmlObjectType == XmlObjectType.Point2D)
			{
				output = reader.ReadPoint2D();
			}
			else if (xmlObjectType == XmlObjectType.TimeSpan)
			{
				output = reader.ReadTimeSpan();
			}
			else if (xmlObjectType == XmlObjectType.Rectangle2D)
			{
				output = reader.ReadRect2D();
			}
			else if (xmlObjectType == XmlObjectType.Rectangle3D)
			{
				output = reader.ReadRect3D();
			}
			else if (xmlObjectType == XmlObjectType.Double)
			{
				output = reader.ReadDouble();
			}
			else if (xmlObjectType == XmlObjectType.Integer)
			{
				output = reader.ReadInt();
			}
			else if (xmlObjectType == XmlObjectType.Boolean)
			{
				output = reader.ReadBool();
			}
			else if (xmlObjectType == XmlObjectType.UInt64)
			{
				output = reader.ReadULong();
			}
			else if (xmlObjectType == XmlObjectType.String)
			{
				output = reader.ReadString();
			}
			else if (xmlObjectType == XmlObjectType.Type)
			{
				output = UberScriptFunctions.Methods.TYPE(null, reader.ReadString());
			}
			else if (xmlObjectType == XmlObjectType.Other)
			{
				LoggingCustom.Log(
					"ERROR_Uberscript.txt",
					DateTime.Now + ": xmlobject: " + Name + " attached to " + AttachedTo +
					" with data of type other was deserialized");
			}
			return output;
		}
        public VvVBattle(GenericReader reader, ViceVsVirtueSystem system)
        {
            int version = reader.ReadInt();

            System = system;

            Altars       = new List <VvVAltar>();
            GuildStats   = new Dictionary <Guild, VvVGuildBattleStats>();
            KillCooldown = new Dictionary <Mobile, DateTime>();
            Participants = new List <Guild>();
            Messages     = new List <string>();
            Traps        = new List <VvVTrap>();
            Warned       = new List <Mobile>();
            Turrets      = new List <CannonTurret>();

            OnGoing = reader.ReadBool();

            if (reader.ReadInt() == 0)
            {
                StartTime           = reader.ReadDateTime();
                CooldownEnds        = reader.ReadDateTime();
                LastOccupationCheck = reader.ReadDateTime();
                NextSigilSpawn      = reader.ReadDateTime();
                NextAnnouncement    = reader.ReadDateTime();
                NextAltarActivate   = reader.ReadDateTime();
                City         = (VvVCity)reader.ReadInt();
                Sigil        = reader.ReadItem() as VvVSigil;
                VicePriest   = reader.ReadMobile() as VvVPriest;
                VirtuePriest = reader.ReadMobile() as VvVPriest;

                if (Sigil != null)
                {
                    Sigil.Battle = this;
                }

                if (VicePriest != null)
                {
                    VicePriest.Battle = this;
                }

                if (VirtuePriest != null)
                {
                    VirtuePriest.Battle = this;
                }

                int count = reader.ReadInt();
                for (int i = 0; i < count; i++)
                {
                    VvVAltar altar = reader.ReadItem() as VvVAltar;
                    if (altar != null)
                    {
                        altar.Battle = this;
                        Altars.Add(altar);
                    }
                }

                count = reader.ReadInt();
                for (int i = 0; i < count; i++)
                {
                    Guild g = reader.ReadGuild() as Guild;
                    VvVGuildBattleStats stats = new VvVGuildBattleStats(reader, g);

                    if (g != null)
                    {
                        GuildStats[g] = stats;
                    }
                }

                count = reader.ReadInt();
                for (int i = 0; i < count; i++)
                {
                    VvVTrap t = reader.ReadItem() as VvVTrap;

                    if (t != null)
                    {
                        Traps.Add(t);
                    }
                }

                Timer.DelayCall(TimeSpan.FromSeconds(10), () =>
                {
                    if (Region is GuardedRegion)
                    {
                        GuardedRegion.Disable((GuardedRegion)Region);
                    }

                    BeginTimer();

                    ActivateArrows();
                });
            }
        }
Beispiel #37
0
		public override void Deserialize(GenericReader reader)
		{
			int version = reader.ReadInt();

			switch (version)
			{
				case 5:
					{
						int count = reader.ReadInt();

						m_PendingWars = new List<WarDeclaration>();
						for (int i = 0; i < count; i++)
						{
							m_PendingWars.Add(new WarDeclaration(reader));
						}

						count = reader.ReadInt();
						m_AcceptedWars = new List<WarDeclaration>();
						for (int i = 0; i < count; i++)
						{
							m_AcceptedWars.Add(new WarDeclaration(reader));
						}

						bool isAllianceLeader = reader.ReadBool();

						if (isAllianceLeader)
						{
							m_AllianceInfo = new AllianceInfo(reader);
						}
						else
						{
							m_AllianceLeader = reader.ReadGuild() as Guild;
						}

						goto case 4;
					}
				case 4:
					{
						m_AllyDeclarations = reader.ReadStrongGuildList<Guild>();
						m_AllyInvitations = reader.ReadStrongGuildList<Guild>();

						goto case 3;
					}
				case 3:
					{
						m_TypeLastChange = reader.ReadDateTime();

						goto case 2;
					}
				case 2:
					{
						m_Type = (GuildType)reader.ReadInt();

						goto case 1;
					}
				case 1:
					{
						m_LastFealty = reader.ReadDateTime();

						goto case 0;
					}
				case 0:
					{
						m_Leader = reader.ReadMobile();

						if (m_Leader is PlayerMobile)
						{
							((PlayerMobile)m_Leader).GuildRank = RankDefinition.Leader;
						}

						m_Name = reader.ReadString();
						m_Abbreviation = reader.ReadString();

						m_Allies = reader.ReadStrongGuildList<Guild>();
						m_Enemies = reader.ReadStrongGuildList<Guild>();
						m_WarDeclarations = reader.ReadStrongGuildList<Guild>();
						m_WarInvitations = reader.ReadStrongGuildList<Guild>();

						m_Members = reader.ReadStrongMobileList();
						m_Candidates = reader.ReadStrongMobileList();
						m_Accepted = reader.ReadStrongMobileList();

						m_Guildstone = reader.ReadItem();
						m_Teleporter = reader.ReadItem();

						m_Charter = reader.ReadString();
						m_Website = reader.ReadString();

						break;
					}
			}

			if (m_AllyDeclarations == null)
			{
				m_AllyDeclarations = new List<Guild>();
			}

			if (m_AllyInvitations == null)
			{
				m_AllyInvitations = new List<Guild>();
			}

			if (m_AcceptedWars == null)
			{
				m_AcceptedWars = new List<WarDeclaration>();
			}

			if (m_PendingWars == null)
			{
				m_PendingWars = new List<WarDeclaration>();
			}

			/*
            if ( ( !NewGuildSystem && m_Guildstone == null )|| m_Members.Count == 0 )
            Disband();
            */

			Timer.DelayCall(TimeSpan.Zero, VerifyGuild_Callback);
		}
Beispiel #38
0
        public object DeserializeObject(GenericReader reader)
        {
            object        output        = null;
            XmlObjectType xmlObjectType = (XmlObjectType)reader.ReadInt();

            if (xmlObjectType == XmlObjectType.Mobile)
            {
                output = reader.ReadMobile();
            }
            else if (xmlObjectType == XmlObjectType.Item)
            {
                output = reader.ReadItem();
            }
            else if (xmlObjectType == XmlObjectType.MobileList)
            {
                output = reader.ReadStrongMobileList();
            }
            else if (xmlObjectType == XmlObjectType.ItemList)
            {
                output = reader.ReadStrongItemList();
            }
            else if (xmlObjectType == XmlObjectType.ArrayList)
            {
                int       elements = reader.ReadInt();
                ArrayList list     = new ArrayList(elements);
                for (int i = 0; i < elements; i++)
                {
                    list.Add(DeserializeObject(reader));
                }
                output = list;
            }
            else if (xmlObjectType == XmlObjectType.DateTime)
            {
                output = reader.ReadDateTime();
            }
            else if (xmlObjectType == XmlObjectType.DateTimeOffset)
            {
                output = reader.ReadDateTimeOffset();
            }
            else if (xmlObjectType == XmlObjectType.BaseGuild)
            {
                output = reader.ReadGuild();
            }
            else if (xmlObjectType == XmlObjectType.IPAddress)
            {
                output = reader.ReadIPAddress();
            }
            else if (xmlObjectType == XmlObjectType.Map)
            {
                output = reader.ReadMap();
            }
            else if (xmlObjectType == XmlObjectType.Point3D)
            {
                output = reader.ReadPoint3D();
            }
            else if (xmlObjectType == XmlObjectType.Point2D)
            {
                output = reader.ReadPoint2D();
            }
            else if (xmlObjectType == XmlObjectType.TimeSpan)
            {
                output = reader.ReadTimeSpan();
            }
            else if (xmlObjectType == XmlObjectType.Rectangle2D)
            {
                output = reader.ReadRect2D();
            }
            else if (xmlObjectType == XmlObjectType.Rectangle3D)
            {
                output = reader.ReadRect3D();
            }
            else if (xmlObjectType == XmlObjectType.Double)
            {
                output = reader.ReadDouble();
            }
            else if (xmlObjectType == XmlObjectType.Integer)
            {
                output = reader.ReadInt();
            }
            else if (xmlObjectType == XmlObjectType.Boolean)
            {
                output = reader.ReadBool();
            }
            else if (xmlObjectType == XmlObjectType.UInt64)
            {
                output = reader.ReadULong();
            }
            else if (xmlObjectType == XmlObjectType.String)
            {
                output = reader.ReadString();
            }
            else if (xmlObjectType == XmlObjectType.Type)
            {
                output = UberScriptFunctions.Methods.TYPE(null, reader.ReadString());
            }
            else if (xmlObjectType == XmlObjectType.Other)
            {
                LoggingCustom.Log(
                    "ERROR_Uberscript.txt",
                    DateTime.Now + ": xmlobject: " + Name + " attached to " + AttachedTo +
                    " with data of type other was deserialized");
            }
            return(output);
        }
Beispiel #39
0
        public AllianceInfo( GenericReader reader )
        {
            int version = reader.ReadInt();

            switch( version )
            {
                case 0:
                    {
                        m_Name = reader.ReadString();
                        m_Leader = reader.ReadGuild() as Guild;

                        m_Members = reader.ReadStrongGuildList<Guild>();
                        m_PendingMembers = reader.ReadStrongGuildList<Guild>();

                        break;
                    }
            }

            if( !m_Alliances.ContainsKey(m_Name.ToLower()) )
                m_Alliances.Add(m_Name.ToLower(), this);
        }