示例#1
0
 public BaseWand(WandEffect effect, int minCharges, int maxCharges)
     : base(Utility.RandomList(0xDF2, 0xDF3, 0xDF4, 0xDF5))
 {
     Weight  = 1.0;
     Effect  = effect;
     Charges = Utility.RandomMinMax(minCharges, maxCharges);
 }
示例#2
0
 public BaseWand( WandEffect effect, int minCharges, int maxCharges )
     : base(Utility.RandomList( 0xDF2, 0xDF3, 0xDF4, 0xDF5 ))
 {
     Weight = 1.0;
     Effect = effect;
     Charges = Utility.RandomMinMax( minCharges, maxCharges );
 }
示例#3
0
        public static Item Find(WandEffect effect)
        {
            Mobile player = World.Player;

            if (player == null)
            {
                return((Item)null);
            }
            Item            equip = player.FindEquip(Layer.OneHanded);
            WandInformation wandInformation;

            if (equip != null && WandRepository.Retrieve(equip, out wandInformation) && (wandInformation.Effect == effect && wandInformation.Charges > 0))
            {
                equip.Look();
                return(equip);
            }
            foreach (KeyValuePair <Item, WandInformation> keyValuePair in WandRepository.table)
            {
                if (keyValuePair.Value.Effect == effect && (keyValuePair.Value.Charges > 0 && keyValuePair.Key.IsChildOf((Agent)player)))
                {
                    keyValuePair.Key.Look();
                    return(keyValuePair.Key);
                }
            }
            return((Item)null);
        }
示例#4
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            m_WandEffect = (WandEffect)reader.ReadInt();
            m_Charges    = reader.ReadInt();
        }
示例#5
0
 public BaseWand(WandEffect effect, int minCharges, int maxCharges) : base(Utility.RandomList(0xDF2, 0xDF3, 0xDF4, 0xDF5))
 {
     Weight  = 1.0;
     Effect  = effect;
     Charges = Utility.RandomMinMax(minCharges, maxCharges);
     WeaponAttributes.MageWeapon = Utility.RandomMinMax(21, 29); //ADDED By Redsnow
     Attributes.SpellChanneling  = 1;                            //ADDED By Redsnow
 }
示例#6
0
		public BaseWand( WandEffect effect, int minCharges, int maxCharges ) : base( Utility.RandomList( 0xDF2, 0xDF3, 0xDF4, 0xDF5 ) )
		{
			Weight = 1.0;
			Effect = effect;
			Charges = Utility.RandomMinMax( minCharges, maxCharges );
			Attributes.SpellChanneling = 1;
			Attributes.CastSpeed = -1;
			WeaponAttributes.MageWeapon = Utility.RandomMinMax( 1, 10 );
		}
示例#7
0
 public BaseWand(WandEffect effect, int minCharges, int maxCharges) : base(Utility.RandomList(0xDF2, 0xDF3, 0xDF4, 0xDF5))
 {
     Weight  = 1.0;
     Effect  = effect;
     Charges = Utility.RandomMinMax(minCharges, maxCharges);
     Attributes.SpellChanneling  = 1;
     Attributes.CastSpeed        = -1;
     WeaponAttributes.MageWeapon = Utility.RandomMinMax(1, 10);
 }
示例#8
0
        public BaseWand(WandEffect effect, int minCharges, int maxCharges)
            : base(Utility.RandomList(0xDF2, 0xDF3, 0xDF4, 0xDF5))
        {
            this.Weight  = 1.0;
            this.Effect  = effect;
            this.Charges = Utility.RandomMinMax(minCharges, maxCharges);

            if (Core.AOS && m_WandEffect < WandEffect.None)
            {
                this.Attributes.SpellChanneling  = 1;
                this.Attributes.CastSpeed        = -1;
                this.WeaponAttributes.MageWeapon = Utility.RandomMinMax(1, 10);
            }
        }
示例#9
0
        public BaseWand(WandEffect effect, int minCharges, int maxCharges)
            : base(Utility.RandomList(0xDF2, 0xDF3, 0xDF4, 0xDF5))
        {
            this.Weight = 1.0;
            this.Effect = effect;
            this.Charges = Utility.RandomMinMax(minCharges, maxCharges);

            if (Core.AOS && m_WandEffect < WandEffect.None)
            {
                this.Attributes.SpellChanneling = 1;
                this.Attributes.CastSpeed = -1;
                this.WeaponAttributes.MageWeapon = Utility.RandomMinMax(1, 10);
            }
        }
示例#10
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 0:
            {
                m_WandEffect = (WandEffect)reader.ReadInt();
                m_Charges    = (int)reader.ReadInt();

                break;
            }
            }
        }
示例#11
0
 private void Deserialize(IGenericReader reader, int version)
 {
     _wandEffect = (WandEffect)reader.ReadInt();
     _charges    = reader.ReadInt();
 }
示例#12
0
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();

			switch ( version )
			{
				case 0:
				{
					m_WandEffect = (WandEffect)reader.ReadInt();
					m_Charges = (int)reader.ReadInt();

					break;
				}
			}
		}
示例#13
0
 public WandInformation(WandEffect effect, int charges)
 {
     this.effect  = effect;
     this.charges = charges;
 }
示例#14
0
 public BaseStaff(int itemID, WandEffect effect, int minCharges, int maxCharges) : base(itemID)
 {
     StaffEffect = effect;
     Charges     = Utility.RandomMinMax(minCharges, maxCharges);
 }
示例#15
0
 public BaseWand(WandEffect effect) : this(effect, 5, 10)
 {
 }
示例#16
0
 public BaseStaff(int itemID, WandEffect effect, int minCharges, int maxCharges )
     : base(itemID)
 {
     StaffEffect = effect;
     Charges = Utility.RandomMinMax(minCharges, maxCharges);
 }
示例#17
0
		public BaseWand( WandEffect effect ) : this( effect, 5, 30 )
		{
		}
示例#18
0
        public override void Deserialize( GenericReader reader )
        {
            base.Deserialize( reader );

            int version = reader.ReadInt();
            if (version == 1)
                m_WandEffect = (WandEffect)reader.ReadInt();
        }