Beispiel #1
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            m_ReplenishesCharges = reader.ReadBool();

            if (m_ReplenishesCharges)
            {
                m_LastReplenished = reader.ReadDateTime();
            }


            m_Crafter = reader.ReadMobile();

            m_Quality = (InstrumentQuality)reader.ReadEncodedInt();


            UsesRemaining = reader.ReadEncodedInt();

            m_WellSound  = reader.ReadEncodedInt();
            m_BadlySound = reader.ReadEncodedInt();

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


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

            int version = reader.ReadInt();

            switch (version)
            {
            case 1:
            {
                m_Crafter = reader.ReadMobile();

                m_Quality = (InstrumentQuality)reader.ReadEncodedInt();
                m_Slayer  = (SlayerName)reader.ReadEncodedInt();

                m_UsesRemaining = reader.ReadEncodedInt();

                m_WellSound  = reader.ReadEncodedInt();
                m_BadlySound = reader.ReadEncodedInt();

                break;
            }

            case 0:
            {
                m_WellSound     = reader.ReadInt();
                m_BadlySound    = reader.ReadInt();
                m_UsesRemaining = Utility.RandomMinMax(InitMinUses, InitMaxUses);

                break;
            }
            }
        }
Beispiel #3
0
 //clone constructor
 public InstrumentListEntry(InstrumentListEntry entry) : base(entry)
 {
     _Quality       = entry.Quality;
     _UsesRemaining = entry.UsesRemaining;
     _Slayer        = entry.Slayer;
     _Slayer2       = entry.Slayer2;
     _Crafter       = entry.Crafter;
 }
Beispiel #4
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            _Quality       = (InstrumentQuality)reader.ReadInt();
            _UsesRemaining = reader.ReadInt();
            _Slayer        = (SlayerName)reader.ReadInt();
            _Slayer2       = (SlayerName)reader.ReadInt();
            _Crafter       = reader.ReadMobile();
        }
Beispiel #5
0
        //master constructor, use the net hue to hue the entry
        public InstrumentListEntry(Item item) : base(item)
        {
            _Name = TrimNamespace(item.GetType().Name);

            BaseInstrument instrument = (BaseInstrument)item;

            _Quality       = instrument.Quality;
            _UsesRemaining = instrument.UsesRemaining;
            _Slayer        = instrument.Slayer;
            _Slayer2       = instrument.Slayer2;
            _Crafter       = instrument.Crafter;
        }
		public override void Deserialize( GenericReader reader )
		{
			//handle base StoreEntry deserialization first
			base.Deserialize( reader );
			int version = reader.ReadInt();
			
			switch( version )
			{
				case 0:
				default:
				{
					_Quality = (InstrumentQuality)reader.ReadInt();
					break;
				}
				
			}
			
		}//deserialize		
		//master constructor: set up types, quality, a name, an amount, and size/offset of artwork
		public InstrumentEntry( Type type, Type[] types, InstrumentQuality quality, string name, int amount, int height, int x, int y ) : base( type, types, name, amount, height, x, y )
		{
			_Quality = quality;
		}
		//default constructor, set up a type, quality, name, amount, size/offset of artwork
		public InstrumentEntry( Type type, InstrumentQuality quality, string name, int amount, int height, int x, int y ) : this( type, null, quality, name, amount, height, x, y )
		{
		}
		//default constructor: set up types, a quality, a name, an amount, and default size/offset of artwork
		public InstrumentEntry( Type type, Type[] types, InstrumentQuality quality, string name, int amount ) : this( type, types, quality, name, amount, 25, 0, 0 )
		{
		}
		//default constructor: set up several types, a quality, a name, and default 0 quantity
		public InstrumentEntry( Type type, Type[] types, InstrumentQuality quality, string name ) : this( type, types, quality, name, 0 )
		{
		}
		//default constructor: set up one type, a quality, a name, and default 0 quantity
		public InstrumentEntry( Type type, InstrumentQuality quality, string name ) : this( type, null, quality, name, 0 )
		{
		}
        public override void Deserialize( GenericReader reader )
        {
            base.Deserialize( reader );

            int version = reader.ReadInt();

            switch ( version )
            {
                case 2:
                {
                    m_Crafter = reader.ReadMobile();

                    m_Quality = (InstrumentQuality)reader.ReadEncodedInt();
                    m_Slayer = (SlayerName)reader.ReadEncodedInt();
                    m_Slayer2 = (SlayerName)reader.ReadEncodedInt();

                    m_UsesRemaining = reader.ReadEncodedInt();

                    m_WellSound = reader.ReadEncodedInt();
                    m_BadlySound = reader.ReadEncodedInt();

                    break;
                }
                case 1:
                {
                    m_Crafter = reader.ReadMobile();

                    m_Quality = (InstrumentQuality)reader.ReadEncodedInt();
                    m_Slayer = (SlayerName)reader.ReadEncodedInt();

                    m_UsesRemaining = reader.ReadEncodedInt();

                    m_WellSound = reader.ReadEncodedInt();
                    m_BadlySound = reader.ReadEncodedInt();

                    break;
                }
                case 0:
                {
                    m_WellSound = reader.ReadInt();
                    m_BadlySound = reader.ReadInt();
                    m_UsesRemaining = Utility.RandomMinMax( InitMinUses, InitMaxUses );

                    break;
                }
            }
        }
		//clone constructor
		public InstrumentListEntry( InstrumentListEntry entry ) : base( entry )
		{
			_Quality = entry.Quality;
			_UsesRemaining = entry.UsesRemaining;
			_Slayer = entry.Slayer;
			_Slayer2 = entry.Slayer2;
			_Crafter = entry.Crafter;
		}
		//master constructor, use the net hue to hue the entry
		public InstrumentListEntry( Item item ) : base ( item )
		{
			_Name = TrimNamespace( item.GetType().Name );			
			
			BaseInstrument instrument = (BaseInstrument)item;
			
			_Quality = instrument.Quality;
			_UsesRemaining = instrument.UsesRemaining;
			_Slayer = instrument.Slayer;
			_Slayer2 = instrument.Slayer2;
			_Crafter = instrument.Crafter;
			
		}
Beispiel #15
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            m_ReplenishesCharges = reader.ReadBool();
            if (m_ReplenishesCharges)
            {
                m_LastReplenished = reader.ReadDateTime();
            }

            m_Crafter = reader.ReadMobile();

            m_Quality = (InstrumentQuality)reader.ReadEncodedInt();
            m_Slayer  = (SlayerName)reader.ReadEncodedInt();
            m_Slayer2 = (SlayerName)reader.ReadEncodedInt();

            UsesRemaining = reader.ReadEncodedInt();

            m_WellSound  = reader.ReadEncodedInt();
            m_BadlySound = reader.ReadEncodedInt();

            m_MaxHitPoints = reader.ReadEncodedInt();
            m_HitPoints    = reader.ReadEncodedInt();

            m_Resource = (CraftResource)reader.ReadEncodedInt();

            m_AosAttributes   = new AosAttributes(this, reader);
            m_AosResistances  = new AosElementAttributes(this, reader);
            m_AosSkillBonuses = new AosSkillBonuses(this, reader);

            CheckReplenishUses();

            if (Core.AOS && Parent is Mobile)
            {
                m_AosSkillBonuses.AddTo((Mobile)Parent);
            }

            int strBonus = m_AosAttributes.BonusStr;
            int dexBonus = m_AosAttributes.BonusDex;
            int intBonus = m_AosAttributes.BonusInt;

            if (Parent is Mobile && (strBonus != 0 || dexBonus != 0 || intBonus != 0))
            {
                Mobile m = (Mobile)Parent;

                string modName = Serial.ToString();

                if (strBonus != 0)
                {
                    m.AddStatMod(new StatMod(StatType.Str, modName + "Str", strBonus, TimeSpan.Zero));
                }

                if (dexBonus != 0)
                {
                    m.AddStatMod(new StatMod(StatType.Dex, modName + "Dex", dexBonus, TimeSpan.Zero));
                }

                if (intBonus != 0)
                {
                    m.AddStatMod(new StatMod(StatType.Int, modName + "Int", intBonus, TimeSpan.Zero));
                }
            }

            if (Parent is Mobile)
            {
                ((Mobile)Parent).CheckStatTimers();
            }
        }
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 3:
            {
                m_ReplenishesCharges = reader.ReadBool();

                if (m_ReplenishesCharges)
                {
                    m_LastReplenished = reader.ReadDateTime();
                }

                goto case 2;
            }

            case 2:
            {
                m_Crafter = reader.ReadMobile();

                m_Quality = (InstrumentQuality)reader.ReadEncodedInt();
                m_Slayer  = (SlayerName)reader.ReadEncodedInt();
                m_Slayer2 = (SlayerName)reader.ReadEncodedInt();

                UsesRemaining = reader.ReadEncodedInt();

                m_WellSound  = reader.ReadEncodedInt();
                m_BadlySound = reader.ReadEncodedInt();

                break;
            }

            case 1:
            {
                m_Crafter = reader.ReadMobile();

                m_Quality = (InstrumentQuality)reader.ReadEncodedInt();
                m_Slayer  = (SlayerName)reader.ReadEncodedInt();

                UsesRemaining = reader.ReadEncodedInt();

                m_WellSound  = reader.ReadEncodedInt();
                m_BadlySound = reader.ReadEncodedInt();

                break;
            }

            case 0:
            {
                m_WellSound   = reader.ReadInt();
                m_BadlySound  = reader.ReadInt();
                UsesRemaining = Utility.RandomMinMax(InitMinUses, InitMaxUses);

                break;
            }
            }

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

			int version = reader.ReadInt();

			switch ( version )
			{
				case 3:
				{
					m_ReplenishesCharges = reader.ReadBool();

					if( m_ReplenishesCharges )
						m_LastReplenished = reader.ReadDateTime();

					goto case 2;
				}
				case 2:
				{
					m_Crafter = reader.ReadMobile();

					m_Quality = (InstrumentQuality)reader.ReadEncodedInt();
					m_Slayer = (SlayerName)reader.ReadEncodedInt();
					m_Slayer2 = (SlayerName)reader.ReadEncodedInt();

					UsesRemaining = reader.ReadEncodedInt();

					m_WellSound = reader.ReadEncodedInt();
					m_BadlySound = reader.ReadEncodedInt();
					
					break;
				}
				case 1:
				{
					m_Crafter = reader.ReadMobile();

					m_Quality = (InstrumentQuality)reader.ReadEncodedInt();
					m_Slayer = (SlayerName)reader.ReadEncodedInt();

					UsesRemaining = reader.ReadEncodedInt();

					m_WellSound = reader.ReadEncodedInt();
					m_BadlySound = reader.ReadEncodedInt();

					break;
				}
				case 0:
				{
					m_WellSound = reader.ReadInt();
					m_BadlySound = reader.ReadInt();
					UsesRemaining = Utility.RandomMinMax( InitMinUses, InitMaxUses );

					break;
				}
			}

			CheckReplenishUses();
		}
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );
			
			int version = reader.ReadInt();
			
			_Quality = (InstrumentQuality)reader.ReadInt();
			_UsesRemaining = reader.ReadInt();
			_Slayer = (SlayerName)reader.ReadInt();
			_Slayer2 = (SlayerName)reader.ReadInt();
			_Crafter = reader.ReadMobile();
		}