Exemplo n.º 1
0
        public override void OnSingleClick(Mobile from)
        {
            LabelTo(from, Sphere.ComputeName(this));

            /*
             *          List<EquipInfoAttribute> attrs = new List<EquipInfoAttribute>();
             *
             *          int number;
             *
             *          if ( Name == null )
             *          {
             *                  number = LabelNumber;
             *          }
             *          else
             *          {
             *                  this.LabelTo( from, Name );
             *                  number = 1041000;
             *          }
             *
             *          if ( attrs.Count == 0 && Crafter == null && Name != null )
             *                  return;
             *
             *          EquipmentInfo eqInfo = new EquipmentInfo( number, m_Crafter, false, attrs.ToArray() );
             *
             *          from.Send( new DisplayEquipmentInfo( this, eqInfo ) );
             */
        }
Exemplo n.º 2
0
        public override void OnDoubleClick(Mobile from)
        {
            if (IsChildOf(from.Backpack))
            {
                for (int i = 0; i < Prizes.Length; ++i)
                {
                    Prize entry = Prizes[i];

                    bool shouldAdd = (entry.Chance > Utility.Random(10000));
                    if (!shouldAdd)
                    {
                        continue;
                    }

                    Item item = entry.Construct();
                    if (item != null)
                    {
                        from.AddToBackpack(item);
                        from.SendMessage("You have been awarded a prize: " + Sphere.ComputeName(item));
                        Delete();
                    }
                    return;
                }
            }
            else
            {
                from.SendLocalizedMessage(1080058);
            }
        }
Exemplo n.º 3
0
        public override void OnSingleClick(Mobile from)
        {
            LabelTo(from, Sphere.ComputeName(this));

            /*
             *          ArrayList attrs = new ArrayList();
             *
             *          if ( DisplayLootType )
             *          {
             *                  if ( LootType == LootType.Blessed )
             *                          attrs.Add( new EquipInfoAttribute( 1038021 ) ); // blessed
             *                  else if ( LootType == LootType.Cursed )
             *                          attrs.Add( new EquipInfoAttribute( 1049643 ) ); // cursed
             *          }
             *
             *          if ( m_Quality == InstrumentQuality.Exceptional )
             *                  attrs.Add( new EquipInfoAttribute( 1018305 - (int)m_Quality ) );
             *
             *          if( m_ReplenishesCharges )
             *                  attrs.Add( new EquipInfoAttribute( 1070928 ) ); // Replenish Charges
             *
             *          // TODO: Must this support item identification?
             *          if( m_Slayer != SlayerName.None )
             *          {
             *                  SlayerEntry entry = SlayerGroup.GetEntryByName( m_Slayer );
             *                  if( entry != null )
             *                          attrs.Add( new EquipInfoAttribute( entry.Title ) );
             *          }
             *
             *          if( m_Slayer2 != SlayerName.None )
             *          {
             *                  SlayerEntry entry = SlayerGroup.GetEntryByName( m_Slayer2 );
             *                  if( entry != null )
             *                          attrs.Add( new EquipInfoAttribute( entry.Title ) );
             *          }
             *
             *          int number;
             *
             *          if ( Name == null )
             *          {
             *                  number = LabelNumber;
             *          }
             *          else
             *          {
             *                  this.LabelTo( from, Name );
             *                  number = 1041000;
             *          }
             *
             *          if ( attrs.Count == 0 && Crafter == null && Name != null )
             *                  return;
             *
             *          EquipmentInfo eqInfo = new EquipmentInfo( number, m_Crafter, false, (EquipInfoAttribute[])attrs.ToArray( typeof( EquipInfoAttribute ) ) );
             *
             *          from.Send( new DisplayEquipmentInfo( this, eqInfo ) );
             */
        }
Exemplo n.º 4
0
        public override void OnSingleClick(Mobile from)
        {
            string name = Sphere.ComputeName(this);

            if (Amount != 1)
            {
                name = Amount + " " + name + "s";
            }

            LabelTo(from, name);
        }
Exemplo n.º 5
0
 private static void processContainer(PlayerVendor vendor, Container container)
 {
     foreach (Item i in container.Items)
     {
         VendorItem vi = vendor.GetVendorItem(i);
         if (vi != null)
         {
             if (vi.IsForSale)
             {
                 MyVendorItem mvi = new MyVendorItem();
                 mvi.Name        = vi.Item is BaseContainer ? "container" : StringUtils.GetString(vi.Item.Name, Sphere.ComputeName(vi.Item));
                 mvi.Description = vi.Description;
                 mvi.Price       = vi.Price;
                 if (vi.Item is CommodityDeed)
                 {
                     Item commodity = (vi.Item as CommodityDeed).Commodity;
                     if (commodity == null) // skip empty deeds
                     {
                         continue;
                     }
                     mvi.Amount = commodity.Amount;
                     mvi.Name  += " - " + Sphere.ComputeName(commodity);
                 }
                 else
                 {
                     mvi.Amount = vi.Item.Amount;
                 }
                 if (mvi.Amount != 0)
                 {
                     mvi.PricePer = mvi.Price / mvi.Amount;
                 }
                 else
                 {
                     mvi.PricePer = mvi.Price;
                 }
                 mvi.VendorName = vendor.Name;
                 mvi.OwnerName  = vendor.Owner.Name;
                 mvi.Location   = StringUtils.GetString(vendor.Region.Name, BaseRegion.GetRuneNameFor(vendor.Region)) + " " + vendor.Location.X + "," + vendor.Location.Y;
                 m_VendorItems.Add(mvi);
             }
             else if (vi.Item is Container)
             {
                 processContainer(vendor, vi.Item as Container);
             }
         }
     }
 }
Exemplo n.º 6
0
 public override void OnSingleClick(Mobile from)
 {
     LabelTo(from, Sphere.ComputeName(this));
 }
Exemplo n.º 7
0
        //Maka : fix the bad code practise
        public void SphereDoubleClick(Mobile from)
        {
            if (Parent == null)
            {
                SpellHelper.Turn(from, this);
            }

            //Maka : New layers
            if (from.FindItemOnLayer(Layer.FirstValid) != null && from.FindItemOnLayer(Layer.FirstValid) != this)
            {
                Item i = from.FindItemOnLayer(Layer.FirstValid);

                if (i != null)
                {
                    from.SendAsciiMessage(string.Format("You put the {0} in your pack.", Sphere.ComputeName(i)));
                    from.AddToBackpack(i);
                }
            }

            if (from.FindItemOnLayer(Layer) != null && from.FindItemOnLayer(Layer) != this)
            {
                Item i = from.FindItemOnLayer(Layer);

                //Is it a shield
                if (i is BaseArmor)
                {
                    from.SendAsciiMessage(string.Format("You put the {0} in your pack.", Sphere.ComputeName(i)));
                    from.AddToBackpack(i);

                    //If its a shield, is he holding a weap
                    i = from.FindItemOnLayer(Layer.OneHanded);

                    if (i != null)
                    {
                        from.SendAsciiMessage(string.Format("You put the {0} in your pack.", Sphere.ComputeName(i)));
                        from.AddToBackpack(i);
                    }
                }
                else
                {
                    i = from.FindItemOnLayer(Layer);

                    from.SendAsciiMessage(string.Format("You put the {0} in your pack.", Sphere.ComputeName(i)));

                    from.AddToBackpack(i);
                }

                from.EquipItem(this);
                from.PlaySound(0x57);
            }
            else if (Layer == Layer.OneHanded && from.FindItemOnLayer(Layer.TwoHanded) != null || Layer == Layer.TwoHanded && from.FindItemOnLayer(Layer.OneHanded) != null)
            {
                Item i = from.FindItemOnLayer(Layer.TwoHanded);

                if (i != null && !(i is BaseShield))
                {
                    from.SendAsciiMessage(string.Format("You put the {0} in your pack.", Sphere.ComputeName(i)));
                    from.AddToBackpack(i);
                }

                from.EquipItem(this);
            }
            else if (Layer == Layer.TwoHanded && from.FindItemOnLayer(Layer.OneHanded) != null)
            {
                Item i = from.FindItemOnLayer(Layer.OneHanded);

                if (i != null)
                {
                    from.SendAsciiMessage(string.Format("You put the {0} in your pack.", Sphere.ComputeName(i)));
                    from.AddToBackpack(i);
                }

                from.EquipItem(this);
            }
            else
            {
                from.EquipItem(this);
            }
        }