diff --git a/MrBigsock/Assets/Code/Map/NeighbourMapGenerator.cs b/MrBigsock/Assets/Code/Map/NeighbourMapGenerator.cs
index e70145b59c504735098b31e59fe0f5b744280c82..23e3a32c8bd96c71868207094619988c0d4e8a7e 100644
--- a/MrBigsock/Assets/Code/Map/NeighbourMapGenerator.cs
+++ b/MrBigsock/Assets/Code/Map/NeighbourMapGenerator.cs
@@ -8,20 +8,26 @@ namespace Bigsock
     {
         [SerializeField]
         protected NeigbourSO[] mapParam;
+        [SerializeField] NeigbourSO BossRoom;
 
         private static List<int[,]> roomList = new List<int[,]>();
 
         public override void RunProceduralGeneration()
         {
-            
+           
             for (int i = 0; i <= RoomCount - 1; i++)
             {
                 int randomMap = Random.Range(0, mapParam.Length);
                 int[,] map = tilemapGenerator.GenerateArray(mapParam[randomMap].width, mapParam[randomMap].height, mapParam[randomMap].empty);
                 roomList.Add(map);
-                tilemapGenerator.RenderMap(roomList[i],i);
+                tilemapGenerator.RenderMap(roomList[i],i, false);
                 tilemapGenerator.SpawnEnemies(map, 4 + i, i);
+                
             }
+            int[,] bossMap = tilemapGenerator.GenerateArray(BossRoom.width, BossRoom.height, BossRoom.empty);
+            roomList.Add(bossMap);
+            tilemapGenerator.RenderMap(roomList[roomList.Count - 1],roomList.Count - 1, true);
+            tilemapGenerator.SpawnBoss(bossMap, roomList.Count - 1);
 
             tilemapGenerator.polyCollider(roomList[0], 0);
         }
@@ -30,5 +36,10 @@ namespace Bigsock
         {
             return roomList[i];
         }
+
+        public static int GetRoomListCount()
+        {
+            return roomList.Count;
+        }
     }
 }
\ No newline at end of file