/// <summary>
        /// Creates new ConstructingBuilding from ConstructingBuildingDef
        /// </summary>
        /// <param name="structureDef">ConstructingBuilding's definition</param>
        /// <returns>ConstructingBuildingController</returns>
        public ConstructingBuildingController CreateBUC(ConstructingBuildingDef structureDef)
        {
            ConstructingBuildingController building = new ConstructingBuildingController(structureDef)
            {
                ConstructingBuildingModel =
                {
                    FactionController = faction
                }
            };


            ConstructingBuildingView view = new ConstructingBuildingView(CONSTRUCTION_IMAGE_SOURCE)
            {
                Model = building.ConstructingBuildingModel
            };

            building.ConstructingBuildingView = view;

            return(building);
        }
        private static ConstructingBuildingController CreateNewBUC(ConstructingBuildingDef def,
                                                                   Faction_Controller factionController)
        {
            ConstructingBuildingController building = new ConstructingBuildingController(def)
            {
                ConstructingBuildingModel =
                {
                    FactionController = factionController
                }
            };


            ConstructingBuildingView view = new ConstructingBuildingView(CONSTRUCTION_IMAGE_SOURCE)
            {
                Model = building.ConstructingBuildingModel
            };

            building.ConstructingBuildingView = view;

            return(building);
        }