private bool AttemptSimpleTransfer(IDragDestination <T> destination) { var draggingItem = source.GetItem(); var draggingNumber = source.GetNumber(); var draggingModifiers = source.GetSourceModifiers(); var acceptable = destination.MaxAcceptable(draggingItem); var toTransfer = Mathf.Min(acceptable, draggingNumber); if (toTransfer > 0) { source.RemoveItems(toTransfer); destination.AddItems(draggingItem, toTransfer, draggingModifiers); return(false); } return(true); }