public ExchangeDay(GenericReader reader)
        {
            int version = reader.ReadInt();

            HighestPrice = reader.ReadDouble();
            LowestPrice = reader.ReadDouble();
            TotalQuantity = reader.ReadLong();
            TotalRevenue = reader.ReadLong();
            Average = reader.ReadDouble();
            Day = reader.ReadInt();
        }
Exemplo n.º 2
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            mDelay = (double) reader.ReadDouble();
        }
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            reader.ReadInt();

            StorageIncrease = reader.ReadDouble();
        }
Exemplo n.º 4
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            LootType = LootType.Blessed;

            reader.ReadInt();

            VendorIncrease = reader.ReadDouble();
        }
        public TransactionInfo(GenericReader reader)
        {
            int version = reader.ReadInt();

            Price = reader.ReadDouble();
            Quantity = reader.ReadInt();
            Name = reader.ReadString();
            Buyer = reader.ReadBool();
            Date = reader.ReadDateTime();
        }
Exemplo n.º 6
0
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();

			m_PriceInSilver = reader.ReadInt();
			m_MaxCanBuyTo = reader.ReadDouble();
			m_SkillIncrease = reader.ReadInt();
			m_CoolLooking = reader.ReadBool();
		}
Exemplo n.º 7
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.GetVersion();

            switch (version)
            {
            case 1:
                InstantKillHead = reader.ReadBool();
                goto case 0;

            case 0:
            {
                InstantKillForced = reader.ReadBool();
                InstantKillChance = reader.ReadDouble();
            }
            break;
            }
        }
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            m_toClone    = (NubiaCreature)reader.ReadMobile();
            m_bonusStr   = reader.ReadInt();
            m_bonusDex   = reader.ReadInt();
            m_bonusInt   = reader.ReadInt();
            m_bonusSkill = reader.ReadDouble();
            m_nom        = reader.ReadString();
            if (version > 0)
            {
                int count = reader.ReadInt();
                for (int i = 0; i < count; i++)
                {
                    m_listItem.Add(reader.ReadItem());
                }
            }
        }
Exemplo n.º 9
0
        public void Deserialize( GenericReader reader )
        {
            int version = reader.ReadInt();

            switch( version )
            {
                case 1:
                    {
                        Points = reader.ReadDouble();
                        goto case 1;
                    }
                case 0:
                    {
                        m_Player = reader.ReadMobile();
                        m_Kills = reader.ReadInt();
                        m_Deaths = reader.ReadInt();
                        break;
                    }
            }
        }
Exemplo n.º 10
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            ContainerID       = reader.ReadInt();
            ContainerGump     = reader.ReadInt();
            ContainerHue      = reader.ReadInt();
            ContainerFlip     = reader.ReadInt();
            ContainerWeight   = reader.ReadDouble();
            ContainerName     = reader.ReadString();
            ContainerLevel    = reader.ReadInt();
            ContainerTouched  = reader.ReadInt();
            ContainerNoSpawn  = reader.ReadInt();
            ContainerLockable = reader.ReadInt();
            if (ContainerTouched > 0)
            {
                RemoveBox();
            }
        }
Exemplo n.º 11
0
        public VvVPlayerBattleStats(GenericReader reader, PlayerMobile pm)
        {
            int version = reader.ReadInt();

            Player = pm;
            Points = reader.ReadDouble();

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

            Kills          = reader.ReadInt();
            Assists        = reader.ReadInt();
            Deaths         = reader.ReadInt();
            Stolen         = reader.ReadInt();
            ViceReturned   = reader.ReadInt();
            VirtueReturned = reader.ReadInt();
            Disarmed       = reader.ReadInt();
        }
Exemplo n.º 12
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
                case 1:
                    {
                        ArcherMod = reader.ReadDouble();
                        BardMod = reader.ReadDouble();
                        TamerMod = reader.ReadDouble();
                        SummonMod = reader.ReadDouble();
                    }
                    goto case 0;
                case 0:
                    break;
            }
        }
Exemplo n.º 13
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 3:
            {
                m_Chance = reader.ReadDouble();
                m_Emote  = reader.ReadString();
                goto case 2;
            }

            case 2:
            {
                if (version < 3)
                {
                    m_Chance = 100;
                }

                m_Silent    = reader.ReadBool();
                m_MountOnly = reader.ReadBool();
                goto case 1;
            }

            case 1:
            {
                m_Message = reader.ReadString();
                goto case 0;
            }

            case 0:
            {
                m_Active    = reader.ReadBool();
                m_Direction = (Direction)reader.ReadInt();
                break;
            }
            }
        }
Exemplo n.º 14
0
        public void Deserialize(GenericReader reader)
        {
            int version = reader.ReadInt();

            switch (version)
            {
            case 1:
            {
                Points = reader.ReadDouble();
                goto case 1;
            }

            case 0:
            {
                m_Player = reader.ReadMobile();
                m_Kills  = reader.ReadInt();
                m_Deaths = reader.ReadInt();
                break;
            }
            }
        }
Exemplo n.º 15
0
        public BODEntry(GenericReader reader)
        {
            int version = reader.ReadInt();

            if (reader.ReadInt() == 0)
            {
                switch (version)
                {
                case 0:
                    _CachedDeeds        = reader.ReadInt();
                    LastBulkOrder       = reader.ReadDateTime();
                    BankedPoints        = reader.ReadDouble();
                    PendingRewardPoints = reader.ReadInt();
                    break;
                }
            }
            else
            {
                _NextBulkOrder = reader.ReadDateTime();
            }
        }
Exemplo n.º 16
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadEncodedInt();

            switch (version)
            {
            case 3:
            {
                m_LastUserName = reader.ReadString();
                goto case 2;
            }

            case 2:
            case 1:
            {
                m_ActiveItemID   = reader.ReadInt();
                m_InactiveItemID = reader.ReadInt();

                goto case 0;
            }

            case 0:
            {
                m_Account = reader.ReadString();
                m_NextUse = reader.ReadDateTime();                                 //TODO: delete it in a harmless way

                m_Skill      = (SkillName)reader.ReadEncodedInt();
                m_SkillValue = reader.ReadDouble();
                break;
            }
            }

            if (version == 0)
            {
                m_ActiveItemID   = 0x2A94;
                m_InactiveItemID = 0x2A93;
            }
        }
Exemplo n.º 17
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            m_MaxRange = reader.ReadInt();
            m_ToDelete = reader.ReadDateTime();
            m_Caster = reader.ReadMobile();
            m_Bonus = reader.ReadDouble();

            m_EffectID = reader.ReadInt();
            m_EffectSpeed = reader.ReadInt();
            m_EffectDuration = reader.ReadInt();
            m_EffectLayer = (EffectLayer)reader.ReadInt();
            m_SoundID = reader.ReadInt();

            m_TotemType = (TotemType)reader.ReadInt();

            if (m_DeleteTimer == null)
            {
                m_DeleteTimer = new DeleteTotemTimer(this);
                m_DeleteTimer.Start();
            }

            if (m_TotemType == TotemType.Refecteur)
                new RefecteurSpell.RefecteurTimer(this).Start();

            if (m_TotemType == TotemType.Miracle)
                new MiracleSpell.MiracleTimer(this).Start();

            if (m_TotemType == TotemType.PointDeParesse)
                new PointDeParesseSpell.PointDeParesseTimer(this).Start();

            foreach (Mobile m in this.GetMobilesInRange(20))
            {
                m.InvalidateProperties();
                m.Delta(MobileDelta.Armor);
            }
        }
Exemplo n.º 18
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadEncodedInt();

            switch (version)
            {
            case 2:
            {
                m_Level = (SecureLevel)reader.ReadInt();
                goto case 1;
            }

            case 1:
            {
                m_ActiveItemID   = reader.ReadInt();
                m_InactiveItemID = reader.ReadInt();

                goto case 0;
            }

            case 0:
            {
                m_Account = reader.ReadString();
                m_NextUse = reader.ReadDateTime();

                m_Skill      = (SkillName)reader.ReadEncodedInt();
                m_SkillValue = reader.ReadDouble();
                break;
            }
            }

            if (version == 0)
            {
                m_ActiveItemID   = 0x2A94;
                m_InactiveItemID = 0x2A93;
            }
        }
Exemplo n.º 19
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 1:
            {
                MaxZombiesQuadrant1 = reader.ReadInt();
                MaxZombiesQuadrant2 = reader.ReadInt();
                MaxZombiesQuadrant3 = reader.ReadInt();
                MaxZombiesQuadrant4 = reader.ReadInt();
            }
                goto case 0;

            case 0:
                MeleeMod = reader.ReadDouble();
                break;
            }
        }
Exemplo n.º 20
0
            public MetamorphoseEntry(GenericReader reader)
            {
                int version = reader.ReadInt();

                switch (version)
                {
                case 0:
                {
                    m_Art      = reader.ReadInt();
                    m_Body     = reader.ReadInt();
                    m_Num      = reader.ReadInt();
                    m_StrMod   = reader.ReadInt();
                    m_DexMod   = reader.ReadInt();
                    m_IntMod   = reader.ReadInt();
                    m_SkillReq = reader.ReadDouble();
                    m_Name     = reader.ReadString();
                    m_Hue      = reader.ReadInt();

                    break;
                }
                }
            }
Exemplo n.º 21
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 3:
                m_BonusSkill = (SkillName)reader.ReadInt();
                goto case 2;

            case 2:
                delay = reader.ReadTimeSpan();
                goto case 1;

            case 1:
                m_DamageType = reader.ReadString();
                goto case 0;

            case 0:
            {
                m_TrapOwner     = reader.ReadMobile();
                m_UsesRemaining = reader.ReadInt();
                m_TrapPower     = reader.ReadInt();
                m_ManaCost      = reader.ReadInt();
                m_DamageRange   = reader.ReadInt();
                m_TriggerRange  = reader.ReadInt();
                m_ParalyzeTime  = reader.ReadInt();
                m_Poison        = Poison.Deserialize(reader);
                m_DamageScalar  = reader.ReadDouble();
                m_PointDest     = reader.ReadPoint3D();
                m_MapDest       = reader.ReadMap();

                break;
            }
            }
        }
Exemplo n.º 22
0
        public virtual void Deserialize(GenericReader reader)
        {
            Version = reader.ReadInt();

            switch (Version)
            {
            case 2:     // added serialize/deserialize in all base classes. Poor implementation on my part, should have had from the get-go
            case 1:
            case 0:
            {
                int count = reader.ReadInt();

                for (int i = 0; i < count; i++)
                {
                    PlayerMobile player = reader.ReadMobile() as PlayerMobile;
                    PointsEntry  entry  = GetSystemEntry(player);

                    if (Version > 0)
                    {
                        entry.Deserialize(reader);
                    }
                    else
                    {
                        entry.Points = reader.ReadDouble();
                    }

                    if (player != null)
                    {
                        if (!PlayerTable.Contains(entry))
                        {
                            PlayerTable.Add(entry);
                        }
                    }
                }
            }
            break;
            }
        }
Exemplo n.º 23
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            StoredSkills = new ArrayList();

            m_Owner = reader.ReadMobile();

            Str   = reader.ReadInt();
            Dex   = reader.ReadInt();
            Int   = reader.ReadInt();
            Fame  = reader.ReadInt();
            Karma = reader.ReadInt();
            Kills = reader.ReadInt();

            int Count = reader.ReadInt();

            for (int i = 0; i < Count; i++)
            {
                StoredSkills.Add(reader.ReadDouble());
            }
        }
Exemplo n.º 24
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            m_Victim     = reader.ReadMobile();
            m_Type       = reader.ReadString();
            m_Virulence  = reader.ReadInt();
            m_Severity   = reader.ReadInt();
            m_Period     = reader.ReadDouble();
            m_Expiry     = reader.ReadDateTime();
            m_PlayerOnly = reader.ReadBool();
            m_Expires    = reader.ReadBool();

            if (DateTime.Now > m_Expiry && m_Expires)
            {
                Delete();
            }

            m_afflictTimer = new AfflictionTimer(this, m_Period);
            m_afflictTimer.Start();
        }
Exemplo n.º 25
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.GetVersion();

            switch (version)
            {
            case 0:
            {
                MySQL        = new MySQLConnectionInfo(reader);
                CurrencyType = new ItemTypeSelectProperty(reader);

                TableName      = reader.ReadString();
                ShowHistory    = reader.ReadBool();
                ExchangeRate   = reader.ReadDouble();
                MoneySymbol    = reader.ReadChar();
                MoneyAbbr      = reader.ReadString();
                GiftingEnabled = reader.ReadBool();
            }
            break;
            }
        }
Exemplo n.º 26
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            switch (version)
            {
            case 1:
                _DisplayName = reader.ReadString();
                goto case 0;

            case 0:
                Level = (SecureLevel)reader.ReadInt();
                RA    = reader.ReadInt();
                DEC   = reader.ReadDouble();
                break;
            }

            if (version == 0)
            {
                _DisplayName = _Names[Utility.Random(_Names.Length)];
            }
        }
Exemplo n.º 27
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            var v = reader.GetVersion();

            if (v > 0)
            {
                MatchSuddenDeath = reader.ReadDouble();
            }
            else
            {
                MatchSuddenDeath = 0.25;
            }

            MatchDelay    = reader.ReadTimeSpan();
            MatchDuration = reader.ReadTimeSpan();

            FinalBestOfCur = reader.ReadInt();
            FinalBestOfMax = reader.ReadInt();

            Matches = reader.ReadBlockList(r => new TournamentMatch(r), Matches);
        }
Exemplo n.º 28
0
        public override void Deserialize(GenericReader reader)
        {
            _Components = new List <MovableAddonComponent>();

            base.Deserialize(reader);

            int version = reader.ReadInt();

            int count = reader.ReadInt();

            for (int i = 0; i < count; i++)
            {
                _Components.Add((MovableAddonComponent)reader.ReadItem());
            }

            _Direction = (MovableAddonDirection)reader.ReadInt();

            _Controller = (MovableAddonControlComponent)reader.ReadItem();
            _Key        = (MovableAddonKey)reader.ReadItem();

                        #if ( RunUORC1 )
            _Extrema = new Rectangle3D(new Point3D(reader.ReadInt(), reader.ReadInt(), reader.ReadInt()), new Point3D(reader.ReadInt(), reader.ReadInt(), reader.ReadInt()));
                        #else
            /*To RunUO 2.0 RC1 users:  if you're getting an error here, then uncomment line 2 of this file to read:
             *
             #define RunUORC1
             *
             */
            _Extrema = reader.ReadRect3D();
                        #endif

            _Delay = TimeSpan.FromSeconds(reader.ReadDouble());

            ExhaustPowerTimeSpan = reader.ReadTimeSpan();

            _Speed = MovableAddonSpeed.Regular;
        }
Exemplo n.º 29
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            if (version >= 0)
            {
                m_Owner = reader.ReadMobile();

                m_IntervalDuration = reader.ReadDouble();
                m_MaxIntervals     = reader.ReadInt();
                m_MinDamage        = reader.ReadInt();
                m_MaxDamage        = reader.ReadInt();
                m_HitOwner         = reader.ReadBool();
                m_HitMonsters      = reader.ReadBool();
                m_HitPlayers       = reader.ReadBool();

                m_HitSound           = reader.ReadInt();
                m_ActivateOnMoveOver = reader.ReadBool();
            }

            m_Timer = new InternalTimer(this, m_Owner, m_IntervalDuration, m_MaxIntervals, m_MinDamage, m_MaxDamage, m_HitOwner, m_HitMonsters, m_HitPlayers, m_HitSound);
            m_Timer.Start();
        }
Exemplo n.º 30
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 1:
            {
                i_Owner = reader.ReadInt();
                goto case 0;
            }

            case 0:
            {
                i_Gold         = reader.ReadInt();
                b_GoldAutoLoot = reader.ReadBool();
                b_GoldSweeper  = reader.ReadBool();
                d_WeightScale  = reader.ReadDouble();
                break;
            }
            }
        }
Exemplo n.º 31
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            #region Critical Non-Versioned Values
            UID = new TemplateSerial(reader);
            #endregion

            int version = reader.GetVersion();

            switch (version)
            {
            case 0:
            {
                Name   = reader.ReadString();
                Notes  = reader.ReadString();
                Skills = reader.ReadBlockDictionary(
                    () =>
                    {
                        var key    = reader.ReadFlag <SkillName>();
                        double val = reader.ReadDouble();
                        return(new KeyValuePair <SkillName, double>(key, val));
                    },
                    Skills);
                Stats = reader.ReadBlockDictionary(
                    () =>
                    {
                        var key = reader.ReadFlag <StatType>();
                        int val = reader.ReadInt();
                        return(new KeyValuePair <StatType, int>(key, val));
                    },
                    Stats);
            }
            break;
            }
        }
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();
            switch (version)
            {
                case 0:
                    _AlchemyBonusPercentageOfSkill = reader.ReadDouble();
                    _AlchemyBonusMax = reader.ReadInt();
                    _GreaterExplosionPotDmgMin = reader.ReadInt();
                    _GreaterExplosionPotDmgMax = reader.ReadInt();
                    _GreaterExplosionPotTimeDelay = reader.ReadDouble();
                    _ExplosionPotDmgMin = reader.ReadInt();
                    _ExplosionPotDmgMax = reader.ReadInt();
                    _ExplosionPotTimeDelay = reader.ReadDouble();
                    _LesserExplosionPotDmgMin = reader.ReadInt();
                    _LesserExplosionPotDmgMax = reader.ReadInt();
                    _LesserExplosionPotTimeDelay = reader.ReadDouble();
                    _ExplosionPotionHandsNotFreeDelay = reader.ReadDouble();
                    break;
            }
            m_Instance = this;
        }
Exemplo n.º 33
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 1:
            {
                m_CreaturePlays = reader.ReadBool();
                goto case 0;
            }

            case 0:
            {
                m_Active        = reader.ReadBool();
                m_Desc          = reader.ReadString();
                m_Range         = reader.ReadInt();
                m_Random        = reader.ReadBool();
                m_Chance        = reader.ReadDouble();
                m_MinPause      = reader.ReadInt();
                m_MaxPause      = reader.ReadInt();
                m_Creature      = reader.ReadString();
                m_CreatureRange = reader.ReadInt();

                for (int i = 0; i < m_Sounds.Length; ++i)
                {
                    m_Sounds[i] = reader.ReadInt();
                }
                this.Sounds = m_Sounds;                         // required for initialization on World Load

                break;
            }
            }
        }
Exemplo n.º 34
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            switch (version)
            {
            case 0:
            {
                GoldAmount        = reader.ReadInt();
                GoldChance        = reader.ReadDouble();
                NickelAmount      = reader.ReadInt();
                NickelChance      = reader.ReadDouble();
                InvulArmorChance  = reader.ReadDouble();
                VanqWeaponChance  = reader.ReadDouble();
                BlessedItemChance = reader.ReadDouble();
                MustangChance     = reader.ReadDouble();
                break;
            }
            }

            initPrizes();
        }
Exemplo n.º 35
0
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();

			switch( version )
			{
				case 7:
				{
					m_RestFlags = (EGRFlags)PSerial.ReadEncodedLong( reader );
					m_OptFlags = (EGateOptFlags)reader.ReadEncodedInt();
					m_MaxPlayers = reader.ReadInt();
					m_TollItem = Reflector.Deserialize( reader );
					m_TollAmount = reader.ReadInt();
					m_SkillName1 = (SkillName)reader.ReadInt();
					m_SkillName2 = (SkillName)reader.ReadInt();
					m_SkillValue1 = reader.ReadDouble();
					m_SkillValue2 = reader.ReadDouble();
					m_GMsNeeded = reader.ReadInt();
					m_StrValue = reader.ReadInt();
					m_IntValue = reader.ReadInt();
					m_DexValue = reader.ReadInt();
					m_Confirmation = reader.ReadString();
					m_GameRobeHue = reader.ReadInt();
					m_Delay = reader.ReadTimeSpan();
					m_KarmaThreshold = reader.ReadInt();
					break;
				}
				case 6:
				{
					switch ( reader.ReadInt() )
					{
						case 0: TollLocation = TollOption.Backpack; break;
						case 1: TollLocation = TollOption.BankBox; break;
						case 2: TollLocation = TollOption.Both; break;
					}

					goto case 5;
				}
				case 5:
				{
					CannotFleeFromBattle = reader.ReadBool();
					goto case 4;
				}
				case 4:
				{
					m_GameRobeHue = reader.ReadInt();
					GiveGameRobe = !reader.ReadBool();
					goto case 3;
				}
				case 3:
				{
					StaffOverride = !reader.ReadBool();
					m_Confirmation = reader.ReadString();
					StaffOnly = reader.ReadBool();

					switch( reader.ReadInt() ) //Sex-Select
					{
						case 1: Gender = GenderOption.Male; break;
						case 2: Gender = GenderOption.Female; break;
					}

					int npcguild = reader.ReadInt();
					if ( npcguild > 0 )
					{
						SetRestFlag( EGRFlags.No_NPCGuilds, true );
						SetRestFlag( (EGRFlags)(1ul<<(25+npcguild)), false );
					}

					switch( reader.ReadInt() ) //Faction-Select
					{
						case 1: SetRestFlag( EGRFlags.No_Factions, true ); break;
						case 2: SetRestFlag( EGRFlags.No_Factionless, true ); break;
						case 3: SetRestFlag( EGRFlags.No_Minax | EGRFlags.No_Shadowlords | EGRFlags.No_TrueBrits, true ); break;
						case 4: SetRestFlag( EGRFlags.No_COM | EGRFlags.No_Shadowlords | EGRFlags.No_TrueBrits, true ); break;
						case 5: SetRestFlag( EGRFlags.No_COM | EGRFlags.No_Minax | EGRFlags.No_TrueBrits, true ); break;
						case 6: SetRestFlag( EGRFlags.No_COM | EGRFlags.No_Minax | EGRFlags.No_Shadowlords, true ); break;
					}

					switch( reader.ReadInt() ) //ChaosOrder-Select
					{
						case 1: SetRestFlag( EGRFlags.No_ChaosGuild | EGRFlags.No_OrderGuild, true ); break;
						case 2: SetRestFlag( EGRFlags.No_RegGuild | EGRFlags.No_Guildless, true ); break;
						case 3: SetRestFlag( EGRFlags.No_OrderGuild | EGRFlags.No_RegGuild | EGRFlags.No_Guildless, true ); break;
						case 4: SetRestFlag( EGRFlags.No_ChaosGuild | EGRFlags.No_RegGuild | EGRFlags.No_Guildless, true ); break;
					}
					goto case 2;
				}
				case 2:
				{
					switch( reader.ReadInt() ) //Young-Select
					{
						case 1: Veterans = VetOption.Veteran; break;
						case 2: Veterans = VetOption.Young; break;
					}

					switch( reader.ReadInt() ) //Factioners-Select
					{
						case 1: SetRestFlag( EGRFlags.No_Factions, true ); break;
						case 2: No_Factionless = true; break;
					}

					goto case 1;
				}
				case 1:
				{
					int stat = reader.ReadInt();

					int amount = (int)reader.ReadDouble();

					switch( stat )
					{
						case 1: m_StrValue = amount; break;
						case 2: m_IntValue = amount; break;
						case 3: m_DexValue = amount; break;
					}

					reader.ReadString(); //obselete
					switch( reader.ReadInt() )
					{
						case 1: SetRestFlag( EGRFlags.No_Ghosts, true ); break;
						case 2: SetRestFlag( EGRFlags.No_Living, true ); break;
					}

					ResGhosts = reader.ReadBool();
					RemoveFSL = reader.ReadBool();
					SetOptFlag( EGateOptFlags.StrMax | EGateOptFlags.IntMax | EGateOptFlags.DexMax, reader.ReadInt() == 0 );
					reader.ReadInt(); //obselete
					m_MaxPlayers = reader.ReadInt();
					HideWhenFull = reader.ReadBool();
					switch( reader.ReadInt() )
					{
						case 1: Mounted = MountOption.Unmounted; break;
						case 2: Mounted = MountOption.Mounted; break;
					}
					TransportPets = reader.ReadBool();
					SetRestFlag( EGRFlags.No_Clothed, reader.ReadBool() );
					SetRestFlag( EGRFlags.No_NonDonators, reader.ReadBool() );
					switch( reader.ReadInt() )
					{
						case 1: No_Murderer = true; break;
						case 2: No_BlueKarma = No_GrayKarma = No_Criminal = true; break;
					}
					m_TollItem = ScriptCompiler.FindTypeByFullName( reader.ReadString() );
					m_TollAmount = reader.ReadInt();
					FreeForDonators = reader.ReadBool();
					m_SkillName1 = (SkillName)reader.ReadInt();
					m_SkillValue1 = reader.ReadDouble();
					reader.ReadString(); //obselete
					m_GMsNeeded = reader.ReadInt();
					break;
				}
			}
		}
Exemplo n.º 36
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            ScoreModifier = 1.0;

            switch (version)
            {
            case 3:
            {
                ScoringType   = (Scoring)reader.ReadInt();
                ScoreModifier = reader.ReadDouble();
                goto case 2;
            }

            case 2:
            {
                m_EventSupplier  = reader.ReadItem <EventSupplier>();
                m_UseSphereRules = reader.ReadBool();
                m_GiveHorses     = reader.ReadBool();
                goto case 1;
            }

            case 1:
            {
                m_MatchMin      = reader.ReadInt();
                m_LeaveLocation = reader.ReadPoint3D();
                m_LeaveMap      = reader.ReadMap();
                goto case 0;
            }

            case 0:
            {
                Started  = reader.ReadBool();
                m_Active = reader.ReadBool();
                m_AcceptingContestants = reader.ReadBool();
                m_DMSpawnPoints        = reader.ReadStrongItemList <DMSpawnPoint>();

                #region Verify loaded spawn points

                List <DMSpawnPoint> removalList = new List <DMSpawnPoint>();
                foreach (DMSpawnPoint dmSpawnPoint in m_DMSpawnPoints)
                {
                    if (dmSpawnPoint.StoneLink != this)
                    {
                        removalList.Add(dmSpawnPoint);
                    }
                }

                foreach (DMSpawnPoint dmSpawnPoint in removalList)
                {
                    m_DMSpawnPoints.Remove(dmSpawnPoint);
                }

                #endregion

                m_MountCollection = ReadMountCollection(reader);
                break;
            }
            }

            m_Started            = false;
            AcceptingContestants = false;
            Active = false;
        }
		public override void Deserialize(GenericReader reader)
		{
			base.Deserialize(reader);
			int version = reader.ReadInt();

			switch (version)
			{
                case 29:
					{
						m_GauntletPoints = reader.ReadDouble();

						m_SSNextSeed = reader.ReadDateTime();
						m_SSSeedExpire = reader.ReadDateTime();
						m_SSSeedLocation = reader.ReadPoint3D();
						m_SSSeedMap = reader.ReadMap();

						m_LevelExp = reader.ReadLong();
						m_Exp = reader.ReadLong();
						m_Level = reader.ReadInt();
						m_ExpTitle = reader.ReadString();

						m_VASTotalMonsterFame = reader.ReadInt();

						m_Quests = QuestReader.Quests(reader, this);
						m_Chains = QuestReader.Chains(reader);

						m_Collections = new Dictionary<Collection, int>();
						m_CollectionTitles = new List<object>();

						for (int i = reader.ReadInt(); i > 0; i--)
						{
							m_Collections.Add((Collection)reader.ReadInt(), reader.ReadInt());
						}

						for (int i = reader.ReadInt(); i > 0; i--)
						{
							m_CollectionTitles.Add(QuestReader.Object(reader));
						}

						m_SelectedTitle = reader.ReadInt();

						goto case 28;
					}
				case 28:
					{
						m_PeacedUntil = reader.ReadDateTime();

						goto case 27;
					}
				case 27:
					{
						m_AnkhNextUse = reader.ReadDateTime();

						goto case 26;
					}
				case 26:
					{
						m_AutoStabled = reader.ReadStrongMobileList();

						goto case 25;
					}
				case 25:
					{
						int recipeCount = reader.ReadInt();

						if (recipeCount > 0)
						{
							m_AcquiredRecipes = new Dictionary<int, bool>();

							for (int i = 0; i < recipeCount; i++)
							{
								int r = reader.ReadInt();
								if (reader.ReadBool()) //Don't add in recipies which we haven't gotten or have been removed
								{
									m_AcquiredRecipes.Add(r, true);
								}
							}
						}
						goto case 24;
					}
				case 24:
					{
						m_LastHonorLoss = reader.ReadDeltaTime();
						goto case 23;
					}
				case 23:
					{
						m_ChampionTitles = new ChampionTitleInfo(reader);
						goto case 22;
					}
				case 22:
					{
						m_LastValorLoss = reader.ReadDateTime();
						goto case 21;
					}
				case 21:
					{
						m_ToTItemsTurnedIn = reader.ReadEncodedInt();
						m_ToTTotalMonsterFame = reader.ReadInt();
						goto case 20;
					}
				case 20:
					{
						m_AllianceMessageHue = reader.ReadEncodedInt();
						m_GuildMessageHue = reader.ReadEncodedInt();

						goto case 19;
					}
				case 19:
					{
						int rank = reader.ReadEncodedInt();
						int maxRank = RankDefinition.Ranks.Length - 1;
						if (rank > maxRank)
						{
							rank = maxRank;
						}

						m_GuildRank = RankDefinition.Ranks[rank];
						m_LastOnline = reader.ReadDateTime();
						goto case 18;
					}
				case 18:
					{
						m_SolenFriendship = (SolenFriendship)reader.ReadEncodedInt();

						goto case 17;
					}
				case 17: // changed how DoneQuests is serialized
				case 16:
					{
						m_Quest = QuestSerializer.DeserializeQuest(reader);

						if (m_Quest != null)
						{
							m_Quest.From = this;
						}

						int count = reader.ReadEncodedInt();

						if (count > 0)
						{
							m_DoneQuests = new List<QuestRestartInfo>();

							for (int i = 0; i < count; ++i)
							{
								Type questType = QuestSerializer.ReadType(QuestSystem.QuestTypes, reader);
								DateTime restartTime;

								if (version < 17)
								{
									restartTime = DateTime.MaxValue;
								}
								else
								{
									restartTime = reader.ReadDateTime();
								}

								m_DoneQuests.Add(new QuestRestartInfo(questType, restartTime));
							}
						}

						m_Profession = reader.ReadEncodedInt();
						goto case 15;
					}
				case 15:
					{
						m_LastCompassionLoss = reader.ReadDeltaTime();
						goto case 14;
					}
				case 14:
					{
						m_CompassionGains = reader.ReadEncodedInt();

						if (m_CompassionGains > 0)
						{
							m_NextCompassionDay = reader.ReadDeltaTime();
						}

						goto case 13;
					}
				case 13: // just removed m_PayedInsurance list
				case 12:
					{
						m_BOBFilter = new BOBFilter(reader);
						goto case 11;
					}
				case 11:
					{
						if (version < 13)
						{
							var payed = reader.ReadStrongItemList();

							for (int i = 0; i < payed.Count; ++i)
							{
								payed[i].PayedInsurance = true;
							}
						}

						goto case 10;
					}
				case 10:
					{
						if (reader.ReadBool())
						{
							m_HairModID = reader.ReadInt();
							m_HairModHue = reader.ReadInt();
							m_BeardModID = reader.ReadInt();
							m_BeardModHue = reader.ReadInt();
						}

						goto case 9;
					}
				case 9:
					{
						SavagePaintExpiration = reader.ReadTimeSpan();

						if (SavagePaintExpiration > TimeSpan.Zero)
						{
							BodyMod = (Female ? 184 : 183);
							HueMod = 0;
						}

						goto case 8;
					}
				case 8:
					{
						m_NpcGuild = (NpcGuild)reader.ReadInt();
						m_NpcGuildJoinTime = reader.ReadDateTime();
						m_NpcGuildGameTime = reader.ReadTimeSpan();
						goto case 7;
					}
				case 7:
					{
						m_PermaFlags = reader.ReadStrongMobileList();
						goto case 6;
					}
				case 6:
					{
						NextTailorBulkOrder = reader.ReadTimeSpan();
						goto case 5;
					}
				case 5:
					{
						NextSmithBulkOrder = reader.ReadTimeSpan();
						goto case 4;
					}
				case 4:
					{
						m_LastJusticeLoss = reader.ReadDeltaTime();
						m_JusticeProtectors = reader.ReadStrongMobileList();
						goto case 3;
					}
				case 3:
					{
						m_LastSacrificeGain = reader.ReadDeltaTime();
						m_LastSacrificeLoss = reader.ReadDeltaTime();
						m_AvailableResurrects = reader.ReadInt();
						goto case 2;
					}
				case 2:
					{
						m_Flags = (PlayerFlag)reader.ReadInt();
						goto case 1;
					}
				case 1:
					{
						m_LongTermElapse = reader.ReadTimeSpan();
						m_ShortTermElapse = reader.ReadTimeSpan();
						m_GameTime = reader.ReadTimeSpan();
						goto case 0;
					}
				case 0:
					{
						if (version < 26)
						{
							m_AutoStabled = new List<Mobile>();
						}
						break;
					}
			}

			if (version < 29)
			{
				m_SSNextSeed = m_SSSeedExpire = DateTime.UtcNow;
				m_SSSeedLocation = Point3D.Zero;
			}

			if (m_RecentlyReported == null)
			{
				m_RecentlyReported = new List<Mobile>();
			}

			#region QueensLoyaltySystem
			if (version < 29)
			{
				m_LevelExp = 2000;
				m_Exp = 0;
				m_Level = 0;

				m_ExpTitle = "Friend of TerMur";
			}
			#endregion

			#region Mondain's Legacy
			if (m_Quests == null)
			{
				m_Quests = new List<BaseQuest>();
			}

			if (m_Chains == null)
			{
				m_Chains = new Dictionary<QuestChain, BaseChain>();
			}

			if (m_DoneQuests == null)
			{
				m_DoneQuests = new List<QuestRestartInfo>();
			}

			if (m_Collections == null)
			{
				m_Collections = new Dictionary<Collection, int>();
			}

			if (m_CollectionTitles == null)
			{
				m_CollectionTitles = new List<object>();
			}
			#endregion

			// Professions weren't verified on 1.0 RC0
			if (!CharacterCreation.VerifyProfession(m_Profession))
			{
				m_Profession = 0;
			}

			if (m_PermaFlags == null)
			{
				m_PermaFlags = new List<Mobile>();
			}

			if (m_JusticeProtectors == null)
			{
				m_JusticeProtectors = new List<Mobile>();
			}

			if (m_BOBFilter == null)
			{
				m_BOBFilter = new BOBFilter();
			}

			if (m_GuildRank == null)
			{
				m_GuildRank = RankDefinition.Member;
				//Default to member if going from older version to new version (only time it should be null)
			}

			if (m_LastOnline == DateTime.MinValue && Account != null)
			{
				m_LastOnline = ((Account)Account).LastLogin;
			}

			if (m_ChampionTitles == null)
			{
				m_ChampionTitles = new ChampionTitleInfo();
			}

			var list = Stabled;

			for (int i = 0; i < list.Count; ++i)
			{
				BaseCreature bc = list[i] as BaseCreature;

				if (bc != null)
				{
					bc.IsStabled = true;
					bc.StabledBy = this;
				}
			}

			CheckAtrophies(this);

			if (Hidden) //Hiding is the only buff where it has an effect that's serialized.
			{
				AddBuff(new BuffInfo(BuffIcon.HidingAndOrStealth, 1075655));
			}
		}
Exemplo n.º 38
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();
            // version 0
            this.m_Hue = reader.ReadInt();
            this.m_HitsBuff = reader.ReadDouble();
            this.m_StrBuff = reader.ReadDouble();
            this.m_IntBuff = reader.ReadDouble();
            this.m_DexBuff = reader.ReadDouble();
            this.m_SkillsBuff = reader.ReadDouble();
            this.m_SpeedBuff = reader.ReadDouble();
            this.m_FameBuff = reader.ReadDouble();
            this.m_KarmaBuff = reader.ReadDouble();
            this.m_DamageBuff = reader.ReadInt();
            this.m_EnableParagon = reader.ReadBool();
            this.m_ChestChance = reader.ReadDouble();
            this.m_ParagonLabel = reader.ReadString();
            this.m_ConvertFactor = reader.ReadDouble();
            this.m_ArtifactFactor = reader.ReadDouble();
        }
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();
            switch (version)
            {
                case 2:
                    _WeaponDurabilityLossVsMobs = reader.ReadDouble();
                    goto case 1;
                case 1:
                    // global attributes
                    m_AllWeaponDamageMultiplier = reader.ReadDouble();
                    m_PlayerVsMobMultiplier = reader.ReadDouble();
                    m_MobVsPlayerMultiplier = reader.ReadDouble();
                    m_MobVsPlayerReduction = reader.ReadInt();

                    // individual weapon attributes
                    m_AxeDamageMin = reader.ReadInt(); m_AxeDamageMax = reader.ReadInt();
                    m_BattleAxeDamageMin = reader.ReadInt(); m_BattleAxeDamageMax = reader.ReadInt();
                    m_DoubleAxeDamageMin = reader.ReadInt(); m_DoubleAxeDamageMax = reader.ReadInt();
                    m_ExecutionersAxeDamageMin = reader.ReadInt(); m_ExecutionersAxeDamageMax = reader.ReadInt();
                    m_HatchetDamageMin = reader.ReadInt(); m_HatchetDamageMax = reader.ReadInt();
                    m_LargeBattleAxeDamageMin = reader.ReadInt(); m_LargeBattleAxeDamageMax = reader.ReadInt();
                    m_PickaxeDamageMin = reader.ReadInt(); m_PickaxeDamageMax = reader.ReadInt();
                    m_TwoHandedAxeDamageMin = reader.ReadInt(); m_TwoHandedAxeDamageMax = reader.ReadInt();
                    m_WarAxeDamageMin = reader.ReadInt(); m_WarAxeDamageMax = reader.ReadInt();
                    m_ButcherKnifeDamageMin = reader.ReadInt(); m_ButcherKnifeDamageMax = reader.ReadInt();
                    m_CleaverDamageMin = reader.ReadInt(); m_CleaverDamageMax = reader.ReadInt();
                    m_DaggerDamageMin = reader.ReadInt(); m_DaggerDamageMax = reader.ReadInt();
                    m_SkinningKnifeDamageMin = reader.ReadInt(); m_SkinningKnifeDamageMax = reader.ReadInt();
                    m_ClubDamageMin = reader.ReadInt(); m_ClubDamageMax = reader.ReadInt();
                    m_HammerPickDamageMin = reader.ReadInt(); m_HammerPickDamageMax = reader.ReadInt();
                    m_MaceDamageMin = reader.ReadInt(); m_MaceDamageMax = reader.ReadInt();
                    m_WarHammerDamageMin = reader.ReadInt(); m_WarHammerDamageMax = reader.ReadInt();
                    m_WarMaceDamageMin = reader.ReadInt(); m_WarMaceDamageMax = reader.ReadInt();
                    m_BardicheDamageMin = reader.ReadInt(); m_BardicheDamageMax = reader.ReadInt();
                    m_HalberdDamageMin = reader.ReadInt(); m_HalberdDamageMax = reader.ReadInt();
                    m_BowDamageMin = reader.ReadInt(); m_BowDamageMax = reader.ReadInt();
                    m_CrossbowDamageMin = reader.ReadInt(); m_CrossbowDamageMax = reader.ReadInt();
                    m_HeavyCrossbowDamageMin = reader.ReadInt(); m_HeavyCrossbowDamageMax = reader.ReadInt();
                    m_PitchforkDamageMin = reader.ReadInt(); m_PitchforkDamageMax = reader.ReadInt();
                    m_ShortSpearDamageMin = reader.ReadInt(); m_ShortSpearDamageMax = reader.ReadInt();
                    m_SpearDamageMin = reader.ReadInt(); m_SpearDamageMax = reader.ReadInt();
                    m_TribalSpearDamageMin = reader.ReadInt(); m_TribalSpearDamageMax = reader.ReadInt();
                    m_WarForkDamageMin = reader.ReadInt(); m_WarForkDamageMax = reader.ReadInt();
                    m_BlackStaffDamageMin = reader.ReadInt(); m_BlackStaffDamageMax = reader.ReadInt();
                    m_GnarledStaffDamageMin = reader.ReadInt(); m_GnarledStaffDamageMax = reader.ReadInt();
                    m_QuarterStaffDamageMin = reader.ReadInt(); m_QuarterStaffDamageMax = reader.ReadInt();
                    m_ShepherdsCrookDamageMin = reader.ReadInt(); m_ShepherdsCrookDamageMax = reader.ReadInt();
                    m_BroadswordDamageMin = reader.ReadInt(); m_BroadswordDamageMax = reader.ReadInt();
                    m_CutlassDamageMin = reader.ReadInt(); m_CutlassDamageMax = reader.ReadInt();
                    m_KatanaDamageMin = reader.ReadInt(); m_KatanaDamageMax = reader.ReadInt();
                    m_KryssDamageMin = reader.ReadInt(); m_KryssDamageMax = reader.ReadInt();
                    m_LongswordDamageMin = reader.ReadInt(); m_LongswordDamageMax = reader.ReadInt();
                    m_ScimitarDamageMin = reader.ReadInt(); m_ScimitarDamageMax = reader.ReadInt();
                    m_VikingSwordDamageMin = reader.ReadInt(); m_VikingSwordDamageMax = reader.ReadInt();

                    m_WeaponDurabilityLossPercentage = reader.ReadDouble();
                    m_WeaponDurabilitySpeedAdjustment = reader.ReadDouble();
                    break;
            }
            m_Instance = this;
        }
Exemplo n.º 40
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            m_Copyable   = true;           // take care of all the grandfathered-in books
            m_LastEdited = "";             // erl: init LastEdited string

            switch (version)
            {
            case 4:
            {
                m_Subtype = (BookSubtype)reader.ReadInt();
                m_Version = reader.ReadDouble();
                goto case 3;
            }

            case 3:                     // wea: mirrored bpi fix
            {
                goto case 2;
            }

            case 2:                     // erl: new LastEdited property
            {
                m_LastEdited = reader.ReadString();
                goto case 1;
            }

            case 1:
            {
                m_Copyable = reader.ReadBool();
                goto case 0;
            }

            case 0:
            {
                m_Title    = reader.ReadString();
                m_Author   = reader.ReadString();
                m_Writable = reader.ReadBool();

                BookPageInfo[] bpi = new BookPageInfo[reader.ReadInt()];
                for (int i = 0; i < bpi.Length; ++i)
                {
                    bpi[i] = new BookPageInfo(reader);
                }

                m_Pages = bpi;

                /* Run2.0 style now
                 * if (version <= 2)
                 * {
                 *      // wea: freshen up this bpi list so that the book's pages
                 *      // are properly defined
                 *
                 *      m_Pages = new ArrayList();
                 *
                 *      for (int i = 0; i < bpi.Length; ++i)
                 *      {
                 *              BookPageInfo bpiFresh = new BookPageInfo();
                 *              bpiFresh.Lines = bpi[i].Lines;
                 *
                 *              m_Pages.Add(bpiFresh);
                 *      }
                 * }
                 * else
                 * {
                 *      // This book doesn't need fixing
                 *      m_Pages = new ArrayList(bpi);
                 * }*/

                break;
            }
            }

            Weight = BookWeight;
        }
Exemplo n.º 41
0
        public override void Deserialize( GenericReader reader )
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch( version )
            {

                case 2:
                    {
                        alignment = (Alignment)reader.ReadInt();
                        goto case 1;
                    }

                case 1:
                    {
                        TimeSpan deleteTime = TimeSpan.Zero;

                        if( version >= 1 )
                            deleteTime = reader.ReadTimeSpan();

                        if( deleteTime > TimeSpan.Zero || LastOwner != null && !Controlled && !IsStabled )
                        {
                            if( deleteTime <= TimeSpan.Zero || deleteTime > TimeSpan.FromDays(3.0) )
                                deleteTime = TimeSpan.FromDays(3.0);

                            m_DeleteTimer = new DeleteTimer(this, deleteTime);
                            m_DeleteTimer.Start();
                        }

                        goto case 0;
                    }

                case 0:
                    {
                        m_CurrentAI = (AIType)reader.ReadInt();
                        m_DefaultAI = (AIType)reader.ReadInt();

                        m_iRangePerception = reader.ReadInt();
                        m_iRangeFight = reader.ReadInt();
                        m_iRangeHome = reader.ReadInt();

                        m_iTeam = reader.ReadInt();

                        m_dActiveSpeed = reader.ReadDouble();
                        m_dPassiveSpeed = reader.ReadDouble();
                        m_dCurrentSpeed = reader.ReadDouble();

                        if( m_iRangePerception == OldRangePerception )
                            m_iRangePerception = DefaultRangePerception;

                        m_pHome.X = reader.ReadInt();
                        m_pHome.Y = reader.ReadInt();
                        m_pHome.Z = reader.ReadInt();

                        int i, iCount;

                        iCount = reader.ReadInt();
                        for( i = 0; i < iCount; i++ )
                        {
                            string str = reader.ReadString();
                            Type type = Type.GetType(str);

                            if( type != null )
                            {
                                m_arSpellAttack.Add(type);
                            }
                        }

                        iCount = reader.ReadInt();
                        for( i = 0; i < iCount; i++ )
                        {
                            string str = reader.ReadString();
                            Type type = Type.GetType(str);

                            if( type != null )
                            {
                                m_arSpellDefense.Add(type);
                            }
                        }

                        m_FightMode = (FightMode)reader.ReadInt();
                        m_bControlled = reader.ReadBool();
                        m_ControlMaster = reader.ReadMobile();
                        m_ControlTarget = reader.ReadMobile();
                        m_ControlDest = reader.ReadPoint3D();
                        m_ControlOrder = (OrderType)reader.ReadInt();
                        m_dMinTameSkill = reader.ReadDouble();
                        m_bTamable = reader.ReadBool();
                        m_bSummoned = reader.ReadBool();

                        if( m_bSummoned )
                        {
                            m_SummonEnd = reader.ReadDeltaTime();
                            new UnsummonTimer(m_ControlMaster, this, m_SummonEnd - DateTime.Now).Start();
                        }

                        m_iControlSlots = reader.ReadInt();
                        m_Loyalty = reader.ReadInt();
                        m_CurrentWayPoint = reader.ReadItem() as WayPoint;
                        m_SummonMaster = reader.ReadMobile();
                        m_HitsMax = reader.ReadInt();
                        m_StamMax = reader.ReadInt();
                        m_ManaMax = reader.ReadInt();
                        m_DamageMin = reader.ReadInt();
                        m_DamageMax = reader.ReadInt();
                        m_PhysicalResistance = reader.ReadInt();
                        m_PhysicalDamage = reader.ReadInt();
                        m_FireResistance = reader.ReadInt();
                        m_FireDamage = reader.ReadInt();
                        m_ColdResistance = reader.ReadInt();
                        m_ColdDamage = reader.ReadInt();
                        m_PoisonResistance = reader.ReadInt();
                        m_PoisonDamage = reader.ReadInt();
                        m_EnergyResistance = reader.ReadInt();
                        m_EnergyDamage = reader.ReadInt();
                        m_Owners = reader.ReadStrongMobileList();
                        m_IsDeadPet = reader.ReadBool();
                        m_IsBonded = reader.ReadBool();
                        m_BondingBegin = reader.ReadDateTime();
                        m_OwnerAbandonTime = reader.ReadDateTime();
                        m_HasGeneratedLoot = reader.ReadBool();

                        bool hasFriends = reader.ReadBool();

                        if( hasFriends )
                            m_Friends = reader.ReadStrongMobileList();
                        else
                            m_Friends = new List<Mobile>();

                        m_RemoveIfUntamed = reader.ReadBool();
                        m_RemoveStep = reader.ReadInt();
                        _spawner = reader.ReadItem();
                        _spawnerHome = reader.ReadPoint3D();

                        break;
                    }
            }

            double activeSpeed = m_dActiveSpeed;
            double passiveSpeed = m_dPassiveSpeed;

            SpeedInfo.GetSpeeds(this, ref activeSpeed, ref passiveSpeed);

            bool isStandardActive = false;
            for( int i = 0; !isStandardActive && i < m_StandardActiveSpeeds.Length; ++i )
                isStandardActive = (m_dActiveSpeed == m_StandardActiveSpeeds[i]);

            bool isStandardPassive = false;
            for( int i = 0; !isStandardPassive && i < m_StandardPassiveSpeeds.Length; ++i )
                isStandardPassive = (m_dPassiveSpeed == m_StandardPassiveSpeeds[i]);

            if( isStandardActive && m_dCurrentSpeed == m_dActiveSpeed )
                m_dCurrentSpeed = activeSpeed;
            else if( isStandardPassive && m_dCurrentSpeed == m_dPassiveSpeed )
                m_dCurrentSpeed = passiveSpeed;

            if( isStandardActive )
                m_dActiveSpeed = activeSpeed;

            if( isStandardPassive )
                m_dPassiveSpeed = passiveSpeed;

            if( Core.AOS && NameHue == 0x35 )
                NameHue = -1;

            CheckStatTimers();

            ChangeAIType(m_CurrentAI);

            AddFollowers();
        }
Exemplo n.º 42
0
        public override void Deserialize(GenericReader reader)
        {
            int version = reader.GetVersion();

            switch (version)
            {
                case 0:
                {
                    _level = reader.ReadInt();
                    Name = reader.ReadString();
                    MetaSkillType = (MetaSkillType) reader.ReadInt();
                    ChanceToActivate = reader.ReadDouble();
                    CoolDown = reader.ReadTimeSpan();
                    AbilityMultiplier = reader.ReadDouble();
                    Experience = reader.ReadInt();
                    NextLevelExperience = reader.ReadInt();
                    MaxLevel = reader.ReadInt();
                }
                    break;
            }
        }
Exemplo n.º 43
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch( version )
            {
                case 0:
                    {
                        this.m_Skill = (RepairSkillType)reader.ReadInt();
                        this.m_SkillLevel = reader.ReadDouble();
                        this.m_Crafter = reader.ReadMobile();

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

            int version = reader.ReadInt();

            switch ( version )
            {
                case 0:
                    {
                        this.m_MinSkill = reader.ReadDouble();
                        this.m_MaxSkill = reader.ReadDouble();

                        if (this.m_MinSkill == 0.0 && this.m_MaxSkill == 60.0)
                        {
                            this.m_MinSkill = -60.0;
                            this.m_MaxSkill = +60.0;
                        }

                        break;
                    }
            }

            this.UpdateItemID();
        }
Exemplo n.º 45
0
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadEncodedInt();

			switch( version )
			{
				case 3:
					{
						m_LastUserName = reader.ReadString();
						goto case 2;
					}
				case 2:
					{
						m_Level = (SecureLevel)reader.ReadInt();
						goto case 1;
					}
				case 1:
					{
						m_ActiveItemID = reader.ReadInt();
						m_InactiveItemID = reader.ReadInt();

						goto case 0;
					}
				case 0:
					{
						m_Account = reader.ReadString();
						m_NextUse = reader.ReadDateTime(); //TODO: delete it in a harmless way

						m_Skill = (SkillName)reader.ReadEncodedInt();
						m_SkillValue = reader.ReadDouble();
						break;
					}
			}

			if( version == 0 )
			{
				m_ActiveItemID = 0x2A94;
				m_InactiveItemID = 0x2A93;
			}
		}
Exemplo n.º 46
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            ScoreModifier = 1.0;

            switch (version)
            {
                case 3:
                    {
                        ScoringType = (Scoring) reader.ReadInt();
                        ScoreModifier = reader.ReadDouble();
                        goto case 2;
                    }
                case 2:
                    {
                        m_EventSupplier = reader.ReadItem<EventSupplier>();
                        m_UseSphereRules = reader.ReadBool();
                        m_GiveHorses = reader.ReadBool();
                        goto case 1;
                    }
                case 1:
                    {
                        m_MatchMin = reader.ReadInt();
                        m_LeaveLocation = reader.ReadPoint3D();
                        m_LeaveMap = reader.ReadMap();
                        goto case 0;
                    }
                case 0:
                    {
                        Started = reader.ReadBool();
                        m_Active = reader.ReadBool();
                        m_AcceptingContestants = reader.ReadBool();
                        m_DMSpawnPoints = reader.ReadStrongItemList<DMSpawnPoint>();

                        #region Verify loaded spawn points

                        List<DMSpawnPoint> removalList = new List<DMSpawnPoint>();
                        foreach (DMSpawnPoint dmSpawnPoint in m_DMSpawnPoints)
                            if (dmSpawnPoint.StoneLink != this)
                                removalList.Add(dmSpawnPoint);

                        foreach (DMSpawnPoint dmSpawnPoint in removalList)
                            m_DMSpawnPoints.Remove(dmSpawnPoint);

                        #endregion

                        m_MountCollection = ReadMountCollection(reader);
                        break;
                    }
            }

            m_Started = false;
            AcceptingContestants = false;
            Active = false;
        }
Exemplo n.º 47
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();
            switch(version)
            {
                case 1:
                    // version 1
                    this.m_RequiredSkill2 = (SkillName)reader.ReadInt();
                    this.m_MinSkillLevel2 = reader.ReadDouble();
                    goto case 0;
                case 0:
                    // version 0
                    this.m_MaxSockets = reader.ReadInt();
                    string resourcetype = reader.ReadString();
                    try
                    {
                        this.m_RequiredResource = Type.GetType(resourcetype);
                    }
                    catch
                    {
                    }
                    this.m_ResourceQuantity = reader.ReadInt();
                    this.m_RequiredSkill = (SkillName)reader.ReadInt();
                    this.m_MinSkillLevel = reader.ReadDouble();
                    break;
            }
        }
Exemplo n.º 48
0
        public override void Deserialize( GenericReader reader )
        {
            base.Deserialize( reader );

            int version = reader.ReadInt();

            if ( version >= 16 && version <= 18 )
                reader.ReadItem(); // spawner

            m_CurrentAI = (AIType) reader.ReadInt();
            m_DefaultAI = (AIType) reader.ReadInt();

            m_iRangePerception = reader.ReadInt();
            m_iRangeFight = reader.ReadInt();

            m_iTeam = reader.ReadInt();

            m_dActiveSpeed = reader.ReadDouble();
            m_dPassiveSpeed = reader.ReadDouble();
            m_dCurrentSpeed = reader.ReadDouble();

            double activeSpeed = m_dActiveSpeed;
            double passiveSpeed = m_dPassiveSpeed;

            SpeedInfo.GetSpeeds( this, ref activeSpeed, ref passiveSpeed );

            bool isStandardActive = false;
            for ( int i = 0; !isStandardActive && i < m_StandardActiveSpeeds.Length; ++i )
            {
                isStandardActive = ( m_dActiveSpeed == m_StandardActiveSpeeds[i] );
            }

            bool isStandardPassive = false;
            for ( int i = 0; !isStandardPassive && i < m_StandardPassiveSpeeds.Length; ++i )
            {
                isStandardPassive = ( m_dPassiveSpeed == m_StandardPassiveSpeeds[i] );
            }

            if ( isStandardActive && m_dCurrentSpeed == m_dActiveSpeed )
            {
                m_dCurrentSpeed = activeSpeed;
            }
            else if ( isStandardPassive && m_dCurrentSpeed == m_dPassiveSpeed )
            {
                m_dCurrentSpeed = passiveSpeed;
            }

            if ( isStandardActive )
            {
                m_dActiveSpeed = activeSpeed;
            }

            if ( isStandardPassive )
            {
                m_dPassiveSpeed = passiveSpeed;
            }

            if ( m_iRangePerception == OldRangePerception )
            {
                m_iRangePerception = DefaultRangePerception;
            }

            m_pHome.X = reader.ReadInt();
            m_pHome.Y = reader.ReadInt();
            m_pHome.Z = reader.ReadInt();

            if ( version >= 1 )
            {
                m_iRangeHome = reader.ReadInt();

                if ( version < 25 )
                {
                    int i, iCount;

                    iCount = reader.ReadInt();
                    for ( i = 0; i < iCount; i++ )
                        reader.ReadString();

                    iCount = reader.ReadInt();
                    for ( i = 0; i < iCount; i++ )
                        reader.ReadString();
                }
            }
            else
            {
                m_iRangeHome = 0;
            }

            if ( version >= 2 )
            {
                m_FightMode = (FightMode) reader.ReadInt();

                m_bControlled = reader.ReadBool();
                m_ControlMaster = reader.ReadMobile();
                m_ControlTarget = reader.ReadMobile();
                m_ControlDest = reader.ReadPoint3D();
                m_ControlOrder = (OrderType) reader.ReadInt();

                m_dMinTameSkill = reader.ReadDouble();

                if ( version < 9 )
                    reader.ReadDouble();

                m_bTamable = reader.ReadBool();
                m_bSummoned = reader.ReadBool();

                if ( m_bSummoned )
                {
                    m_SummonEnd = reader.ReadDeltaTime();
                    new UnsummonTimer( m_ControlMaster, this, m_SummonEnd - DateTime.Now ).Start();
                }

                m_iControlSlots = reader.ReadInt();
            }
            else
            {
                m_FightMode = FightMode.Closest;

                m_bControlled = false;
                m_ControlMaster = null;
                m_ControlTarget = null;
                m_ControlOrder = OrderType.None;
            }

            if ( version >= 3 )
                m_Loyalty = (PetLoyalty) reader.ReadInt();
            else
                m_Loyalty = PetLoyalty.WonderfullyHappy;

            if ( version >= 4 )
                m_CurrentWayPoint = reader.ReadItem() as WayPoint;

            if ( version >= 5 )
                m_SummonMaster = reader.ReadMobile();

            if ( version >= 6 )
            {
                m_HitsMax = reader.ReadInt();
                m_StamMax = reader.ReadInt();
                m_ManaMax = reader.ReadInt();
                m_DamageMin = reader.ReadInt();
                m_DamageMax = reader.ReadInt();
            }

            if ( version >= 7 )
            {
                m_PhysicalResistance = reader.ReadInt();
                m_PhysicalDamage = reader.ReadInt();

                m_FireResistance = reader.ReadInt();
                m_FireDamage = reader.ReadInt();

                m_ColdResistance = reader.ReadInt();
                m_ColdDamage = reader.ReadInt();

                m_PoisonResistance = reader.ReadInt();
                m_PoisonDamage = reader.ReadInt();

                m_EnergyResistance = reader.ReadInt();
                m_EnergyDamage = reader.ReadInt();
            }

            if ( version >= 8 )
                m_Owners = reader.ReadStrongMobileList();
            else
                m_Owners = new List<Mobile>();

            if ( version >= 10 )
            {
                m_IsDeadPet = reader.ReadBool();
                m_IsBonded = reader.ReadBool();
                m_BondingBegin = reader.ReadDateTime();
                m_OwnerAbandonTime = reader.ReadDateTime();
            }

            if ( version >= 11 )
                m_HasGeneratedLoot = reader.ReadBool();
            else
                m_HasGeneratedLoot = true;

            if ( version >= 12 )
            {
                m_Paragon = reader.ReadBool();
                m_IsChampionMonster = reader.ReadBool();
            }
            else
            {
                m_Paragon = false;
                m_IsChampionMonster = false;
            }

            if ( version >= 13 && reader.ReadBool() )
                m_Friends = reader.ReadStrongMobileList();
            else if ( version < 13 && m_ControlOrder >= OrderType.Unfriend )
                ++m_ControlOrder;

            if ( version >= 14 )
                m_SpawnLevel = reader.ReadInt();
            else
                m_SpawnLevel = 0;

            if ( version >= 15 )
                m_ChampionType = (ChampionSpawnType) reader.ReadInt();

            if ( version >= 17 )
                m_StolenFrom = reader.ReadBool();

            if ( version >= 18 )
            {
                int count = reader.ReadInt();

                for ( int i = 0; i < count; i++ )
                {
                    Item rummaged = reader.ReadItem();
                    Mobile owner = reader.ReadMobile();

                    if ( rummaged != null && owner != null )
                        m_RummagedItems.Add( rummaged, owner );
                }
            }

            if ( version >= 20 )
            {
                m_IsMinichampMonster = reader.ReadBool();
                m_MinichampType = (MiniChampType) reader.ReadInt();
            }

            if ( version >= 21 )
            {
                m_NextTastyTreat = reader.ReadDateTime();
            }

            if ( version >= 22 )
            {
                m_Petrified = reader.ReadBool();

                if ( m_Petrified )
                {
                    m_StatueAnimation = reader.ReadInt();
                    m_StatueFrames = reader.ReadInt();

                    Frozen = true;
                    HueMod = 2401;
                }
            }

            if ( version >= 23 )
            {
                m_NextArmorEssence = reader.ReadDateTime();
            }

            if ( version >= 24 )
            {
                m_IsGolem = reader.ReadBool();
            }
            else
            {
                m_IsGolem = this is Golem;
            }

            CheckStatTimers();

            ChangeAIType( m_CurrentAI );

            AddFollowers();

            if ( IsAnimatedDead )
                Spells.Necromancy.AnimateDeadSpell.Register( m_SummonMaster, this );

            if ( Controlled )
                Skills.Cap = 15000;
        }
Exemplo n.º 49
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch ( version )
            {
                case 0:
                    {
                        this.m_MinSkill = reader.ReadDouble();
                        this.m_MaxSkill = reader.ReadDouble();
                        this.m_Arrows = reader.ReadInt();
                        this.m_Bolts = reader.ReadInt();

                        if (this.m_MinSkill == 0.0 && this.m_MaxSkill == 30.0)
                        {
                            this.m_MinSkill = -25.0;
                            this.m_MaxSkill = +25.0;
                        }

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

            int storedHitPoints    = 1000;
            int storedMaxHitPoints = 1000;

            //Version 0
            if (version >= 0)
            {
                m_AllowRepair                      = reader.ReadBool();
                m_RepairSound                      = reader.ReadInt();
                m_DamageState                      = (DamageStateType)reader.ReadInt();
                m_InteractionRange                 = reader.ReadInt();
                m_InteractionDelay                 = reader.ReadDouble();
                m_MinInteractDamage                = reader.ReadInt();
                m_MaxInteractDamage                = reader.ReadInt();
                m_InteractDamageScalar             = reader.ReadDouble();
                m_WeaponDamageScalar               = reader.ReadDouble();
                m_LockpickDamageScalar             = reader.ReadDouble();
                m_MiningDamageScalar               = reader.ReadDouble();
                m_LumberjackingDamageScalar        = reader.ReadDouble();
                m_ObjectBreakingDeviceDamageScalar = reader.ReadDouble();

                storedHitPoints    = reader.ReadInt();
                storedMaxHitPoints = reader.ReadInt();

                m_AddLOSBlocker = reader.ReadBool();
                m_HitSound      = reader.ReadInt();

                m_NormalItemId = reader.ReadInt();
                m_NormalHue    = reader.ReadInt();

                m_LightlyDamagedPercent = reader.ReadDouble();
                m_LightlyDamagedSound   = reader.ReadInt();
                m_LightlyDamagedItemId  = reader.ReadInt();
                m_LightlyDamagedHue     = reader.ReadInt();

                m_HeavilyDamagedPercent = reader.ReadDouble();
                m_HeavilyDamagedSound   = reader.ReadInt();
                m_HeavilyDamagedItemId  = reader.ReadInt();
                m_HeavilyDamagedHue     = reader.ReadInt();

                m_BrokenSound  = reader.ReadInt();
                m_BrokenItemId = reader.ReadInt();
                m_BrokenHue    = reader.ReadInt();

                m_DeleteOnBreak = reader.ReadBool();
                m_CreateTimedStaticAfterBreak = reader.ReadBool();

                m_TimedStaticOnBreakItemId             = reader.ReadInt();
                m_TimedStaticOnBreakHue                = reader.ReadInt();
                m_TimedStaticDuration                  = reader.ReadDouble();
                m_TimedStaticOnBreakName               = reader.ReadString();
                m_RevealNearbyHiddenItemsOnBreak       = reader.ReadBool();
                m_RevealNearbyHiddenItemsOnBreakRadius = reader.ReadInt();
                m_RefreshNearbyMovables                = reader.ReadBool();
                m_RefreshNearbyMovablesRadius          = reader.ReadInt();
                m_LOSBlocker = reader.ReadItem() as LOSBlocker;
            }

            //Version 1
            if (version >= 1)
            {
                m_RequiresFullRepair = reader.ReadBool();
                m_PlayerPlaced       = reader.ReadBool();
                m_Facing             = (Direction)reader.ReadInt();
            }


            //--------

            //Make Sure This Gets Fired Off Last
            MaxHitPoints = storedMaxHitPoints;
            HitPoints    = storedHitPoints;
        }
Exemplo n.º 51
0
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();

			m_CurrentAI = (AIType)reader.ReadInt();
			m_DefaultAI = (AIType)reader.ReadInt();

			m_iRangePerception = reader.ReadInt();
			m_iRangeFight = reader.ReadInt();

			m_iTeam = reader.ReadInt();

			m_dActiveSpeed = reader.ReadDouble();
			m_dPassiveSpeed = reader.ReadDouble();
			m_dCurrentSpeed = reader.ReadDouble();

			if ( m_iRangePerception == OldRangePerception )
				m_iRangePerception = DefaultRangePerception;

			m_pHome.X = reader.ReadInt();
			m_pHome.Y = reader.ReadInt();
			m_pHome.Z = reader.ReadInt();

			if ( version >= 1 )
			{
				m_iRangeHome = reader.ReadInt();

				int i, iCount;

				iCount = reader.ReadInt();
				for ( i=0; i< iCount; i++ )
				{
					string str = reader.ReadString();
					Type type = Type.GetType( str );

					if ( type != null )
					{
						m_arSpellAttack.Add( type );
					}
				}

				iCount = reader.ReadInt();
				for ( i=0; i< iCount; i++ )
				{
					string str = reader.ReadString();
					Type type = Type.GetType( str );

					if ( type != null )
					{
						m_arSpellDefense.Add( type );
					}
				}
			}
			else
			{
				m_iRangeHome = 0;
			}

			if ( version >= 2 )
			{
				m_FightMode = ( FightMode )reader.ReadInt();

				m_bControlled = reader.ReadBool();
				m_ControlMaster = reader.ReadMobile();
				m_ControlTarget = reader.ReadMobile();
				m_ControlDest = reader.ReadPoint3D();
				m_ControlOrder = (OrderType) reader.ReadInt();

				m_dMinTameSkill = reader.ReadDouble();

				if ( version < 9 )
					reader.ReadDouble();

				m_bTamable = reader.ReadBool();
				m_bSummoned = reader.ReadBool();

				if ( m_bSummoned )
				{
					m_SummonEnd = reader.ReadDeltaTime();
					new UnsummonTimer( m_ControlMaster, this, m_SummonEnd - DateTime.Now ).Start();
				}

				m_iControlSlots = reader.ReadInt();
			}
			else
			{
				m_FightMode = FightMode.Closest;

				m_bControlled = false;
				m_ControlMaster = null;
				m_ControlTarget = null;
				m_ControlOrder = OrderType.None;
			}

			if ( version >= 3 )
				m_Loyalty = reader.ReadInt();
			else
				m_Loyalty = MaxLoyalty; // Wonderfully Happy

			if ( version >= 4 )
				m_CurrentWayPoint = reader.ReadItem() as WayPoint;

			if ( version >= 5 )
				m_SummonMaster = reader.ReadMobile();

			if ( version >= 6 )
			{
				m_HitsMax = reader.ReadInt();
				m_StamMax = reader.ReadInt();
				m_ManaMax = reader.ReadInt();
				m_DamageMin = reader.ReadInt();
				m_DamageMax = reader.ReadInt();
			}

			if ( version >= 7 )
			{
				m_PhysicalResistance = reader.ReadInt();
				m_PhysicalDamage = reader.ReadInt();

				m_FireResistance = reader.ReadInt();
				m_FireDamage = reader.ReadInt();

				m_ColdResistance = reader.ReadInt();
				m_ColdDamage = reader.ReadInt();

				m_PoisonResistance = reader.ReadInt();
				m_PoisonDamage = reader.ReadInt();

				m_EnergyResistance = reader.ReadInt();
				m_EnergyDamage = reader.ReadInt();
			}

			if ( version >= 8 )
				m_Owners = reader.ReadStrongMobileList();
			else
				m_Owners = new List<Mobile>();

			if ( version >= 10 )
			{
				m_IsDeadPet = reader.ReadBool();
				m_IsBonded = reader.ReadBool();
				m_BondingBegin = reader.ReadDateTime();
				m_OwnerAbandonTime = reader.ReadDateTime();
			}

			if ( version >= 11 )
				m_HasGeneratedLoot = reader.ReadBool();
			else
				m_HasGeneratedLoot = true;

			if ( version >= 12 )
				m_Paragon = reader.ReadBool();
			else
				m_Paragon = false;

			if ( version >= 13 && reader.ReadBool() )
				m_Friends = reader.ReadStrongMobileList();
			else if ( version < 13 && m_ControlOrder >= OrderType.Unfriend )
				++m_ControlOrder;

			if ( version < 16 && Loyalty != MaxLoyalty )
				Loyalty *= 10;

			double activeSpeed = m_dActiveSpeed;
			double passiveSpeed = m_dPassiveSpeed;

			SpeedInfo.GetSpeeds( this, ref activeSpeed, ref passiveSpeed );

			bool isStandardActive = false;
			for ( int i = 0; !isStandardActive && i < m_StandardActiveSpeeds.Length; ++i )
				isStandardActive = ( m_dActiveSpeed == m_StandardActiveSpeeds[i] );

			bool isStandardPassive = false;
			for ( int i = 0; !isStandardPassive && i < m_StandardPassiveSpeeds.Length; ++i )
				isStandardPassive = ( m_dPassiveSpeed == m_StandardPassiveSpeeds[i] );

			if ( isStandardActive && m_dCurrentSpeed == m_dActiveSpeed )
				m_dCurrentSpeed = activeSpeed;
			else if ( isStandardPassive && m_dCurrentSpeed == m_dPassiveSpeed )
				m_dCurrentSpeed = passiveSpeed;

			if ( isStandardActive && !m_Paragon )
				m_dActiveSpeed = activeSpeed;

			if ( isStandardPassive && !m_Paragon )
				m_dPassiveSpeed = passiveSpeed;

			if ( version >= 14 )
			{
				m_RemoveIfUntamed = reader.ReadBool();
				m_RemoveStep = reader.ReadInt();
			}

			TimeSpan deleteTime = TimeSpan.Zero;

			if ( version >= 17 )
				deleteTime = reader.ReadTimeSpan();

			if ( deleteTime > TimeSpan.Zero || LastOwner != null && !Controlled && !IsStabled )
			{
				if ( deleteTime == TimeSpan.Zero )
					deleteTime = TimeSpan.FromDays( 3.0 );

				m_DeleteTimer = new DeleteTimer( this, deleteTime );
				m_DeleteTimer.Start();
			}

			if( version <= 14 && m_Paragon && Hue == 0x31 )
			{
				Hue = Paragon.Hue; //Paragon hue fixed, should now be 0x501.
			}

			CheckStatTimers();

			ChangeAIType(m_CurrentAI);

			AddFollowers();

			if ( IsAnimatedDead )
				Spells.Necromancy.AnimateDeadSpell.Register( m_SummonMaster, this );
		}
Exemplo n.º 52
0
        public override void Deserialize( GenericReader reader )
        {
            base.Deserialize( reader );

            int version = reader.ReadInt();

            m_TinkerLevel = reader.ReadDouble();
            m_HidingLevel = reader.ReadDouble();
            m_Owner = (PlayerMobile) reader.ReadMobile();

            if ( Visible )
                BeginConceal();
        }
Exemplo n.º 53
0
		public override void Deserialize(GenericReader reader)
		{
			base.Deserialize(reader);

			int version = reader.ReadInt();

			switch (version)
			{
				case 0:
					{
						m_Skill = (SkillName)reader.ReadInt();
						m_Required = reader.ReadDouble();
						m_MessageString = reader.ReadString();
						m_MessageNumber = reader.ReadInt();

						break;
					}
			}
		}
Exemplo n.º 54
0
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();

			switch ( version )
			{
				case 0:
				{
					m_MinSkill = reader.ReadDouble();
					m_MaxSkill = reader.ReadDouble();

					if ( m_MinSkill == 0.0 && m_MaxSkill == 30.0 )
					{
						m_MinSkill = -25.0;
						m_MaxSkill = +25.0;
					}

					break;
				}
			}

			UpdateItemID();
		}
Exemplo n.º 55
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();
            m_Active = reader.ReadBool();
            m_Theme = (ThemeType)reader.ReadInt();
            m_TotalSpins = reader.ReadULong();
            m_TotalCollected = reader.ReadULong();
            m_TotalWon = reader.ReadULong();
            m_ErrorCode = reader.ReadInt();
            m_OrigHue = reader.ReadInt();
            m_Throttle = reader.ReadBool();
            m_ThrottleSeconds = reader.ReadDouble();
            m_CardClubOnly = reader.ReadBool();
            m_MembershipCard = reader.ReadBool();

            m_LastWonBy = reader.ReadMobile();
            m_LastWonByDate = reader.ReadDateTime();
            m_LastWonAmount = reader.ReadInt();

            m_SecurityCamMobile = reader.ReadMobile();
            m_SecurityChatter = (VerboseType)reader.ReadInt();
            m_TotalPlayers = reader.ReadInt();
            InvalidateProperties();
            if (m_TotalPlayers > 0)
            {
                for (int i = 0; i < m_TotalPlayers; i++)
                {
                    PlayerInfo player = new PlayerInfo();

                    player.mobile = reader.ReadMobile();
                    player.LastPlayed = reader.ReadDateTime();
                    player.OnCredit = reader.ReadInt();
                    player.Cost = reader.ReadInt();
                    PlayerList.Add(player);
                }
            }

            for (int i = 0; i < m_HitStats.Length; i++)
                m_HitStats[i] = reader.ReadULong();

            if (m_OrigHue != -1 && m_Active)
            {
                Hue = m_OrigHue;
                m_OrigHue = -1;
            }
            SetupTheme(m_Theme);
            ActivateIdleTimer(TimeSpan.FromMinutes(5));
            m_GameSpeed = Utility.RandomList(5, 6, 7, 8, 9, 10, 11, 12);
        }
Exemplo n.º 56
0
		public override void Deserialize(GenericReader reader)
		{
			base.Deserialize(reader);

			int version = reader.GetVersion();

			switch (version)
			{
				case 1:
				case 0:
					{
						Skill = (SkillName)reader.ReadInt();
						SkillAmount = version > 0 ? reader.ReadDouble() : reader.ReadInt();
						Children = reader.ReadBool();
						ChangeSkillReset = reader.ReadBool();
					}
					break;
			}
		}
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();

			switch( version )
			{
				case 1:
					m_alDisabledSkills = new ArrayList();
					int size = reader.ReadInt();
					for ( int i=0;i<size;i++ )
						m_alDisabledSkills.Add( (SkillName) reader.ReadInt() );
					goto case 0;
				case 0:
					m_PriceInGold = reader.ReadInt();
					m_MaxCanBuyTo = reader.ReadDouble();
					m_SkillIncrease = reader.ReadInt();
					m_CoolLooking = reader.ReadBool();
					break;
			}

			if( version == 0 )
				m_alDisabledSkills = new ArrayList();
		}
Exemplo n.º 58
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();
            switch (version)
            {
                case 14:
                    {
                        int nentries = reader.ReadInt();

                        if (nentries > 0)
                        {
                            this.m_Journal = new ArrayList();
                            for (int i = 0; i < nentries; i++)
                            {
                                string entryID = reader.ReadString();
                                string entryText = reader.ReadString();
                                this.m_Journal.Add(new XmlQuest.JournalEntry(entryID, entryText));
                            }
                        }

                        goto case 13;
                    }
                case 13:
                    {
                        this.m_Repeatable = reader.ReadBool();
                        goto case 12;
                    }
                case 12:
                    {
                        this.m_QuestDifficulty = reader.ReadInt();
                        goto case 11;
                    }
                case 11:
                    {
                        this.m_AttachmentString = reader.ReadString();
                        goto case 10;
                    }
                case 10:
                    {
                        this.m_NextRepeatable = reader.ReadTimeSpan();
                        goto case 9;
                    }
                case 9:
                    {
                        this.m_RewardAttachmentSerialNumber = reader.ReadInt();
                        goto case 8;
                    }
                case 8:
                    {
                        this.m_ReturnContainer = (Container)reader.ReadItem();
                        goto case 7;
                    }
                case 7:
                    {
                        this.m_Pack = (Container)reader.ReadItem();
                        this.m_RewardItem = reader.ReadItem();
                        this.m_AutoReward = reader.ReadBool();
                        this.m_CanSeeReward = reader.ReadBool();
                        this.m_PlayerMade = reader.ReadBool();
                        this.m_Creator = reader.ReadMobile() as PlayerMobile;
                        goto case 6;
                    }
                case 6:
                    {
                        this.m_Description1 = reader.ReadString();
                        this.m_Description2 = reader.ReadString();
                        this.m_Description3 = reader.ReadString();
                        this.m_Description4 = reader.ReadString();
                        this.m_Description5 = reader.ReadString();
                        goto case 5;
                    }
                case 5:
                    {
                        this.m_Owner = reader.ReadMobile() as PlayerMobile;
                        goto case 4;
                    }
                case 4:
                    {
                        this.m_RewardString = reader.ReadString();
                        goto case 3;
                    }
                case 3:
                    {
                        this.m_ConfigFile = reader.ReadString();
                        this.m_NoteString = reader.ReadString();
                        this.m_TitleString = reader.ReadString();
                        goto case 2;
                    }
                case 2:
                    {
                        this.m_PartyEnabled = reader.ReadBool();
                        this.m_PartyRange = reader.ReadInt();
                        goto case 1;
                    }
                case 1:
                    {
                        this.m_State1 = reader.ReadString();
                        this.m_State2 = reader.ReadString();
                        this.m_State3 = reader.ReadString();
                        this.m_State4 = reader.ReadString();
                        this.m_State5 = reader.ReadString();
                        goto case 0;
                    }
                case 0:
                    {
                        this.m_wasMoved = reader.ReadBool();
                        this.Expiration = reader.ReadDouble();
                        this.m_TimeCreated = reader.ReadDateTime();
                        this.m_Objective1 = reader.ReadString();
                        this.m_Objective2 = reader.ReadString();
                        this.m_Objective3 = reader.ReadString();
                        this.m_Objective4 = reader.ReadString();
                        this.m_Objective5 = reader.ReadString();
                        this.m_Completed1 = reader.ReadBool();
                        this.m_Completed2 = reader.ReadBool();
                        this.m_Completed3 = reader.ReadBool();
                        this.m_Completed4 = reader.ReadBool();
                        this.m_Completed5 = reader.ReadBool();
                    }
                    break;
            }
        }
Exemplo n.º 59
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            if (version >= 12)
            {
                c_Free = reader.ReadBool();
            }

            if (version >= 11)
            {
                c_Murderers = (Intu)reader.ReadInt();
            }

            if (version >= 10)
            {
                c_LeaveItems = reader.ReadBool();
            }

            if (version >= 9)
            {
                c_RentToOwn        = reader.ReadBool();
                c_OriginalRentTime = reader.ReadTimeSpan();
                c_RTOPayments      = reader.ReadInt();
            }

            c_PreviewItems = new ArrayList();
            if (version >= 7)
            {
                c_PreviewItems = reader.ReadItemList();
            }

            if (version >= 6)
            {
                c_ItemsPrice = reader.ReadInt();
                c_KeepItems  = reader.ReadBool();
            }

            c_DecoreItemInfos = new ArrayList();
            if (version >= 5)
            {
                int            decorecount = reader.ReadInt();
                DecoreItemInfo info;
                for (int i = 0; i < decorecount; ++i)
                {
                    info = new DecoreItemInfo();
                    info.Load(reader);
                    c_DecoreItemInfos.Add(info);
                }

                c_Relock = reader.ReadBool();
            }

            if (version >= 4)
            {
                c_RecurRent     = reader.ReadBool();
                c_RentByTime    = reader.ReadTimeSpan();
                c_RentTime      = reader.ReadDateTime();
                c_DemolishTime  = reader.ReadDateTime();
                c_YoungOnly     = reader.ReadBool();
                c_MinTotalSkill = reader.ReadInt();
                c_MaxTotalSkill = reader.ReadInt();
            }

            if (version >= 3)
            {
                c_MinZ = reader.ReadInt();
                c_MaxZ = reader.ReadInt();
            }

            if (version >= 2)
            {
                c_House = (TownHouse)reader.ReadItem();
            }

            c_Price    = reader.ReadInt();
            c_Locks    = reader.ReadInt();
            c_Secures  = reader.ReadInt();
            c_BanLoc   = reader.ReadPoint3D();
            c_SignLoc  = reader.ReadPoint3D();
            c_Skill    = reader.ReadString();
            c_SkillReq = reader.ReadDouble();

            c_Blocks = new ArrayList();
            int count = reader.ReadInt();

            for (int i = 0; i < count; ++i)
            {
                c_Blocks.Add(reader.ReadRect2D());
            }

            if (c_RentTime > DateTime.Now)
            {
                BeginRentTimer(c_RentTime - DateTime.Now);
            }

            Timer.DelayCall(TimeSpan.Zero, new TimerCallback(StartTimers));

            ClearPreview();

            s_TownHouseSigns.Add(this);
        }
Exemplo n.º 60
0
        public override void Deserialize(GenericReader reader)
        {
            TimeSpan ts = TimeSpan.Zero;

            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 3:
            {
                m_LevelScale = reader.ReadDouble();
                goto case 2;
            }

            case 2:
            {
                m_LevelError = (LevelErrors)reader.ReadInt();
                goto case 1;
            }

            case 1:
            {
                ts = reader.ReadDeltaTime() - DateTime.Now;
                goto case 0;
            }

            case 0:
            {
                // read it all back in
                m_Type = ((ChampLevelData.SpawnTypes)reader.ReadInt());

                int a = reader.ReadInt();
                SpawnLevels = new ArrayList();

                // create new level array through deserialise constructors
                for (int i = 0; i < a; ++i)
                {
                    SpawnLevels.Add(new ChampLevelData(reader));
                }

                m_Monsters     = reader.ReadMobileList();
                m_FreeMonsters = reader.ReadMobileList();
                m_LevelCounter = reader.ReadInt();
                m_Kills        = reader.ReadInt();
                m_ExpireTime   = reader.ReadDateTime();
                m_NavDest      = (NavDestinations)reader.ReadInt();

                // the bools
                m_bActive   = reader.ReadBool();
                m_bGraphics = reader.ReadBool();

                // if graphics were on remake them thru deserialise constructor
                if (m_bGraphics)
                {
                    m_Graphics = new ChampGraphics(this, reader);
                }

                // and the restart...
                m_bRestart     = reader.ReadBool();
                m_RestartDelay = reader.ReadTimeSpan();

                if (reader.ReadBool() && !m_bActive && m_bRestart)
                {
                    // in this case the champ is activley in restart mode, so create new timer
                    //pla: 13/01/07
                    //changed so we don't lose time on restart
                    if (ts == TimeSpan.Zero)
                    {
                        DoTimer(m_RestartDelay);
                    }
                    else
                    {
                        DoTimer(ts);
                    }
                }
                else if (m_bActive)
                {
                    // if spawn was active then start the wheels turning...
                    StartSlice();
                }

                break;
            }
            }
        }