diff --git a/Project/Enemy.cc b/Project/Enemy.cc
index b89b615e88ef8a28f5177fdc01d3681e6b6ee542..447100211c4fbccb33c253332d1b9bdc608b13c1 100644
--- a/Project/Enemy.cc
+++ b/Project/Enemy.cc
@@ -2,8 +2,8 @@
 #include <iostream>
 
 Enemy::Enemy(float width, float height, float x_pos, float y_pos, float movement_speed)
-:enemy_size{width, height}, enemy_pos{x_pos, y_pos}, enemy{enemy_size}, movement_speed{movement_speed}, type{"enemy"},
-spawn_x_pos{x_pos}, distance{}, move_right{false}
+:enemy_size{width, height}, enemy_pos{x_pos, y_pos}, enemy{enemy_size}, movement_speed{movement_speed}, movement_speed_y{movement_speed}, type{"enemy"},
+spawn_x_pos{x_pos}, distance{}, move_right{false}, falling{true}
 {}
 
 void Enemy::update(sf::Time & delta, sf::RenderWindow & window)
@@ -27,6 +27,20 @@ bool Enemy::check_collision(Block* b, std::string const& type, Player const & p)
     {
       move_right = true;
     }
+   if(enemy_pos.y  <= b->get_pos().y-40) //landar på något
+    {
+      std::cout << "kollisision" << std::endl;
+      enemy_pos.y = b->get_pos().y-40;
+      movement_speed_y = movement_speed;
+      falling = false;
+      //on_ground = true;
+    }
+  }
+  else 
+  {
+    falling = true;
+    
+
   }
   if(enemy.getGlobalBounds().intersects(p.get_shape().getGlobalBounds()))
   {
@@ -36,6 +50,7 @@ bool Enemy::check_collision(Block* b, std::string const& type, Player const & p)
     destruct = true; 
     }
   }
+  
   return destruct;
 }
 
@@ -49,7 +64,27 @@ void Enemy::move(sf::Time & _delta)
   else
   {
     enemy_pos.x -= distance;
+    //std::cout << "här" << std::endl;
   }
-
+  if (falling)
+    {
+      //std::cout << "falling" << std::endl;
+      float gravity = 1.82;
+      movement_speed_y = movement_speed_y + (gravity * (_delta.asMicroseconds() / 10000.0f));
+      float distance_y = movement_speed_y * (_delta.asMicroseconds() / 1000000.0f);
+      enemy_pos.y += distance_y;
+      /*if(enemy_pos.y < 0 || enemy_pos.y > 718)
+      {
+        movement_speed_y = movement_speed;
+        falling = false;
+    }*/
+  }
+  /*else if(enemy_pos.y < spawn_y_pos)
+  {
+    velocity_y = -velocity_y;
+    falling = true;
+  }*/
 }
 
+
+
diff --git a/Project/Enemy.h b/Project/Enemy.h
index 3803c5b54f1b3313e34cc612e0bcbeb5e82f91d4..5ce25ca9f7ffac9ca0888bd361529d3f11f7cd2e 100644
--- a/Project/Enemy.h
+++ b/Project/Enemy.h
@@ -21,10 +21,12 @@ private:
   sf::Vector2f enemy_pos{};
   sf::RectangleShape enemy{};
   float movement_speed{};
+  float movement_speed_y{};
   std::string type{};
   float spawn_x_pos{};
   float distance{};
   bool move_right{};
+  bool falling{};
 };
 
 #endif
diff --git a/Project/Enemy.o b/Project/Enemy.o
index 582f91b86d34df455796d1b3c02e05cffbc637a0..b33681d4ee6583d7fcdb2f3df5ce28d313fc3ca2 100644
Binary files a/Project/Enemy.o and b/Project/Enemy.o differ
diff --git a/Project/game b/Project/game
index de5401da35dfd5ecb9e0e7a5b81cd63ed6762578..e2e0a2c6e3c5b2ae3641e2213716b09610778b9f 100755
Binary files a/Project/game and b/Project/game differ
diff --git a/Project/main.cc b/Project/main.cc
index 734b7590565de43524843e133a4b0a6248ccd079..a15022ea4105c8a11eb53fce31fce87c0e1dcc46 100644
--- a/Project/main.cc
+++ b/Project/main.cc
@@ -17,8 +17,8 @@ int main()
 
   std::vector<Block*> blocks{};
   std::vector<Enemy*> enemies{};
-  enemies.push_back(new Enemy{40,50,800,718, 50.0f});
-  enemies.push_back(new Enemy{40,50,900,718, 0.0f});
+  enemies.push_back(new Enemy{40,50,900,218, 50.0f});
+  enemies.push_back(new Enemy{40,50,300,218, 0.0f});
   blocks.push_back(new Indestructable_block{50, 0, 718}); //size, x-pos, y-pos. Color: Red //BEGIN
   blocks.push_back(new Indestructable_block{50, 974, 718}); //size, x-pos, y-pos. Color: Blue //END
   blocks.push_back(new Indestructable_block{50, 150, 718}); //size, x-pos, y-pos. Color: Green
diff --git a/Project/main.o b/Project/main.o
index fc66666683c2929ddd7d8b780e9831f30cd84a3a..fa78db3315a0013e78d443a95a348965bad4990b 100644
Binary files a/Project/main.o and b/Project/main.o differ