Server.Mobiles.BaseCreature.Rummage C# (CSharp) Method

Rummage() public method

public Rummage ( ) : bool
return bool
        public virtual bool Rummage()
        {
            Corpse toRummage = null;

            foreach ( Item item in this.GetItemsInRange( 2 ) )
            {
                if ( item is Corpse && item.Items.Count > 0 )
                {
                    toRummage = (Corpse)item;
                    break;
                }
            }

            if ( toRummage == null )
                return false;

            Container pack = this.Backpack;

            if ( pack == null )
                return false;

            List<Item> items = toRummage.Items;

            bool rejected;
            LRReason reason;

            for ( int i = 0; i < items.Count; ++i )
            {
                Item item = items[Utility.Random( items.Count )];

                Lift( item, item.Amount, out rejected, out reason );

                if ( !rejected && Drop( this, new Point3D( -1, -1, 0 ) ) )
                {
                    // *rummages through a corpse and takes an item*
                    PublicOverheadMessage( MessageType.Emote, 0x3B2, 1008086 );
                    //TODO: Instancing of Rummaged stuff.
                    return true;
                }
            }

            return false;
        }
BaseCreature