Example #1
0
        public override void OnDoubleClick( Mobile from )
        {
            if ( !IsChildOf( from.Backpack ) )
            {
                from.SendLocalizedMessage( 1042001 ); // That must be in your pack for you to use it.
                return;
            }

            Item replacement = CreateReplacement();

            if ( !from.PlaceInBackpack( replacement ) )
            {
                replacement.Delete();
                from.SendLocalizedMessage( 500720 ); // You don't have enough room in your backpack!
            }
            else
            {
                Delete();
                from.Use( replacement );
            }
        }
Example #2
0
        public static void CommandUseReq(Mobile from, Item item)
        {
            if (from == null || item == null || item.Deleted) return;
            
            if (from.AccessLevel >= AccessLevel.GameMaster || DateTime.UtcNow >= from.NextActionTime)
            {
                bool blockdefaultonuse = false;


                blockdefaultonuse = (XmlScript.HasTrigger(from, TriggerName.onUse) && UberScriptTriggers.Trigger(from, from, TriggerName.onUse, item))
                    || (XmlScript.HasTrigger(item, TriggerName.onUse) && UberScriptTriggers.Trigger(item, from, TriggerName.onUse));
                
                // need to check the item again in case it was modified in the OnUse or OnUser method
                if (!blockdefaultonuse && item != null && !item.Deleted)
                    from.Use(item);
                
                from.NextActionTime = DateTime.UtcNow + Mobile.ServerWideObjectDelay;
            }
            else
            {
                from.SendActionMessage();
            }
        }
        public static void TryPackOpen( BaseCreature squire, Mobile from )
        {
            if ( squire.IsDeadPet )
                return;

            Item QuiverCheck = squire.FindItemOnLayer( Layer.Cloak );

            if( QuiverCheck is BaseQuiver )
            {
                Container item = (Container)QuiverCheck;

                if ( CheckAccess( squire, from ) )
                {
                    if ( item != null )
                    {
                        from.Use( item );
                        if( ((Squire)squire).m_SquireBeQuiet == false )
                        {
                            SquireDialog.DoSquireDialog( from, ((Squire)squire), SquireDialogTree.OpenQuiver, null, null );
                        }
                    }
                }
            }
            else
            {
                if( ((Squire)squire).m_SquireBeQuiet == false )
                {
                    SquireDialog.DoSquireDialog( from, ((Squire)squire), SquireDialogTree.NotAQuiver, null, null );
                }
            }
        }
        public static void TryPackOpen( BaseCreature squire, Mobile from )
        {
            if ( squire.IsDeadPet )
                return;

            Container item = squire.Backpack;

            if ( CheckAccess( squire, from ) )
                if ( item != null )
                    from.Use( item );
        }