diff --git a/project-1/src/ShadowTreasure.java b/project-1/src/ShadowTreasure.java
index bae67cbb27fdb5ffd7e84ae8e9d88632c20c8e77..e36fad9b334195e02deaaa12fa1a43aa213e0759 100644
--- a/project-1/src/ShadowTreasure.java
+++ b/project-1/src/ShadowTreasure.java
@@ -3,6 +3,7 @@ import bagel.*;
 import java.io.File;
 import java.io.FileNotFoundException;
 import java.io.IOException;
+import java.nio.charset.StandardCharsets;
 import java.text.DecimalFormat;
 import java.util.Scanner;
 
@@ -30,7 +31,7 @@ public class ShadowTreasure extends AbstractGame {
     
     public ShadowTreasure() throws IOException {
         super(1024, 768, "ShadowTreasure");
-        this.loadEnvironment("test/test1/environment.csv"); // encoding includes 65279 char which fucks up the scanning part.
+        this.loadEnvironment("test/test2/environment.csv");
         // Add code to initialize other attributes as needed
         bg = new Image("res/images/background.png");
     }
@@ -38,10 +39,10 @@ public class ShadowTreasure extends AbstractGame {
     /**
      * Load from input file
      */
-    private void loadEnvironment(String filename){
+    private void loadEnvironment(String filename) {
         // Code here to read from the file and set up the environment
         try {
-            Scanner scanner = new Scanner(new File(filename), "utf-8");
+            Scanner scanner = new Scanner(new File(filename), StandardCharsets.UTF_8);
             double xcoor, ycoor;
             int level, counter=0;
             while (scanner.hasNextLine()) {
@@ -54,37 +55,29 @@ public class ShadowTreasure extends AbstractGame {
                 linescan.useDelimiter(",");
                 String item = linescan.next();
 
-
                 switch (item.toLowerCase()) {
-                    case "player":
+                    case "player" -> {
                         xcoor = Double.parseDouble(linescan.next());
                         ycoor = Double.parseDouble(linescan.next());
                         level = Integer.parseInt(linescan.next());
-//                        System.out.println("Player: ("+xcoor+","+ycoor+"), "+level);
                         player = new Player("res/images/player.png", new APoint(xcoor, ycoor), level);
-                        break;
-                    case "zombie":
+                    }
+                    case "zombie" -> {
                         xcoor = Double.parseDouble(linescan.next());
                         ycoor = Double.parseDouble(linescan.next());
-//                        System.out.println("Zombie: ("+xcoor+","+ycoor+")");
                         zombie = new Zombie("res/Images/Zombie.png", new APoint(xcoor, ycoor));
-                        break;
-                    case "sandwich":
+                    }
+                    case "sandwich" -> {
                         xcoor = Double.parseDouble(linescan.next());
                         ycoor = Double.parseDouble(linescan.next());
-//                        System.out.println("Sandwich: ("+xcoor+","+ycoor+")");
                         sandwich = new Sandwich("res/Images/Sandwich.png", new APoint(xcoor, ycoor));
-                        break;
-                    default:
-                        throw new IllegalStateException("Unexpected value: " + item.toLowerCase());
+                    }
+                    default -> throw new IllegalStateException("Unexpected value: " + item.toLowerCase());
                 }
                 linescan.close();
             }
             scanner.close();
 
-            System.out.println("player: "+player.getPos().toString());
-            System.out.println("zombie: "+zombie.getPos().toString());
-            System.out.println("sandwich: "+sandwich.getPos().toString());
         } catch(FileNotFoundException e) {
             System.out.println("File was not found!\n"+e);
         } catch(Exception e) {
@@ -104,9 +97,15 @@ public class ShadowTreasure extends AbstractGame {
             APoint playerPos = player.getPos();
             APoint zombiePos = zombie.getPos();
 
+            printInfo(playerPos.getX(),playerPos.getY(),player.getEnergy());
+
             // Logic to update the game, as per specification must go here
             if (playerPos.distanceTo(zombiePos) < 50) {
                 player.addEnergy(-3);
+                APoint dir = playerPos.getDirection(zombiePos);
+                playerPos.setX(playerPos.getX() + dir.getX() * player.getStepsize());
+                playerPos.setY(playerPos.getY() + dir.getY() * player.getStepsize());
+                printInfo(playerPos.getX(),playerPos.getY(),player.getEnergy());
                 System.exit(0);
             } else if (sandwich != null && playerPos.distanceTo(sandwich.getPos()) < 50) {
                 player.addEnergy(5);
@@ -121,7 +120,7 @@ public class ShadowTreasure extends AbstractGame {
                 playerPos.setX(playerPos.getX() + dir.getX() * player.getStepsize());
                 playerPos.setY(playerPos.getY() + dir.getY() * player.getStepsize());
             }
-            printInfo(playerPos.getX(),playerPos.getY(),player.getEnergy());
+
             count=0;
         }
         count++;