2.If you have textures, and you can use the same mapping coordinates for all materials, do the same as in 1. and apply cylindrical mapping coordinates. On a cylinder's top you might get strange distortions if you use this technique :o(
3.In some cases you may turn [Face Map] ON in the Material Editor and do the steps described in 1.
4.If 3. looks bad, and you need separate mapping coordinates, you have to detach the faces first. An object can have more than one mapping coordinate sets, but you cannot assign them to a part of an object directly.
5. You can, of course, create two separate objects for the tower and the roof directly in 3D Editor or Lofter - it would be easier ;o)
Point 1. applies also to materials that use only .SXP textures and no bitmaps in slots other than Reflection Map.