diff --git a/src/Blaze-Brigade/Blaze_Brigade/Game.cs b/src/Blaze-Brigade/Blaze_Brigade/Game.cs
index ef19d68c579eac8b2243f6aa012c83e502be7df2..ac77395bdfc13aa65293967797cd083f5cd79ef9 100644
--- a/src/Blaze-Brigade/Blaze_Brigade/Game.cs
+++ b/src/Blaze-Brigade/Blaze_Brigade/Game.cs
@@ -586,7 +586,7 @@ namespace Controller
                     }
                 }
 
-            #endregion
+                #endregion
             }
 
             #region Game Over
@@ -610,7 +610,8 @@ namespace Controller
                 if (GameState.currentPlayer == player1)
                 {
                     spriteBatch.Draw(player1Transition, Vector2.Zero, null, Color.White, 0, Vector2.Zero, 1f, SpriteEffects.None, 0.7f); //draw turn transition 
-                }else if(GameState.currentPlayer == player2)
+                }
+                else if (GameState.currentPlayer == player2)
                 {
                     spriteBatch.Draw(player2Transition, Vector2.Zero, null, Color.White, 0, Vector2.Zero, 1f, SpriteEffects.None, 0.7f); //draw turn transition 
                 }
@@ -733,158 +734,23 @@ namespace Controller
         // manually sets obstacle nodes for graph
         private void setObstacles(Graph graph)
         {
-            for (int y = 5; y <= 14; y++)
-            {
-                graph.getNode(2, y).isObstacle = (true);
-            }
-            graph.getNode(3, 5).isObstacle = (true);
-            graph.getNode(3, 13).isObstacle = (true);
-            graph.getNode(4, 3).isObstacle = (true);
-            graph.getNode(4, 4).isObstacle = (true);
-            graph.getNode(4, 13).isObstacle = (true);
-            graph.getNode(4, 14).isObstacle = (true);
-            graph.getNode(5, 2).isObstacle = (true);
-            graph.getNode(5, 15).isObstacle = (true);
-            graph.getNode(6, 2).isObstacle = (true);
-            graph.getNode(6, 14).isObstacle = (true);
-            graph.getNode(7, 2).isObstacle = (true);
-            graph.getNode(7, 3).isObstacle = (true);
-            graph.getNode(7, 4).isObstacle = (true);
-            graph.getNode(7, 14).isObstacle = (true);
-            graph.getNode(8, 4).isObstacle = (true);
-            for (int y = 14; y <= 17; y++)
-            {
-                graph.getNode(8, y).isObstacle = (true);
-            }
-            graph.getNode(9, 4).isObstacle = (true);
-            for (int y = 17; y <= 20; y++)
-            {
-                graph.getNode(9, y).isObstacle = (true);
-            }
-            graph.getNode(10, 4).isObstacle = (true);
-            graph.getNode(10, 20).isObstacle = (true);
-            graph.getNode(10, 21).isObstacle = (true);
-            graph.getNode(10, 22).isObstacle = (true);
-            graph.getNode(11, 4).isObstacle = (true);
-            graph.getNode(11, 14).isObstacle = (true);
-            graph.getNode(11, 22).isObstacle = (true);
-            graph.getNode(12, 3).isObstacle = (true);
-            for (int y = 22; y <= 25; y++)
-            {
-                graph.getNode(12, y).isObstacle = (true);
-            }
-            graph.getNode(13, 4).isObstacle = (true);
-            graph.getNode(12, 25).isObstacle = (true);
-            graph.getNode(14, 4).isObstacle = (true);
-            graph.getNode(14, 25).isObstacle = (true);
-            graph.getNode(15, 4).isObstacle = (true);
-            graph.getNode(15, 25).isObstacle = (true);
-            graph.getNode(15, 26).isObstacle = (true);
-            graph.getNode(15, 27).isObstacle = (true);
-            graph.getNode(16, 3).isObstacle = (true);
-            graph.getNode(16, 27).isObstacle = (true);
-            graph.getNode(17, 2).isObstacle = (true);
-            graph.getNode(17, 3).isObstacle = (true);
-            graph.getNode(17, 27).isObstacle = (true);
-            graph.getNode(18, 1).isObstacle = (true);
-            graph.getNode(18, 27).isObstacle = (true);
-            graph.getNode(19, 1).isObstacle = (true);
-            graph.getNode(19, 27).isObstacle = (true);
-            graph.getNode(20, 2).isObstacle = (true);
-            for (int y = 24; y <= 27; y++)
-            {
-                graph.getNode(20, y).isObstacle = (true);
-            }
-            graph.getNode(21, 2).isObstacle = (true);
-            graph.getNode(21, 21).isObstacle = (true);
-            graph.getNode(21, 22).isObstacle = (true);
-            graph.getNode(21, 23).isObstacle = (true);
-            graph.getNode(22, 1).isObstacle = (true);
-            graph.getNode(22, 2).isObstacle = (true);
-            graph.getNode(22, 20).isObstacle = (true);
-            graph.getNode(23, 0).isObstacle = (true);
-            graph.getNode(23, 20).isObstacle = (true);
-            graph.getNode(24, 0).isObstacle = (true);
-            graph.getNode(24, 20).isObstacle = (true);
-            graph.getNode(25, 1).isObstacle = (true);
-            graph.getNode(25, 20).isObstacle = (true);
-            graph.getNode(26, 1).isObstacle = (true);
-            graph.getNode(26, 21).isObstacle = (true);
-            graph.getNode(27, 1).isObstacle = (true);
-            graph.getNode(27, 22).isObstacle = (true);
-            graph.getNode(28, 0).isObstacle = (true);
-            for (int y = 22; y <= 27; y++)
-            {
-                graph.getNode(28, y).isObstacle = (true);
-            }
-            graph.getNode(29, 1).isObstacle = (true);
-            graph.getNode(29, 2).isObstacle = (true);
-            graph.getNode(29, 3).isObstacle = (true);
-            graph.getNode(29, 27).isObstacle = (true);
-            graph.getNode(30, 3).isObstacle = (true);
-            graph.getNode(30, 27).isObstacle = (true);
-            graph.getNode(31, 2).isObstacle = (true);
-            graph.getNode(31, 3).isObstacle = (true);
-            graph.getNode(31, 27).isObstacle = (true);
-            graph.getNode(32, 27).isObstacle = (true);
-            graph.getNode(33, 2).isObstacle = (true);
-            graph.getNode(33, 3).isObstacle = (true);
-            graph.getNode(33, 26).isObstacle = (true);
-            graph.getNode(34, 3).isObstacle = (true);
-            graph.getNode(34, 25).isObstacle = (true);
-            graph.getNode(35, 3).isObstacle = (true);
-            graph.getNode(35, 25).isObstacle = (true);
-            graph.getNode(36, 2).isObstacle = (true);
-            graph.getNode(36, 25).isObstacle = (true);
-            graph.getNode(37, 2).isObstacle = (true);
-            graph.getNode(37, 25).isObstacle = (true);
-            graph.getNode(38, 2).isObstacle = (true);
-            for (int y = 9; y <= 14; y++)
-            {
-                graph.getNode(38, y).isObstacle = (true);
-            }
-            graph.getNode(38, 26).isObstacle = (true);
-            graph.getNode(39, 2).isObstacle = (true);
-            graph.getNode(39, 8).isObstacle = (true);
-            graph.getNode(39, 14).isObstacle = (true);
-            graph.getNode(40, 3).isObstacle = (true);
-            graph.getNode(40, 7).isObstacle = (true);
-            graph.getNode(40, 14).isObstacle = (true);
-            graph.getNode(40, 26).isObstacle = (true);
-            graph.getNode(41, 3).isObstacle = (true);
-            graph.getNode(41, 7).isObstacle = (true);
-            for (int y = 14; y <= 17; y++)
-            {
-                graph.getNode(41, y).isObstacle = (true);
-            }
-            graph.getNode(41, 27).isObstacle = (true);
-            graph.getNode(42, 4).isObstacle = (true);
-            graph.getNode(42, 7).isObstacle = (true);
-            graph.getNode(42, 17).isObstacle = (true);
-            graph.getNode(42, 27).isObstacle = (true);
-            graph.getNode(43, 4).isObstacle = (true);
-            graph.getNode(43, 7).isObstacle = (true);
-            graph.getNode(43, 17).isObstacle = (true);
-            graph.getNode(43, 27).isObstacle = (true);
-            graph.getNode(44, 4).isObstacle = (true);
-            graph.getNode(44, 7).isObstacle = (true);
-            for (int y = 17; y <= 23; y++)
+            Texture2D obstacleMap = Content.Load<Texture2D>("map1_obstacles");  // get the obstacle map
+            Color[] pixelColor = new Color[1];                                  // holds the colour of the node
+            Rectangle sourceRectangle;
+
+            // set node as obstacle if the node on the obstacle map is black
+            for (int x = 0; x < obstacleMap.Width; x += 32)
             {
-                graph.getNode(44, y).isObstacle = (true);
+                for (int y = 0; y < obstacleMap.Height; y += 32)
+                {
+                    sourceRectangle = new Rectangle(x, y, 1, 1);
+                    obstacleMap.GetData<Color>(0, sourceRectangle, pixelColor, 0, 1);   // get colour of the node (on obstacle map)
+                    if (pixelColor[0] == Color.Black)               // if black, set node as an obstacle
+                    {
+                        graph.getNode(x / 32, y / 32).isObstacle = true;
+                    }
+                }
             }
-            graph.getNode(44, 27).isObstacle = (true);
-            graph.getNode(45, 4).isObstacle = (true);
-            graph.getNode(45, 5).isObstacle = (true);
-            graph.getNode(45, 24).isObstacle = (true);
-            graph.getNode(45, 25).isObstacle = (true);
-            graph.getNode(45, 27).isObstacle = (true);
-            graph.getNode(46, 5).isObstacle = (true);
-            graph.getNode(46, 7).isObstacle = (true);
-            graph.getNode(46, 25).isObstacle = (true);
-            graph.getNode(46, 26).isObstacle = (true);
-            graph.getNode(47, 5).isObstacle = (true);
-            graph.getNode(47, 6).isObstacle = (true);
-            graph.getNode(47, 7).isObstacle = (true);
         }
     }
 }
\ No newline at end of file
diff --git a/src/Blaze-Brigade/Blaze_Brigade/Resources/map1_obstacles.png b/src/Blaze-Brigade/Blaze_Brigade/Resources/map1_obstacles.png
new file mode 100644
index 0000000000000000000000000000000000000000..4504edde49f71e107f98fc6893767e25b0346488
Binary files /dev/null and b/src/Blaze-Brigade/Blaze_Brigade/Resources/map1_obstacles.png differ
diff --git a/src/Blaze-Brigade/Blaze_BrigadeContent/map1_obstacles.png b/src/Blaze-Brigade/Blaze_BrigadeContent/map1_obstacles.png
new file mode 100644
index 0000000000000000000000000000000000000000..4504edde49f71e107f98fc6893767e25b0346488
Binary files /dev/null and b/src/Blaze-Brigade/Blaze_BrigadeContent/map1_obstacles.png differ