public override bool CheckTrade( Mobile to, Item item, SecureTradeContainer cont, bool message, bool checkItems, int plusItems, int plusWeight )
        {
            int msgNum = 0;

            if ( cont == null )
            {
                if ( to.Holding != null )
                    msgNum = 1062727; // You cannot trade with someone who is dragging something.
                else if ( this.HasTrade )
                    msgNum = 1062781; // You are already trading with someone else!
                else if ( to.HasTrade )
                    msgNum = 1062779; // That person is already involved in a trade
            }

            if ( msgNum == 0 )
            {
                if ( cont != null )
                {
                    plusItems += cont.TotalItems;
                    plusWeight += cont.TotalWeight;
                }

                if ( this.Backpack == null || !this.Backpack.CheckHold( this, item, false, checkItems, plusItems, plusWeight ) )
                    msgNum = 1004040; // You would not be able to hold this if the trade failed.
                else if ( to.Backpack == null || !to.Backpack.CheckHold( to, item, false, checkItems, plusItems, plusWeight ) )
                    msgNum = 1004039; // The recipient of this trade would not be able to carry this.
                else
                    msgNum = CheckContentForTrade( item );
            }

            if ( msgNum != 0 )
            {
                if ( message )
                    this.SendLocalizedMessage( msgNum );

                return false;
            }

            item.SendPropertiesTo( to );
            return true;
        }