It is possible. I have the similar case as yours. I've got a model, which consists of multiple separate parts. Each part has its own single *material* and own *textures*.
[![enter image description here][1]][1]

First join the meshes together with <kbd>Ctrl</kbd>+<kbd>J</kbd>.  
[![enter image description here][2]][2]

Next create a ***new UV Map*** (press the ***'+'*** button in the *UV Maps* panel of the *Mesh Data* header and *add a new image* in the *UV Editor* window.
[![enter image description here][3]][3]

Unwrap your mesh with <kbd>U</kbd>-->*Unwrap*.
[![enter image description here][4]][4]

Go to *Render* header, set the *bake mode* to ***Textures*** and hit the ***BAKE*** button. It will create one big color texture map from the all textures you've apllied.
[![enter image description here][5]][5]


  [1]: https://i.sstatic.net/dmJSD.gif
  [2]: https://i.sstatic.net/9iJms.png
  [3]: https://i.sstatic.net/hdanB.png
  [4]: https://i.sstatic.net/mPmYo.png
  [5]: https://i.sstatic.net/FLpyK.png