diff --git a/src/HighScore.txt b/src/HighScore.txt
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..2efea5198bec85fb12bc22ec549bd4db99be6de5 100644
--- a/src/HighScore.txt
+++ b/src/HighScore.txt
@@ -0,0 +1 @@
+167
\ No newline at end of file
diff --git a/src/states/FlyingEnemy.java b/src/states/FlyingEnemy.java
new file mode 100644
index 0000000000000000000000000000000000000000..ff5071605a6d9a42bd8d9b579d007d4d21132068
--- /dev/null
+++ b/src/states/FlyingEnemy.java
@@ -0,0 +1,11 @@
+package states;
+
+public class FlyingEnemy extends Enemy{
+
+	public FlyingEnemy(String enemyImg) {
+		super(enemyImg);
+		
+		
+	}
+
+}
diff --git a/src/states/HighScore.java b/src/states/HighScore.java
index 3e2aa56d922e0438b5e2d74f229b91b8c05dbca4..98931e969c4f6abb254898de27d6354bb9aa6c2c 100644
--- a/src/states/HighScore.java
+++ b/src/states/HighScore.java
@@ -1,47 +1,50 @@
 package states;
 
+import java.io.BufferedReader;
+import java.io.BufferedWriter;
 import java.io.File;
 
 import java.io.FileNotFoundException;
+import java.io.FileReader;
 import java.io.FileWriter;
 import java.io.IOException;
+import java.util.ArrayList;
 import java.util.Scanner;
 
 public class HighScore {
 
 
-		public void saveScore(int score) {
-			if (score > getHighScore()) {
-				try {
-					FileWriter writer = new FileWriter("src/HighScore.txt");
-					writer.write("");
-					writer.write(Integer.toString(score));
-					writer.close();
-				} catch (IOException ioe) {
-					ioe.printStackTrace();
-				}
+	public void saveScore(int score) {
+		if (score > getHighScore()) {
+			try {
+				FileWriter writer = new FileWriter("src/HighScore.txt");
+				writer.write("");
+				writer.write(Integer.toString(score));
+				writer.close();
+			} catch (IOException ioe) {
+				ioe.printStackTrace();
 			}
-
 		}
 
-		public int getHighScore() {
-			int highScore = 0;
+	}
 
-			try {
-				File highScoreTxtFile = new File("src/HighScore.txt");
-				Scanner myReader = new Scanner(highScoreTxtFile);
-				while (myReader.hasNextLine()) {
-					String data = myReader.nextLine();
-					highScore = Integer.parseInt(data);
-				}
-				myReader.close();
-			} catch (FileNotFoundException e) {
-				System.out.println("File not found.");
-				e.printStackTrace();
-			}
+	public int getHighScore() {
+		int highScore = 0;
 
-			return highScore;
+		try {
+			File highScoreTxtFile = new File("src/HighScore.txt");
+			Scanner myReader = new Scanner(highScoreTxtFile);
+			while (myReader.hasNextLine()) {
+				String data = myReader.nextLine();
+				highScore = Integer.parseInt(data);
+			}
+			myReader.close();
+		} catch (FileNotFoundException e) {
+			System.out.println("File not found.");
+			e.printStackTrace();
 		}
 
+		return highScore;
 	}
-	
+
+}
diff --git a/src/states/PlayState.java b/src/states/PlayState.java
index d7acfedc194dbfeab04a57b0b8835313820037c6..47c4f85fc66de6a48ee8c5e796bece989028ac69 100644
--- a/src/states/PlayState.java
+++ b/src/states/PlayState.java
@@ -47,7 +47,7 @@ public class PlayState extends GameState {
 	private boolean gameOver = false;
 	private MenuState menu;
 	private HighScore score = new HighScore();
-//	private int clearedEnemies;
+	private int clearedEnemies;
 	private String scoreText;
 
 
@@ -61,7 +61,7 @@ public class PlayState extends GameState {
 		gameOverText = "GAMEOVER\n" + informationText;
 		bgColor = Color.BEIGE;
 		fontColor = Color.BLUE;
-		scoreText = "Highscore: ";
+		scoreText = "Highscore: " + Integer.toString(score.getHighScore());
 //		+ Integer.toString(score.getHighScore());
 
 		player = new Player(Constants.playerImg);
@@ -131,7 +131,8 @@ public class PlayState extends GameState {
 		if (!gameOver) {
 
 			if ((enemy.getEnemyX() <= (player.getPlayerX() + 80)) && (enemy.getEnemyX() > player.getPlayerX())) {
-				if (!collided && enemy.getEnemyX() > player.getPlayerX()) {
+//				if (!collided && enemy.getEnemyX() > player.getPlayerX()) {
+					if (!collided) {
 					checkCollision();
 				}
 //				clearedEnemies ++;
@@ -139,6 +140,8 @@ public class PlayState extends GameState {
 
 			if (collided && enemy.getEnemyX() < player.getPlayerX()) {
 				collided = false;
+			} else if (!collided && enemy.getEnemyX() < player.getPlayerX()) {
+				clearedEnemies ++;
 			}
 
 
@@ -174,11 +177,11 @@ public class PlayState extends GameState {
 		if((player.getPlayerY() + 60) >= enemy.getEnemyY() ) {
 			collided = true;
 			//			System.out.println("fäk");
-			if (Integer.valueOf(player.getLives()) == 0) {
+			if (Integer.valueOf(player.getLives()) == 1) {
 //								menu = new MenuState(model);
 				//				model.switchState(menu);
 				gameOver = true;
-//				score.saveScore(clearedEnemies);
+				score.saveScore(clearedEnemies);
 
 			}
 			player.decreaseLives();
@@ -190,6 +193,7 @@ public class PlayState extends GameState {
 		//		} 
 
 
+//		clearedEnemies ++;
 
 
 	}